J'ai donc mon activité, et en appuyant sur un bouton "Quitter" j'appelle Activity.finish(). Cela ferme effectivement mon application. Le problème: Le processus Dalvik de mon application traîne toujours en tant que zombie en arrière-plan. Il semble que ce soit normal car d'autres applications font de même. Même l'exemple de Bonjour-monde traîne dans la mémoire ..Comment tuer ma propre activité - la voie difficile
Je pourrais vivre avec cela, mais malheureusement ce comportement rend le développement de mon application une douleur. J'ai un service à distance connecté à mon activité, et ce service ne sera pas déchargé tant que mon activité ne sera pas déchargée (ce qui n'a jamais été le cas).
Tout est en quelque sorte maintenu en vie sans raison valable. Comment puis-je vraiment supprimer mon activité de la mémoire?
Je cherche quelque chose comme Activity.finish_and_kill_my_process_please() appel ou quelque chose de similaire.
Ok, eh bien, il semble que cette méthode ne fait plus partie de la classe ActivityManager ?? – bugzy
Il existe une nouvelle API pour Android 2.2 Froyo mais c'est une très mauvaise idée. Ces autorisations sont marquées comme DANGEREUSES et les utilisateurs verront que votre application a la capacité de tuer d'autres applications. – Tom
Alors que terminer le processus d'une application n'est presque jamais une bonne idée en dehors des tests obscurs pendant le développement, c'est une façon inutilement détournée de le faire. Un processus peut simplement quitter() ou se tuer lui-même - il n'a pas besoin de demander à ActivityManager de le faire. –