Quelle est la bonne façon de fermer les applications dans Android?


69

Je suis nouveau sur la plate-forme Android, et c'est probablement une question idiote, mais ...

Comment fermez-vous une application?

Lorsque je suis dans une application et que je veux sortir, je clique simplement sur "Accueil" et je passe à autre chose, mais je viens d'installer une application du gestionnaire de tâches et j'ai remarqué que tout était en marche.

Est-il possible de quitter les applications? Ou dois-je utiliser le gestionnaire de tâches chaque fois que je quitte quelque chose?


Réponses:


48

Si vous quittez l'application à l'aide du BACKbouton, il appellera alors onDestroy()l'activité en cours. Si vous appuyez HOMEuniquement sur cette touche , ne vous onPause()
inquiétez pas, les activités ne vont pas vider la batterie, elles sont simplement laissées en mémoire pour pouvoir être ouvertes. plus vite dans le futur.

Je ne recommanderais pas d'utiliser l'une de ces applications destructrices Android est conçue pour conserver ce contenu en mémoire pour une raison quelconque. L'utilisation d'un destructeur de tâches n'est qu'un service supplémentaire qui vous permet de tirer votre batterie de votre poche. Ce que vous devez surveiller est la les applications qui exécutent des services en arrière-plan, tels que les clients Twitter ou de messagerie, tirant leurs serveurs, toute bonne application disposant d'un service de ce type aura la possibilité de le désactiver.


1
Je l' ai remarqué une des applications de couple qui ne mangent par beaucoup de batterie dans cette pause état. À savoir, la dernière version de Google Maps et un jeu que j'ai appelé s'appelle GalaxIR. Alors gardez un œil sur les mauvais délinquants et assurez-vous de les fermer correctement.
keithjgrant

1
vous vous trompez, si c'est manger votre pâte, c'est un service de base.
Nathan Schwermann le

5
Il est en effet possible d'avoir une application qui n'est pas bien développée et qui ne suit pas le cycle de vie de l'application Android. Par exemple, un fil peut rester actif dans une activité même après sa suspension par le système d'exploitation (en appuyant sur la touche Accueil). Dans ce cas, l'application continuera à utiliser la batterie.
Jmbouffard

1
J'ai constaté que de nombreuses applications ne se fermaient pas lorsque je cliquais sur le bouton Précédent. Par exemple: Pandora, G
Clay Nichols

1
(mon temps de montage expiré) .... autres applications qui ne se ferment pas avec le bouton Précédent: Pandora (qui continue même à jouer après avoir appuyé sur Retour), Google Play Store, FaceBook, Podkicker. La façon dont je teste consiste à cliquer sur le bouton Précédent jusqu'à la disparition de l'application (ce qui me ramène généralement à la maison), puis à exécuter Easy Task Killer.
Clay Nichols

25

Je suis presque sûr que tout ce que j'ai lu indique que le Backbouton est le bon moyen de sortir des applications.

Appuyez sur pour les Homelaisser fonctionner en arrière-plan jusqu'à ce qu'Android décide qu'ils ne sont plus nécessaires, ce qui peut s'avérer utile si vous avez juste besoin de basculer entre les applications pour vérifier quelque chose (conserver Home pendant quelques secondes vous donne la liste des applications en cours d'exécution. vous pouvez revenir sur la plupart des téléphones), mais sortir en utilisant le bouton précédent indique à l'application que vous souhaitez la fermer.


3
En maintenant le Homebouton, vous affichez simplement la liste des 6 dernières applications ouvertes, pas celle en cours d'exécution.

@ Loïc: ça montre 8 pour moi.
ale

1
@LoicWolff, AlEverett Cela dépend du lanceur utilisé et de la ROM elle-même.
t0mm13b

Ce n'est pas tout à fait vrai. Les activités ne fonctionnent pas en arrière-plan sur Android.
Dan Hulme

12

Certaines applications ont une option "Quitter" dans leurs menus. La plupart ne le font pas.

Vous n'avez pas vraiment besoin de vous en soucier. Vous pouvez simplement aller à l'application que vous avez besoin ensuite. Android fait un très bon travail en libérant des ressources lorsque cela est nécessaire.

Mise à jour : AndroidSpin a effectué des recherches dans le monde réel .


Lien agréable, ty :)
Flow

