Geert Pingen @gpgn

Cloud & Machine Learning Engineer, Research Scientist
Shard
Mobile
Music

Introduction

You're lying in bed, listening to your favourite tunes, chatting with that special someone living far away. You want to share that moment. Be in sync with one another and connect through music.

Your favourite player is just warming up for the big match. The stakes are high. The tension in the stadium is tangible, pressing even. To get ready he puts on that one track. His track. Your track. You are ready. Connect through music.

These are just two examples of the idea behind Shard. The app lets you broadcast what you're your currently streaming in Spotify to all of your contacts. The status of your player (playing, pausing, skipping ahead) will be sent to all those listening to your feed live. This project was done mainly to play around with the new Spotify Android API and served as a personal introduction into programming for Android.

Figure 1. Shard logo.

Figure 1. Shard logo.

Overview

The app features a general register/login portal where users fill in profile details such as their name, email address, and phone number. SMS (text message) verification is built in to ensure users fill in correct account details. When they are first logged in, authentication with Spotify is set up through Spotify's web API. This enables the app to access certain Spotify user data needed to function properly. Users require a Premium Spotify subscription to broadcast their status, free users may only listen in on others.

Share

The Share tab is where users are able to toggle their broadcasting status to either on or off. When a user starts broadcasting, other users may start listening in on his/her cast. Any track that is playing in Spotify will be broadcasted as well as player status (pausing, restarting, etc.). The user is able to view what is being broadcasted in the player bar (styled similarly to Spotify's player bar) and who are listening.

Discover

The Discover tab is essentialy a list of all contacts also registered with Shard. If a user is broadcasting, a button will become active, allowing them to start listening to that user (or stop listening). Users are able to favourite contacts by pressing that contact for a short period of time. This will place them on a seperate favourites list for easy access. The player bar on the bottom of the screen shows the track that has been received last, together with the player status. A '+' (plus) sign will appear that allows users to add the current track to one of his or her Spotify playlists. Featured casts allow users to listen to broadcasts of users not in their phone contacts.

Stats

This screen shows general user specific stats such as the average and peak number of listeners; a top 3 of listeners; The total time broadcasted and listened; the users' most listened to broadcast; as well as the overall best listened to broadcasts in the app.

Profile

Details such as a user's name, email address, password, or phone number can be edited on this screen. A profile photo can also be uploaded or edited through the user's album or taken directly with the phone's camera.

Figure 2. Overview of the app screens. a) Register and login screen. b) Share tab where the user is able to toggle their broadcasting status. c) Discover tab where the user is able to start listening to friends if they are broadcasting. d) Profile editing screen.

Figure 2. Overview of the app screens. a) Register and login screen. b) Share tab where the user is able to toggle their broadcasting status. c) Discover tab where the user is able to start listening to friends if they are broadcasting. d) Profile editing screen.