Android : L'interaction avec les appareils

Démarrer un service

Testez gratuitement nos 1273 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Votre formateur vous explique comment implémenter un service. Vous assimilerez son utilité et vous verrez comment le lancer et l'arrêter.
03:35

Transcription

Dans cette vidéo, je vais vous présenter les services. Les services permettent de faire du traitement sans être liés à une interface graphique, contrairement aux activités. Comme une activité peut être détruite à tout moment, si l'on veut faire un traitement, quelle que soit l'activité visible à l'écran, on va plutôt utiliser un service. Attention, le service s'exécute sur le [inaudible], on ne pourra donc pas y faire un traitement long directement. Cependant, on pourra y créer une « assigntask » ou un « timer » qui effectuera ce traitement, ce que nous allons faire dans cette vidéo. Pour cela, j'ai créé un nouveau module que j'ai appelé Service, dans ce nouveau module, dans le fichier « activity_main.xml », j'ai créé deux boutons et un « TextView. » Dans la partie JAVA, j'ai récupéré les pointeurs vers mes composants graphiques, et je me suis abonné au clic sur mes boutons. Je vais maintenant créer un service. Pour cela, je vais faire un clic droit, « new Service », je laisse le nom par défaut, il m'a créé une nouvelle classe qui est Temps de service. Si je vais voir dans « l'AndroidManifest » il m'a déclaré mon service au même titre que sont déclarées mes activités. Dans ma classe Service, j'ai ici un constructeur et une méthode abstraite qu'on implémente, la méthode « onBind. » Pour le moment, nous allons nous contenter de retourner nul, le service, possède lui aussi un cycle de vie, comme l'activité. Il va posséder une méthode « onCreate » qu'on va pouvoir ré-écrire. Une méthode « onStartCommand », je vais retirer cette partie, et dans le « Toast », je vais rajouter le « startId », pour que vous puissiez comprendre à quoi il sert. Et enfin, le « onDestroy », comme sur l'activité. Voilà pour la partie concernant le service. Côté activité. Pour lancer un service, ça se lance comme une activité, c'est-à-dire à l'aide d'un « Intent », le contexte et on lui indique la classe du service qui nous intéresse. Et au lieu de faire « startActivity », on va faire « startService. » Pour l'arrêter, on va faire pareil, sauf qu'au lieu de « startService », on va appeler « stopService. » Ici, nous allons demander au système de lancer un service, mais nous n'aurons pas de pointeur vers Service, c'est-à-dire que du coté de notre activité, on ne pourra plus le manipuler après, sauf lancer un « stopService » et lui envoyer des paramètres sur un « startService », on ne peut pas faire grand chose. Côté de notre service, même chose, ici, le service a été lancé, il ne connait ni l'activité qu'il a lancé, d'ailleurs, il peut être lancé par autre chose qu'une activité, comme par exemple un « BroadcastReceiver », il ne connait pas l'activité visible à l'écran, il ne peut donc pas communiquer avec l'activité, mais on verra ça après. Donc, regardons ce qui se passe. Je lance mon projet, je démarre le service, je passe dans la méthode « onCreate », puis, dans la méthode « onStartCommand » et mon « startId » est à 1. Je ré-appuie sur DÉMARRER LE SERVICE et cette fois, je passe directement dans « onStartCommand » avec un « Id » à 2, 3 et ainsi de suite. Si j'appuie sur ARRÊTER LE SERVICE, je passe dans la méthode « onDestroy », je ré-appuie sur DÉMARRER LE SERVICE, je repasse dans la méthode « onCreate », et dans la méthode « onStartCommand. » J'ai donc, en fait, un service qui vit et qui meurt et si je le rappelle alors qu'il est déjà en vie, il ne se contente que d'appeler « onStartCommand. »

Android : L'interaction avec les appareils

Exploitez les outils mis à disposition par le kit de développement Android. Améliorez l’expérience utilisateur de vos applications​ mobiles​ avec les composants et les animations.

1h58 (23 vidéos)
Aucun commentaire n´est disponible actuellement
 

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !