application mobiles- ripple motion services

TechTalk#5 – Activity Lifecycle

TECH TALK #5

 

Activity Lifecycle

 

La gestion du cycle de vie des activités et des fragments n’est, en théorie, pas un problème. En pratique, la documentation est difficile à aborder, non exhaustive et manque de clarté. De plus, il existe des différences entre les différents niveaux d’API.

Cela créé des problèmes difficile à déceler et ils ne se manifestent que dans certaines conditions, souvent non triviales à reproduire. De notre expérience, il s’agit de la source n°1 des crashs applicatifs.

 

Voici quelques règles pour essayer de réduire les mauvaises surprises :

 

1. Tout ce dont une activity a besoin doit lui être fourni dans son intent, via les EXTRAS.

2. Laisser à l’activity que l’on veut lancer le soin de créer son intent (méthode makeIntent sur l’activité de destination).

3. Sauvegarder l’état de l’activity dans onSaveBundleInstanceState et le restaurer dans onCreate. Pour aider à tester ces développements, le paramètre suivant est essentiel : Settings > Developer > Advanced > Do not keep activities > ON. Il permet de tuer les activités dès que celles-ci ne sont plus à l’écran (worst-case scenario de recyclage des ressources par l’OS).

4. Laisser le FragmentManager restaurer l’état des fragments.

5. Savoir dans quelles méthodes de lifecycle faire quelles actions

 

Tech talk 7 lifecycle - ripple motion service

 

Tech Talk animé par :

Ripple Motion : Olivier Tabone - CTO et directeur technique

OLIVIER TABONE

Co fondateur/Directeur

 

N’hésitez pas à télécharger le TechTalk #5 – Activity Lifecycle