SAISON 2 : DÉVELOPPEMENT ANDROID

Posted By: amenedem On lundi 14 mars 2011

Saison 2 : Episode 1 : Création d'applications

Dans la Saison 1 on a répondu à la question c'est quoi ANDROID et comment installer son environnement de développement  . Dans cette saison nous allons introduire les concepts de développement sous android et essayer de vous conduire à créer vous même votre premier projet Android !


Avant toute chose il faut connaitre le cycle de vie des applications et maîtriser les composantes d'une application et leurs interactions .


  1. Composants d'une Application

Une application Android est un assemblage de composants liés grâce à un fichier de
configuration. Nous allons découvrir chaque pièce de notre puzzle applicatif, comment
le fichier de configuration de l’application la décrit et comment toutes les
pièces interagissent entre elles.

On va décortiquer le schéma ci dessous :
Composition d'une application
Une application Android est composée de plusieurs éléments qu'ils faut assembler . Voici alors les différents éléments à savoir :


  •  Activités (Activity)
            C'est la partie présentation de votre projet ( Interface ou les écrans de votre Application ) 
  • Services (Service)
            Bah les services c'est des "Services " ;-) c'est des opérations de background des applications si je fais une analogie , c'est des CRON qui tournent en tache de fond ; ça permet tout simplement de mettre à jour des sources de données et de déclencher des notifications .....
  • Fournisseurs de contenu (ContentProvider)
         Ils permettent les partages des informations entre applications 
  • Objets Intent 
         C'est une taches ou une action spécifique  
  • Rrécepteurs d’Intents (BroadcastReceiver )
         " Listners " Ils ecoutent les autres applications enfin de repondre aux "intent" 
          
  • Notification
          C'est des Notifications (Exemple arrivée d'un SMS, Changement de position GPS , Niveau de baterie bas etc .....)

Si on remonte plus haut sur le premier schema on retrouve  une application composée d'un ensemble de  fenêtrés utilisant des éléments ressources ( fichiers , texte , images , video et autres )  tous reliés entre eux par un fichier de configuration le manifeste.xml .

    2. Le Cycle de vie d’une application



Les applications Android ont un fonctionnement particulier : elles réagissent à des
changements d’états imposés par le système (démarrage, pause, reprise, arrêt...).
Voici un schéma suivi d'un code permettant d'expliquer les différentes étapes dans le cycle de vie d'une application .
Cycle de vie d'une application

  • onCreate() :
    • Exécuté lorsqu'on lance l'application pour une première fois
    • Utilisé pour l’initialisation :
      • vue XML;
      • des fichiers/données temporaires;
  • onRestart() :
    • Exécuté au  Réveil de l'application après un stop() ,  redémarre (repasse en premier plan);
  • onStart() :
    • Exécuté après chaque onCreate() ou onRestart();
    • Chargement des données sauvegardées durant le dernier arrêt;
  • onResume() :
    • Exécuté après chaque onStart();
    • Exécuté a chaque passage en premier plan de l’activité;
    • Initialisation :
      • Connexion DB;
      • Mise à jour des données qui auraient pû être modifées entre temps (avant le onResume);
  • onPause() :
    • Exécuté avant chaque onStop();
    • Exécuté chaque fois que l’utilisateur passe à une autre activité, ou bien lorsqu’il demande un « finish() » sur cette activité, ou bien encore si le système à besoin de libérer de la mémoire;
    • Libération des resources :
      • sauvegarde des données qui seront perdues après l’arrêt si elles ne sont pas sauvegardées;
      • connection DB;
    • Attention : l’exécution de cette fonction doit être rapide car la prochaine activité ne démarrera pas tant que l’exécution de cette fonction n’est pas terminée;
  • onStop() :
    • Exécuté avant chaque mise en sommeil;
    • Exécuté avant chaque onDestroy:
    • Libération des ressources;
  • onDestroy() :
    • Exécuté lors du kill / de l’arrêt de l’activité;
    • onCreate() devra à nouveau être exécuté pour obtenir à nouveau l’activité.
    • libération des resources
      • fichiers temporaires

3 . Notion de priorité d'une application :

L’ordre d’arrêt des processus pour libérer des ressources est déterminé par la priorité du
processus donnée par le système. La priorité de l’application est elle-même déterminée
par son composant le plus prioritaire (une application possédant un fournisseur de contenu
a par exemple plus de priorité qu’une application qui en est dépourvue).
Tableau de priorité : 
Tableau des priorités établies par le système

En résumé on a fait le tour de ce qu'il faut encore savoir en terme de cycle de vie et des priorités des Processus pour aller plus loin je vous invites  ici pour compléter les informations .... 
Suite de nos prochains épisodes dans quelques jours ...... 

snipt

Fourni par Blogger.