Android forcer l'Arrêt de rappel à la demande?
Si une application est en arrêt forcé en suivant les étapes Paramètres->->ManageApplications -> --> Forcer l'Arrêt , Ne android appeler le onDestroy de l'Activité ou de l'Application ? (Si non , Est-il un moyen de savoir si l'application a succombé à une force d'Arrêt déclenché par l'Utilisateur ) .
Mais qu'à propos de l'application de Protection d'Application? sont-ils à l'aide d'un trou de sécurité pour devenir root? Parce que si vous " forcer l'arrêt de l'application, il commence à nouveau, peu importe comment vous le tuez, il va commencer à nouveau.
OriginalL'auteur Chris | 2012-06-22
Vous devez vous connecter pour publier un commentaire.
Force l'arrêt de l'application va tuer l'ensemble du processus (c'est à dire avec
Processus.killProcess(int pid)
). Toutes les ressources associées à l'application va être enlevé et libéré par le noyau. Donc non, il n'y a aucun moyen que vous pouvez intercepter cette action.Lorsque vous relâchez votre demande sur le marché, le développeur de la console va vous fournir des statistiques concernant la force de ferme, les accidents, etc. (si c'est pourquoi vous demandez).
OriginalL'auteur Alex Lockwood
En bref, non,
onDestroy()
n'est pas appelé, et vous ne pouvez pas faire cela. Android ne le supporte pas.Une plus longue réponse...
onDestroy()
ne semble pas être appelé dans ce scénario. J'ai testé en essayant d'avoirToast
moi avant d'appeler super.onDestroy, mais leToast
message ne s'est jamais montré. (Et selon ce post,onDestroy()
est vraiment pas fiable et ne sera pas appelé souvent, le cas échéant, sur les téléphones, considérant qu'il peut être appelé sur un émulateur donc être conscient de cela). Au lieu de celakillProcess()
est appelé, et on ne peut pas intercepter.En outre, conformément à la accepté de répondre à ce post, il semble que nous ne pouvons même pas de capture et d'effectuer des tâches après une contrôlée par l'utilisateur de la force de l'arrêter.
onDestroy()
sera appelée.Exactement. C'est déjà indiqué dans ma réponse.
Désolé, je n'étais pas suggérer que vous aviez tort... juste voulu généraliser la réponse un peu ("comme dans la plupart des cas"). Espérons que vous n'avez pas l'esprit. 🙂
Pas du tout! Pas besoin de s'excuser. Mieux que vous re-état en d'autres termes si elle rend plus facile à comprendre, et signifie aussi l'importance du fait que l'utilisateur doit pas en s'appuyant sur onDestroy().
OriginalL'auteur Mxyk
Pas. Ce n'est pas vraiment possible. Je n'ai pas regardé le code Android en question, mais j'imagine que "forcer l'arrêt" est juste appeler
kill
sur le processus de l'ID de votre application. Donc la seule façon que vous pouvez intercepter, c'est si vous pourriez intercepter les signaux, je ne pense pas qu'Android permet.Si vous avez été enraciné, vous pourrait éventuellement le faire, mais en aucune façon standard.
OriginalL'auteur Falmarri