Cours Android: Utiliser les services sous Android

Sommaire: Utiliser les services sous Android

 1) Objectif
2) Interface graphique
a) La vue graphique
b) Composants graphiques
c) Les évènements
3) Les services
4) Services locaux
a) Définition du service
b) A faire
c) Déclaration du service
d) A faire
5) Implémentation des listeners
a) Quelques concepts JAVA Les interfaces Les variables statiques Les Listeners
b) Les listeners sur les services d°) A faire
6) Implémentation d’un binder
7) Connexion au service
a) A faire
8) Déconnexion au service
9) Compte Rendu

Extrait du cours utiliser les services sous Android

1°) Objectif 

Dans ce TP, nous allons abordé la notion de service dans l’environnement Android.

A l’instar des Activities, des Intents, les services  font  partie des  briques essentielles d’Android. Ils ne disposent pas d’interface  utilisateur  mais  fonctionnent  en  arrière  plan  pour  une  période  de  temps  indéfinie. L’exemple le  plus  courant  est le lecteur de musique, qui vous permet d’écouter vos mp3 sans bloquer la navigation sur internet ou  consulter la liste des vos contacts. Un service peut également rapatrier des données sur  internet tels que des flux RSS.

2°) Création de l’interface graphique 

a°)La vue graphique 

Votre application aura comme nom, les noms des deux personnes composants votre binôme.

Créer une Activity avec 4 boutons et un champ texte.

 b°) Les composants graphiques 

Dans la fonction onCreate de votre activité récupérer les composants graphiques grâce à la méthode findViewById. Les variables correspondants aux objets graphiques seront déclarés comme champs de la classe de votre activité.

c°) Les évènements 

Sur chaque bouton, ajouter un listener pour capturer l’action d’un click que le bouton.

3°) Les services (threads, cycle de vie…) 

Les services ont pour but de:

Réaliser des tâches de fond sans aucune interaction avec l’utilisateur pour une durée indéfinie.

Il existe deux type de services :

•  Les services locaux (ou LocalService) qui s’exécutent dans le même processus que votre application

• Les services distants (ou RemoteService) qui s’exécutent dans un processus différent de celui de application  Les services s’exécutent dans le Thread principal du processus parent. Ils doivent être  déclarés dans le fichier AndroidManifest.xml:

<service android:name= ».subpackagename.ServiceName »/> 

Ils doivent étendre la classe Service dont vous devrez surcharger les méthodes suivantes en fonction de vos besoins :

void onCreate(); // initialisation des ressources  

void onStart(Intent intent); // SDK<2.0 la tâche de fond démarre  

void onStartCommand(Intent intent, int flags, int startId); // SDK>2.0 la tâche de fond 

démarre  

void onDestroy(); // libération des ressources   

4°) Services locaux (LocalService) 

a°) Définition du service 

Un service Local n’est accessible que par les Activity de l’application.

Pour l’exemple, notre service initialise un Timer et une tâche qui sera exécutée toutes les minutes.

Nous allons créer une classe héritant de Service et surcharger les méthodes onCreate(), onStart() et onDestroy().

public class BackgroundService extends Service {

private Timer timer ;

@Override

public void onCreate() {

super.onCreate();

timer = new Timer();

Log.d(this.getClass().getName(), "onCreate");

}

@Override

public int onStartCommand(Intent intent, int flags, int startId) {

Log.d(this.getClass().getName(), "onStart");

timer.scheduleAtFixedRate(new TimerTask() {

public void run() {

// Executer de votre tâche

}

}, 0, 60000);

return START_NOT_STICKY;

}

@Override

public void onDestroy() {

Log.d(this.getClass().getName(), "onDestroy");

this.timer.cancel();

}

b°) A faire : 

I°) Modifier votre programme pour qu’il affiche toutes les secondes dans le « Logger »

l’heure au format suivant : heure:minute:seconde. Pour se faire vous pourrez utiliser le classe Date.

…………

Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Cours Android: Utiliser les services sous Android (384.15 Ko)  (Cours PDF)
Utiliser les services sous Android

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *