11
votes

Différence entre un tueur de tâche tuant une application et le système d'exploitation Android tuant une application

Y a-t-il une différence entre ce qui se passe lorsque vous utilisez une application de tâche tueur pour tuer une application contre ce qui se passe lorsque le système d'exploitation Android tue une application en raison de ressources rares?

Le SDK Android dit que la méthode Application.Onterminate () n'est pas appelée lorsque le système d'exploitation tue une application en raison de ressources rares. Il semble donc que le système d'exploitation ne ferme pas bien les applications et qu'il fait exactement ce que font les tueurs de tâches largement débattues.

S'ils font la même chose, les tueurs de tâches ne font plus de mal que le système d'exploitation lui-même, non?


1 commentaires

On dirait que vous avez un en.wikipedia.org/wiki/killer_app sur vos mains.


3 Réponses :


0
votes

AFAIK par expérience, lorsque Android tue une application, vous ne pouvez pas compter sur elle être tuée proprement (pas d'appels pour détruire des méthodes). Quant à un tueur de tâche ... Eh bien, je suppose que cela dépend de la mise en œuvre d'un tueur de tâche spécifique.

Android fait un excellent travail Gestion des ressources de sa part, mais un tueur de tâche peut être utile lorsque vous voulez explicitement tuer quelque chose. Et pour répondre à votre question, je ne pense pas qu'un tueur de tâche fait plus de mal que lorsque Android tue une application.


0 commentaires

3
votes

Y a-t-il une différence entre ce qui se passe lorsque vous utilisez une application de tâche tueur pour tuer une application contre ce qui se passe lorsque le système d'exploitation Android tue une application en raison de ressources rares?

Un tueur de tâche nourrit l'application de l'orbite. Il termine le processus, supprime toutes les alarmes, supprime tous les en PLANDINTENTS (E.G., pour les mises à jour de localisation), etc.

sur l'occasion peu fréquente où Android doit mettre fin à un processus pour libérer de la RAM, il finit simplement le processus.

S'ils font la même chose, les tueurs de tâches ne font plus de mal que le système d'exploitation lui-même, non?

Non, des tueurs de tâches font un peu plus de mal à l'application.


0 commentaires

6
votes

comme de Froyo il n'y a pas de différence. :) Toutes une tâche tueuse peuvent faire est de tuer -9 un processus lorsqu'il est en arrière-plan, ce qui est la même chose que le système d'exploitation quand il veut sa mémoire. Et oui, ce n'est pas une sortie propre et ordonnée, c'est une tuerie-the-the-Process-Dead-Idential-Down. En fait, sur des environnements androides réguliers, une demande () ne sera jamais tuée; Les processus ne disparaissent que par tuer.

Avant les tueurs de tâches de Froyo avait accès à une API différente - "Force Stop" - qui leur permettait de beaucoup plus brutalement toutes les applications. Cela inclut l'arrêt des services de démarrage, supprimant les alarmes enregistrées, en supprimant les notifications, etc.


0 commentaires