2010-08-18 6 views
4

lorsque je clique sur un bouton, mon application doit être terminée. Il ne doit pas courir à l'arrière-plan. c'est-à-dire en maintenant la touche de la maison, mon application ne devrait pas être en vie. Par exemple, je dois rediriger mon application vers le navigateur. Ensuite, mon application va en tâche de fond. Je veux terminer avant la redirection vers le navigateur. Comment est-ce possible? Une idée? Mieux j'aurais besoin d'une explication à ce sujet. Cela aide à comprendre comment cela fonctionne pour Everybody.Comment mettre fin à une application par programme sous Android?

Merci à l'avance.

+1

juste une annotation: lorsque vous tenez la touche d'accueil les applications récemment utilisées sont présentées - cela ne signifie pas nécessairement que ces applications sont toujours en cours d'exécution en arrière-plan – DonGru

+0

duplication possible de http://stackoverflow.com/questions/6330200/how-to-quit-android-application-programmatically –

+0

Ne pas tuer votre application. Si vous ne voulez pas qu'ils apparaissent dans la dernière liste d'applications récentes, ajoutez android: excludeFromRecents = "true" à votre manifeste. – JacksOnF1re

Répondre

4

http://developer.android.com/guide/topics/fundamentals.html#clearstack

L'attribut finishOnTaskLaunch
Cet attribut est comme clearTaskOnLaunch, mais il fonctionne sur une seule activité, pas une tâche entière. Et cela peut entraîner la disparition de toute activité, y compris l'activité de la racine. Lorsqu'il est défini sur "true", l'activité reste une partie de la tâche uniquement pour la session en cours. Si l'utilisateur quitte et revient à la tâche, il n'est plus présent.

.. ou quelque chose comme ça. Je suis nouveau à Android, et juste après cette partie de la docs, et je pensais que cela pourrait aider.

EDIT: peut-être appeler finish() dans onPause()?

+1

finish() ne fait que terminer l'activité en cours. si nous définissons l'attribut sur la balise . sa globalisation pour l'ensemble de l'application. Je veux juste quand cliquez sur le bouton, il se ferme. comme App Gestionnaire des tâches. Toute autre idée pour faire cela par programmation non dans le manifeste? – Praveen

+0

2 façons: construire la fonctionnalité pour tuer une tâche comme un gestionnaire de tâches ou l'ignorer. Thats comment Android a été conçu ... il prend soin de lui-même, pas vraiment besoin de "finir" une application. – WarrenFaith

-3

Comme la réponse ci-dessus déjà dit:

finish(); 
return; 

Bonne chance
Tom

0

ce que je faisais est de lancer les activités avec startActivityForResult(), puis, quand je veux terminer l'application, Définir un résultat et terminer(). Plus tard, je suis arrivé à ce résultat avec:

onActivityResult public void (int requestCode, int resultCode, les données d'intention) {...}

Et si je suis le résultat attendu, terminer cette activité définir un nouveau résultat pour le précédent.

Cela fonctionne pour moi, mais il est facile parce que je n'ai que deux activités précédentes dans mon cas ...

+1

cela peut être le résultat dans le code désordonné ... Je ne recommande pas de le faire de cette façon ... – WarrenFaith

Questions connexes