7

Les activités ne fonctionnent pas en arrière-plan

Sous Android, les activités (c'est-à-dire la partie de l'application que vous pouvez voir) ne s'exécutent jamais en arrière-plan. Ils ne peuvent fonctionner (et utiliser la batterie) que lorsqu'ils sont à l'écran. L'activité cesse de fonctionner, que vous utilisiez chez vous ou à votre retour pour la quitter. La seule différence réside dans les données que Android demande à l'application de sauvegarder. Aucune option n'est donc "la bonne manière". Cela dépend de ce que vous voulez faire.

Accueil

Si vous utilisez home , Android laisse l'application dans le même état, de sorte que si vous y revenez plus tard (par exemple via la liste des applications récentes), elle sera toujours dans le même état que vous l'avez laissée: sur le même écran, avec les mêmes choses montrées. Par exemple, s'il s'agit d'une application de messagerie et que vous consultiez un seul courrier électronique, il se souviendra du courrier électronique utilisé et vous montrera le même.

Finalement (après environ une demi-heure), Android conclut que vous ne revenez pas à l'application, il réinitialise donc cet état: la prochaine fois que vous lancerez l'application, elle démarrera à partir de l'écran principal / principal. Pour continuer l'exemple, l'application de messagerie électronique oubliera le courrier électronique et le dossier que vous consultiez, et vous montrera la boîte de réception.

Retour

Si vous utilisez back , vous dites à Android que vous ne souhaitez pas revenir à cette vue. Cela détruira l'information sur ce que vous regardiez tout de suite. La prochaine fois que vous lancerez l'application, l'écran principal apparaîtra (par exemple, la boîte de réception).

Comme d'autres l'ont dit, les applications peuvent contrôler le comportement du bouton Précédent : par exemple, les navigateurs Web l'utilisent pour revenir dans l'historique du navigateur. Ce que j'ai décrit est le comportement par défaut du bouton de retour, et les développeurs sont instamment priés de conserver ce comportement pour éviter toute confusion.

Processus d'arrière-plan mis en cache

Quelle que soit la méthode utilisée, Android laissera l'application en mémoire (mais ne fonctionnera pas) aussi longtemps que vous le pourrez. C'est pour être plus efficace. Lorsque vous revenez à l'application, si elle est toujours en mémoire, Android peut l'exécuter à nouveau tout de suite. si ce n'est pas encore en mémoire, alors Android doit passer du temps et de l'énergie à charger à nouveau l'application depuis le stockage.

Dans les anciennes versions d'Android, les applications laissées en mémoire en arrière-plan étaient incluses dans la liste des "applications en cours d'exécution". C'est un peu déroutant pour les utilisateurs - cela donne l'impression que l'application est toujours en cours d'exécution - donc les versions plus récentes appellent ces applications "processus d'arrière-plan mis en cache", pour indiquer clairement qu'elles ne sont que mises en cache, mais qu'elles ne s'exécutent pas.

Qu'en est-il des applications en arrière-plan?

Un peu plus tôt, j'ai dit que les activités ne s'exécutaient pas en arrière-plan. Alors, comment votre client de messagerie vérifie-t-il le courrier? En plus des activités, les applications peuvent avoir des services . Les services ne vous permettent pas de voir ni d’interagir avec une interface graphique, mais ils fonctionnent en arrière-plan. En règle générale, un service ne fonctionne que rarement, par exemple pour vérifier les e-mails une fois par heure, mais il est possible pour le développeur de l'application de l'exécuter tout le temps, en déchargeant votre batterie.

Quitter une activité avec le dos ou la maison ne change pas la manière dont Android traite les services de la même application: le service peut continuer à fonctionner, ou être déclenché plus tard à une heure donnée (la prochaine fois que la vérification du courrier est due).

