Effacement de la pile d'activité Android complète sur les anciens SDK (qui ne possèdent pas FLAG_ACTIVITY_CLEAR_TASK)
J'ai fait qui un peu de lecture et la recherche, mais ne peut pas trouver un moyen de claire de l'activité en cours de pile. Le contexte de mon app est une activité a commencé par un service d'arrière-plan ou de la notification.
Imaginer que mon application permet d'organiser une liste de personnes. Il y A quelques heures, vous étiez en train de consulter personne X dans la "Vue" de l'activité, c'est maintenant le haut de votre pile. À un certain moment dans l'avenir, le service des déclencheurs et j'ouvre une nouvelle "Informer" de l'activité pour personne Y. À partir de là, vous pouvez modifier la personne Y est des détails.
Lorsque vous avez terminé cette activité, il serait une source de confusion expérience utilisateur à la pop de la pile et à la fin de la visualisation personne X. Idéalement, j'aimerais revenir à ce que l'utilisateur était en train de faire (email, etc...), ou au moins à mon application à la maison.
J'ai essayé de départ "Notifier" avec FLAG_ACTIVTY_NEW_TASK
mais cela ne semble pas aider: quand la tâche est terminée, il va tout simplement à l'arrière de la tâche précédente. Ce que je veux semble être Android 3 nouveaux FLAG_ACTIVITY_CLEAR_TASK
qui n'existe pas dans les précédents Kits de développement logiciel.
Quelqu'un a une suggestion pour réaliser cela?
source d'informationauteur Gromix | 2011-03-01
Vous devez vous connecter pour publier un commentaire.
Si vous avez déjà un exemple d'accueil de votre application s'exécutant dans la pile, lorsque l'activité Y est terminé, vous pourriez commencer d'accueil de votre application (à l'aide de
startActivity()
) avec le drapeauFLAG_ACTIVITY_CLEAR_TOP
. Comme il est déjà sur la pile, au lieu de créer une nouvelle instance de celle-ci, ce serait de vous ramener à l'accueil de votre application et de clarté de la pile au-dessus d'elle.Juste kill em all!
Vous pouvez le faire en utilisant
BroadcastReceivers
:BaseActivity
comme ceci:BaseActivity
.Prendre une liste de tableaux et d'enregistrer toutes les activités d'objets dans arraylist dans oncreate() de chaque activité. Chaque fois que vous voulez à la fin d'activité particulier ,juste de récupérer cette activité exemple de liste de tableaux et de finition.