Tutoriel [Tuto] Utilisation des "Service" et du "Binding"

  • Auteur de la discussion julien.dumortier
  • Date de début
julien.dumortier

julien.dumortier

Membre
Inscrit
18 Juin 2013
Messages
9
Points
1
  • #1
J’espère que ce tutoriel pourra en aider quelques-uns, comme j'arrive sur le forum j'ai voulu en rédiger un. Il est tiré de mon blog personnel
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !
dont le lien est précisé à la fin. sur mon blog, les sources de l'exemple sont disponibles.

J’ai récemment réalisé une application dans le but d’apprendre à utiliser les Services sous Android.

Maintenant je vous propose un article présentant la manière dont j’ai utilisé le service dans mon application. Il s’agit ici d’un service Interne.

S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !


1/ Contexte

La mise en place d’un service pour cette application est utile pour deux principales raisons.

- La première réside dans le fait qu’au démarrage du téléphone, l’application Android (activité) ne se lance pas, mais il peut être utilise de vouloir démarrer tout de même une tache sans le notifier à l'utilisateur.

- La seconde est qu'avec les services, l'utilisateur a la possibilité de lancer une application, de démarrer un traitement, de fermer l'application (l'activité). Une fois celle-ci fermée, le traitement en tache de fond peut continuer.

2/ L’architecture du projet

Pour mettre en place un service sous Android, nous aurons besoin de 3 classes.

- Une constituant le service en lui même.

- Une autre permettant de mettre en lien l’Activité avec le Service (Binding)

- Une dernière, qui est l’Activité avec laquelle nous souhaitons paramétrer et utiliser le Service.

Voici un schéma de l’architecture des classes mise en oeuvre:

3/ Le Service

Dans les prochaines sections, pas besoin de description, les commentaires sur le code explique précisément le fonctionnement.

Code:
S'il vous plaît, Connexion ou S'inscrire to view codes content!

4/ Le Binder

Code:
S'il vous plaît, Connexion ou S'inscrire to view codes content!

5/ L’Activité

Code:
S'il vous plaît, Connexion ou S'inscrire to view codes content!

6/ Le Manifest

Code:
S'il vous plaît, Connexion ou S'inscrire to view codes content!

7/ Broadcast receiver

Vous avez peut être remarquer dans le manifest, la déclaration du receiver. Ceci permet d’appeler la classe OnBootReceiver au démarrage du téléphone.

Ci-dessous, les sources de cette classe afin de pouvoir démarrer le Service au Boot de téléphone:

Code:
S'il vous plaît, Connexion ou S'inscrire to view codes content!

Avec tout ces éléments vous êtes maintenant en mesure de créer un service pour exécuter du code en taches de fond. Pour ma part, mon service est chargé de plusieurs chose:

- Vérifier périodiquement une condition.

- Gérer l’affichage d'une notification si la condition est respectée.

J'espere que ce tutoriel pourra en aider quelque-un, comme j'arrive sur le forum j'ai voulut en rédiger un. Voici le lien vers le tutoriel original sulog
S'il vous plaît, Connexion ou S'inscrire pour voir le contenu ou les urls !


Je suis ouvert à toutes remarque, critiques, conseils, ... !

Merci !
 
mahoni

mahoni

Membre
Inscrit
26 Septembre 2012
Messages
4 438
Points
0
  • #2
Bonjour
Si tu veux faire un tuto fait le sur le forum .
Mais evite de nous diriger sur ton blog .
Merci
 
Haut Bas