Merci d'avoir lu ma question, même si elle est très novice...
Comment le système Android gère-t-il la mémoire en ce qui concerne l'initialisation des activités, en particulier si une activité est initialisée par d'autres activités ? C'est une question qui me trotte dans la tête depuis un moment, mais je vais essayer de l'illustrer par un exemple :
Disons que j'ai 3 activités - A , B y C - avec activité A est celui qui est lancé lorsque l'application est démarrée pour la toute première fois. Supposons que l'activité A comporte des boutons permettant de naviguer vers les activités B y C et ces activités sont lancées à l'aide de la fonction startActivity()
en lui passant un Intent
instance. De même, disons que les activités B y C ont des boutons pour lancer leurs activités homologues... ça a du sens jusqu'à présent ?
Maintenant, si j'utilise le startActivity()
a:
- démarrer l'activité B de l'activité A
- puis démarrer l'activité C de l'activité B
- puis démarrer l'activité A de l'activité C
- puis répéter indéfiniment les étapes ci-dessus (donc tourner en rond)
...serait-il juste de supposer que le système Android "sache" que les activités ont déjà été lancées auparavant et ne les réinitialiserait pas, ce qui consommerait de plus en plus de mémoire, mais appellerait plutôt quelque chose comme la commande onRestart()
pour revenir à une instance déjà initialisée de l'activité ?
Une sacrée explication pour une question / un problème très simple... Je m'excuse si la question a déjà été posée et si la réponse a déjà été donnée ailleurs... Je n'ai pas trouvé de réponse claire ailleurs, même en lisant le site de l Formation Android sur le site des développeurs Android.