Bonjour,

Dans le graphique ci-dessous je vous présente un petit bout d'une application que je suis en train de développer.

En bleu le lancement dune activité avec un startActivityForResult()

En rouge le retour de cette activité avec un setResult(x) et un finish() pour la tuer.

CANCEL est un bouton spécifique, pas la touche "retour" du téléphone.

Comme vous pouvez le constater :
Je peux accéder à NEWPROD directement depuis MAIN, ce qui fait qu'un CANCEL (setResult) me ramène bien à MAIN
Par contre si j'accède à NEWPROD en passant par CHOIXPROD alors un CANCEL me ramènera à CHOIXPROD où je devrais gérer le relai pour retourner à MAIN et tuer CHOIXPROD au passage.
Il y a donc 2 voies de retour possibles entre NEWPROD et MAIN (trait plein et trait pointillé)


Question :
existe t-il une solution peut-être moins propre mais plus direct pour ne gérer qu'un seul retour direct ? Par exemple en faisant un startActivity pour passer de NEWPROD à MAIN et ensuite tuer manuellement les activités NEWPROD et CHOIXPROD.
Est-ce faisable ? Si oui comment fait-on pour tuer une activité "à distance" ?
Une autre solution ?

Merci pour votre aide

Remarque : Je pose la question pour améliorer ma compréhension de la gestion des activités. Dans les faits je pense garder le passage par l'activité intermédiaire pour que ce soit propre !

Nom : exemple.jpg
Affichages : 80
Taille : 15,0 Ko