Programmation Android Composantes dune application Jrmy VINET IEConcept
- Slides: 26
Programmation Android Composantes d’une application Jérémy VINET IE-Concept 2017 Android-comp. App V 1. 1 – IE-Concept 2017 1
Programmation Android Composantes d’une application Plan Composantes d’une application Ø Composants applicatifs Ø Eléments d’interaction Ø Cycle de vie Android-comp. App V 1. 1 – IE-Concept 2017 2
Programmation Android Composantes d’une application Composants applicatifs • Les composants d’une application sont les éléments essentiels d’une application Android. • Ils sont liés par le fichier manifeste de l’application qui décrit chaque composant et comment ils interagissent. • Il existe quatre composants principaux qui peuvent être utilisés dans une application Android. Ø Activités Ø Services Ø Fournisseurs de contenu Ø Ecouteur d’intention diffusée Android-comp. App V 1. 1 – IE-Concept 2017 3
Programmation Android Composantes d’une application Composants applicatifs Activités (Activity) • Une activité représente le bloc de base d’une application. • Elle correspond à la partie présentation de l’application et fonctionne par le biais de vues qui affichent des interfaces graphiques. • Elle répond aux actions utilisateur • Réagit à son cycle de vie Android-comp. App V 1. 1 – IE-Concept 2017 4
Programmation Android Composantes d’une application Composants applicatifs Services • Un service est un composant qui fonctionne en tâche de fond, de manière invisible. • Il ne nécessite pas d’interface utilisateur • Ses principales utilisations sont la mise à jour de sources de données ainsi que d’activités visibles et le déclenchement de notifications • Possède un cycle de vie différent d’une activité Android-comp. App V 1. 1 – IE-Concept 2017 5
Programmation Android Composantes d’une application Composants applicatifs Fournisseurs de contenu • Un fournisseur de contenu (content providers) permet de gérer et de partager des informations. • Un même fournisseur permet d’accéder à des données au sein d’une application et entre applications (partage des données). • Niveau d’abstraction pour toutes données stockées sur le terminal • Android encourage la mise à disposition de ses propres données aux autres programmes grâce aux fournisseurs de contenu 6 Android-comp. App V 1. 1 – IE-Concept 2017
Programmation Android Composantes d’une application Composants applicatifs Ecouteur d’intention diffusée • Permet à une application de récupérer des informations générales Ø Evènement calendrier Ø Réception d’un SMS Ø Batterie faible Ø… Android-comp. App V 1. 1 – IE-Concept 2017 7
Programmation Android Composantes d’une application Eléments d’interaction • Les éléments d’interaction permettent des interactions entre applications et avec le système • Il y a deux grandes familles d’éléments d’interaction Ø Les intentions Ø Les notifications Android-comp. App V 1. 1 – IE-Concept 2017 8
Programmation Android Composantes d’une application Eléments d’interaction Intention (Intent) • Une intention est un message système qu’on peut qualifier d’ évènement • Les Intents sont des objets permettant de faire passer des messages contenant de l’information entre composants principaux • Emis par le terminal pour prévenir les applications de la survenue d’ événements (cas des événements système) ou par tout autre application (cas des événements applicatifs). Ø Insertion d’une carte SD Ø Réception d’un SMS Ø Démarrage d’une application Ø Acquisition d’un signal GPS Android-comp. App V 1. 1 – IE-Concept 2017 9
Programmation Android Composantes d’une application Eléments d’interaction Notifications • Le système de notifications fournit une indication permettant de prévenir l’utilisateur de certains évènements Ø Arriver d’un SMS Ø Appel en absence • Chaque application peut générer des notifications Android-comp. App V 1. 1 – IE-Concept 2017 10
Programmation Android Composantes d’une application Eléments d’interaction Application Android • Une activité = un programme + une interface • Un service = un programme sans interface • Une application = Ø Une activité principale Ø Eventuellement une ou plusieurs activités secondaires Ø Eventuellement un ou plusieurs services Ø Eventuellement un ou plusieurs écouteurs d’intentions diffusées Ø Eventuellement un ou plusieurs fournisseurs de contenu Android-comp. App V 1. 1 – IE-Concept 2017 11
Programmation Android Composantes d’une application Eléments d’interaction Déclaration des éléments dans Android. Manifest. xml • Tous les éléments déclarés doivent se trouver entre les balises application • Activité <activity> … </activity> • Service <service> … </service> • Ecouteur d’intention diffusée <receiver> … </receiver> • Fournisseur de contenu <provider> … </provider> Android-comp. App V 1. 1 – IE-Concept 2017 12
Programmation Android Composantes d’une application Eléments d’interaction Exemple de manifeste pour une application ayant une activité Android-comp. App V 1. 1 – IE-Concept 2017 13
Programmation Android Composantes d’une application Cycle de vie • Il est indispensable de connaitre voir le cycle de vie d’une application afin de savoir les points d’entrée et de réaction d’une application • En fonction du type d’application le cycle de vie ne sera pas le même • Deux cycles différents Ø Cycle de vie d’une Activité Ø Cycle de vie d’un Service Android-comp. App V 1. 1 – IE-Concept 2017 14
Programmation Android Composantes d’une application Cycle de vie d’une Activity • Dans un cycle de vie d’une activité on compte 7 états. • Ces états sont déclenchés soit par le système soit par l’utilisateur. • Il peut être très utile pour une application de pouvoir réagir à ces états. Android-comp. App V 1. 1 – IE-Concept 2017 15
Programmation Android Composantes d’une application Cycle de vie d’une Activity • Les 7 états du cycle de vie sont accessibles grâce à 7 callback définis dans la classe Activity Ø on. Create() Ø on. Start() Ø on. Resume() Ø on. Restart() Ø on. Pause() Ø on. Stop() Ø on. Destroy() • Chaque classe d’écrivant une activité doit hériter de la classe Activity ou de toutes autres classes héritant elles -mêmes de cette classe Android-comp. App V 1. 1 – IE-Concept 2017 16
Programmation Android Composantes d’une application Cycle de vie Généralités sur le cycle de vie d’une activité • Aucune méthode main dans un programme Android • Android exécute le code d’une activité en appelant des callbacks • Ces callbacks correspondent aux phrases de la vie d’une activité • Il n’est pas nécessaire d’implémenter toutes les callbacks Android-comp. App V 1. 1 – IE-Concept 2017 17
Programmation Android Composantes d’une application Cycle de vie Activity : code source Android-comp. App V 1. 1 – IE-Concept 2017 18
Programmation Android Composantes d’une application Cycle de vie Vision simplifiée du cycle de vie d’une activité Android-comp. App V 1. 1 – IE-Concept 2017 19
Programmation Android Composantes d’une application Cycle de vie Les états d’une activité • Les trois états durables d’une activité : Ø Resumed : L’activité est au premier plan et l’utilisateur peut interagir avec elle. On dit aussi qu’elle est en train d’être exécutée. Ø Paused : L’activité est partiellement recouverte par une autre activité qui se trouve au premier plan. L’activité en pause ne peut pas recevoir d’action de l’utilisateur. Ø Stopped : L’activité est totalement cachée et ne peut plus exécuter de code. En revanche, toutes ses informations sont conservées. • Les deux états transitoires d’une activité : Ø Created : L’activité vient d’être créée. Ø Started : L’activité vient de devenir visible. Android-comp. App V 1. 1 – IE-Concept 2017 20
Programmation Android Cycle de vie Composantes d’une application Cycle de vie d’un Service • Dans un cycle de vie d’un service on compte 5 états. Ø on. Create() Ø on. Start. Command() Ø on. Bind() Ø on. Unbind() Ø on. Destroy() Android-comp. App V 1. 1 – IE-Concept 2017 21
Programmation Android Composantes d’une application Cycle de vie Généralités sur le cycle de vie d’un service • Il y a moins de callbacks pour un service qu’une activité • Il y a deux types de service Ø Les services locaux, ils sont lancés depuis le même processus. Ø Les services distants, ils sont lancés depuis un processus différent. Android-comp. App V 1. 1 – IE-Concept 2017 22
Programmation Android Composantes d’une application Cycle de vie Les états d’un service • Il n’y a qu’un état durable pour un service : Ø Service running pour un service local, le service est en cours d’exécution. Ø Client are bound to service pour un service distant, le service est en cours d’exécution tant qu’il y a des clients connectés Android-comp. App V 1. 1 – IE-Concept 2017 23
Programmation Android Composantes d’une application Cycle de vie Service : code source Android-comp. App V 1. 1 – IE-Concept 2017 24
Programmation Android Composantes d’une application Cycle de vie Généralités sur les cycles de vie • Il est important d’implémenter les callbacks afin que votre application fonctionne correctement : Ø Réception d’un appel et basculement sur une autre application. Ø Ne pas consommer trop de ressources système. Ø Ne pas avoir de problème lors de la création / restauration de l’application par le système (par exemple lors d’une rotation de l’écran). • Il est donc important d’avoir fait des tests dans les situations évoquées ci-dessus, avant de distribuer une application. Android-comp. App V 1. 1 – IE-Concept 2017 25
Programmation Android Composantes d’une application Ressources • https: //developer. android. com/guide/components/activities/ind ex. html • https: //developer. android. com/guide/components/services. ht ml • https: //developer. android. com/guide/components/index. html • https: //developer. android. com/ Android-comp. App V 1. 1 – IE-Concept 2017 26
- Les composantes de l'organisation
- Radar landrienne
- Composantes du système climatique
- 5 composantes de la condition physique
- Quels sont les 4 composants du sol ?
- Approche gar
- Scheme programmation
- Michel bierlaire
- Theoreme des ecarts complementaire
- Manuel de programmation robot abb irc5
- Programmation
- Programmation orientée aspect
- Programmation lineaire
- Problème de transport en programmation linéaire
- Programmation agile
- Langage de programmation ladder
- Programmation
- Programmation web avancée
- Typedef
- Php
- Programmation annuelle école de football
- Problme
- Programmation procédurale vs orienté objet
- Go langage de programmation
- Plan dune
- Le plan de la dissertation juridique
- Dune software