Sommaire

En résumé, peu importe que vous utilisiez à la maison ou à l' arrière : cela change seulement ce que l'application vous montre la prochaine fois que vous l'exécutez. Cela n'a pas d'effet sur l'utilisation de la batterie. Ni l'un ni l'autre ne correspond à la "sortie" d'un programme sur votre PC.


Je suis tellement content que quelqu'un ait couvert ça! Je suis développeur, mais j’ai travaillé pour Verizon Wireless et je ne peux pas vous dire combien de personnes s’inquiètaient de ce fait quand il n’était pas nécessaire de le faire.
Roan

3

Sous Android, les applications n'ont jamais besoin d'être fermées et le système d'exploitation s'occupe de nettoyer la mémoire des applications restantes lorsque les ressources sont nécessaires ailleurs. Utiliser une tâche tueuse ne fera que briser le fonctionnement normal du système d’exploitation et pourrait même ralentir le périphérique car les applications devront toujours être rechargées dès le début.

Le cycle de vie des applications Android fonctionne de manière à ce que les applications qui ne sont pas au top soient déplacées dans un état de pause qui n'utilise plus aucun processeur. seul le contenu de la mémoire est conservé en cas de réouverture de l'application; et la mémoire sera libérée si nécessaire.

Ceci étant dit, le développeur de l'application a la responsabilité de suivre le cycle de vie de l'application lorsqu'il crée son application afin d'éviter des erreurs ou des bugs pouvant conduire à une application qui ne s'arrête jamais vraiment ou ne se met jamais en pause. Si vous rencontrez une telle application et quoi la fermer, vous pouvez le faire via "Paramètres" -> "Applications" -> "Gérer les applications" en sélectionnant "Forcer l'arrêt" sur l'application.

Mais je ne recommanderais vraiment pas l'utilisation d'un tueur de tâches qui tourne constamment sur l'appareil.


1

Je veux juste ajouter dans la réponse de schwiz qu'il ne manque que quelques lignes de code pour remplacer les fonctionnalités du bouton Précédent. Il n'est donc pas toujours fiable de fermer l'application. Donc, si le développeur de l'application ne veut pas fermer l'application en appuyant sur le bouton Précédent, elle ne sera pas fermée.

Bien que la plupart des bons développeurs d’application ouvrent une boîte de dialogue d’alerte en appuyant sur le bouton Précédent du menu d’accueil de l’application, demandant si l’utilisateur a l'intention de quitter l’application ou non, si vous cliquez sur quitter, elle ferme l’application.

La réponse correcte pourrait être la suivante: la fermeture de l'application repose entièrement sur le développeur de l'application. S'ils souhaitent fermer l'application en appuyant sur le bouton d'accueil, ils insèrent le code de sortie onPause(). S'ils le veulent sur le bouton de retour, ils le mettront dans le onBackKeyPressed. Donc, ce n'est pas vraiment dans la main de l'utilisateur.

L'utilisateur peut simplement éviter d'utiliser les applications qui ne fournissent pas la fonctionnalité de fermeture appropriée, lorsqu'elles ne sont pas nécessaires. Les gestionnaires de tâches ne constituent pas un bon moyen de fermer l'application, car l'application peut se bloquer et ne pas leur permettre de sauvegarder leur état.

Le système d'exploitation ferme l'application lorsque vous en avez besoin. Ne vous inquiétez donc pas trop à ce sujet.

Edit:
Il existe une option pour détruire les applications, dès que vous quittez l'application, c'est-à-dire lorsque vous cliquez sur la touche de base. Vous pouvez aller à Settings-> Developer Options-> Don't keep Activities. Bien que ce soit une option pour les développeurs, mais si vous êtes trop préoccupé par les applications qui s'exécutent en arrière-plan, vous pouvez utiliser cette option. Mais gardez à l'esprit qu'il n'est pas recommandé aux non-développeurs de l'utiliser.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.