Bonjour,
Il y a quelques temps, j'ai remarqué que le code en dessous d'un startActivity() était tout de même exécuté. Sur le coup, ça m'a un peu surpris, mais je n'y ai pas prêté plus attention car je n'avais normalement rien après. Cependant, aujourd'hui, je me pose des questions.
Q1 : Est-ce que le code en dessous d'un startActivity() est toujours exécuté ?
Q2 : S'il y a beaucoup de code après ce startActivity(), est-ce qu'il est toujours intégralement exécuté ou est-ce que le traitement s'arrête à un moment impossible à prédire ?
Q2.1 : Si l'exécution de ce code "s'arrête en plein milieu" puis que l'application revient plus tard sur cette activité (non terminée), est-ce que le traitement continu en reprenant là où il s'était arrêté ?
Q2.2 : Si l'exécution de ce code "ne s'arrête pas en plein milieu", comment ça se passe ?
Q3 : Est-ce que c'est "dangereux" ? Est-ce que ça peut ralentir/bloquer l'activité qui vient de se lancer ? Est-ce le même thread ?
J'aimerais aussi plus de détails car je "profite" plus ou moins de cette possibilité pour exécuter un peu de code en dessous du startActivity() : rien de très lourd, de termine juste l'activité et toute les précédente lorsque je lance certaines activités.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 // Prépare l'activité suivante Intent intent= new Intent(this, NextActivity.class); startActivityForResult(intent, REQUEST_CODE); // Termine cette activité, et la précédente (onActivityResult -> finish) setResult(RESULT_CODE_FINISH); finish(); return;
Merci d'avance.
Partager