Android App Programming 2021-2022
Lab 4: Android services

In this lab, you will learn how to start or bind to services in an Android app.

Remember:

1. Basic Music player, continuous task in the background

In this exercise we will create a very basic music player. We will play the music as a started service.

Download this mp3 file (or use your own) and add it to the directory res/raw (if raw directory does not exist, create it).

2. Random number generator, frequent service requests

In this exercise we will ask a service to return a random number generator whenever we click a button. As this is a request we will do from time to time, we will use a bounded service.

3. Create a Worker, for long tasks

In this exercise we will create a Worker class to conduct difficult and long calculations for us that we want to do in the background (on a separate thread).

4. Extend your Music player

Extend your music player app by adding UI views on the interface that can help you control the music. You can use different methods available in MediaPlayer (e.g.Play audio with mp.start(), Pause audio with mp.pause(), Reset mediaplayer with mp.reset(), Get song length duration - in milliseconds with mp.getDuration(), Get current duration - in milliseconds with mp.getCurrentDuration(), Move song to particular second - used for Forward or Backward mp.seekTo(positon); // position in milliseconds, Check if song is playing or not mp.isPlaying(); // returns true or false.

back to the course web site





FR - FR - FR



L'objectif est d'apprendre comment interagir avec les APIs web existantes dans une application Android.

Rappel :

1. Lecteur de musique, tâche continue en arrière-plan

Dans cet exercice, nous allons créer un simple lecteur de musique. Nous allons jouer la musique comme un service démarré (started service).

Télécharger ce mp3 file ((ou utilisez le vôtre) et ajoutez-le au répertoire res/raw (si le répertoire raw n'existe pas, créez-le)

2. Générateur de numéros aléatoires, demandes de service fréquentes

Dans cet exercice, nous allons demander à un service de renvoyer un générateur de numéros aléatoires lorsque nous cliquons sur un bouton. Comme il s'agit d'une demande que nous ferons de temps en temps, nous utiliserons un service bounded.

3. Un Worker, pour les tâches longues

Dans cet exercice, nous allons créer une classe Worker pour effectuer à notre place des calculs difficiles et longs que nous voulons faire en arrière-plan (thread separé).

4. Plus sur Lecteur de musique

Étendez votre application de lecteur de musique en ajoutant des vues d'interface utilisateur sur l'interface qui peuvent vous aider à contrôler la musique. Vous pouvez utiliser différentes méthodes disponibles dans MediaPlayer (e.g. Play audio avec mp.start(), Pause audio avec mp.pause(), Reset mediaplayer avec mp.reset(), Obtenez la durée de la chanson - en millisecondes avec mp.getDuration(), Obtenez la durée actuelle - en millisecondes avec mp.getCurrentDuration(), Déplacer la chanson à une seconde particulière - utilisé pour Forward ou Backward mp.seekTo(positon); // Position en millisecondes, vérifie si la chanson est en cours de lecture ou non mp.isPlaying(); // true ou false.

back to the course web site