MusicCentral


This is a music player for Android that can playback music from the web

The goal my project from CS478 (Software Development for Mobile Platforms) was to create two Android applications, one being a service that downloads and holds information about the each song, and the other being a music client that connects, binds to the service, and allows the user to view and playback music. Basically, it plays back music from the internet.

Once bounded to the service, you can see the music you're able to listen to (animated AVIF image)
Once bounded to the service, you can see the music you're able to listen to (animated AVIF image)

Details


The first application, called “Music Central”, is a service that holds information about each song, and has various metadata attached to it, such as:

  1. Title of the track
  2. Name of the artist
  3. Bitmap picture of the album art
  4. String denoting the URL of the web site containing the audio file

The API of the MusicCentral service exposes the following three pieces of functionality in an appropriate AIDL file:

  1. Retrieves all information for all songs stored in the service
  2. Retrieves all information for one specific song by the song’s number
  3. Retrieves the URL string of the site with the song’s audio file

The second application, Music Client, is a UI activity that starts and binds to the above service, and allows the user to see and select songs to listen to. Once the client binds to the MusicCentral service, it then uses its API to retrieve information about the songs and displays them as a list on the main activity.

Music playback is handled by the ‘MediaPlayerService’ to manage playback.

:octocat: Github