Pouvez-vous suivre quand une application android a été résilié?
Regardé android documentation et il semble que nous n'avons pas la capacité de savoir quand une application s'arrête. Si elle a été explicitement par l'utilisateur ou automatiquement par le système d'exploitation.
Ci-dessous est la onTerminate()
de la documentation qui est uniquement disponible dans la émulé scénario.
public void onTerminate()
Depuis: API de Niveau 1
Cette méthode est à utiliser dans des émules processus
les environnements. Il ne sera jamais appelé sur un appareil Android,
où les processus sont retiré tout simplement les tuer; pas de code d'utilisateur
(y compris le présent rappel) est exécutée quand le faire.
Quelqu'un aurait-il d'autres façons de faire rapport lorsque l'utilisateur ferme l'application?
Nous avons besoin de savoir à partir d'un pilote/facilité d'utilisation point de vue, si nous avons besoin d'intégrer des fonctionnalités supplémentaires dans notre production future application.
- Si vous pouviez donner une idée de ce que vous voulez faire lorsque l'application est "terminé", nous pourrions être en mesure de vous suggérer quelques idées sur la façon de l'accomplir.
- En gros, je voudrais juste envoyer un incendie oublier demande à notre infrastructure interne et à laissez-nous savoir ce qui se passait. Rien de plus vraiment. Sachant que la fréquence de cette situation aurait un impact sur notre produit du sens à l'avenir.
- Alors qu'il n'y a pas d'api pour que votre application a été tué par un système ou par l'utilisateur il y a de nombreuses api qui peut vous dire partiellement ce qui se passe avec votre application parfois: Si vous cochez isFinishing() dans onDestory méthode, vous pouvez voir si l'Activité est fermé en raison de la finition() ou quelque autre raison (os de nettoyage par exemple). Vous pouvez également utiliser le service pour vérifier si une tâche de votre application est supprimée par l'utilisateur (la suppression de l'activité de récents par exemple) à l'écoute de ses onTaskRemoved() la méthode.
Vous devez vous connecter pour publier un commentaire.
Ne savez pas si cela va vous aider à...
Dans mon application, j'utilise De l'activité.onDestroy() à faire le nettoyage que j'ai besoin. J'ai un couple d'activités et ont
onDestroy()
dans chacun d'eux.C'est le plus proche je suis arrivé à faire ce dont j'avais besoin - et cela fonctionne assez bien.
Aux utilisateurs de ne pas fermer les applications sur Android.
Aux utilisateurs de ne pas fermer les applications sur Android.
Android, à cet égard, se comporte un peu comme un navigateur Web. Les utilisateurs de ne pas fermer les applications Web dans les navigateurs Web. Ils pourraient fermer le navigateur. Ils peuvent fermer un onglet. Ils pourraient appuyez sur le bouton d'accueil et accédez à un autre site/application. Ils peuvent choisir un signet et sélectionnez un autre site/application. Ils pourraient glisser un document dans le navigateur et afficher. Ils pourraient double-cliquez sur une icône du bureau et de l'afficher. Et peut-être que sur certains lien "déconnexion" dans la vue de site Web/app. L'un de ces causer à l'utilisateur de laisser ce site Web/application qu'ils sont, mais d'aucun ne pourra être interprétée comme une "clôture" du site Web/app de la même manière qu'en cliquant sur le bouton fermer dans un bureau à la fenêtre de l'OS pourrait être interprétée comme une "clôture" de l'application de bureau.
Comme @Aleks G de notes, il existe différents du cycle de vie des méthodes que vous pouvez remplacer pour savoir ce que l'utilisateur est en train de faire à l'égard d'une activité.
onStop()
indique quelque chose d'autre a plus de premier plan d'entrée et de votre activité n'est plus visible.onUserLeaveHint()
indique que l'utilisateur a appuyé la MAISON. Et ainsi de suite. Mais ceux qui sont au niveau d'activité, pas de niveau de l'application.Faire un BaseActivity l'extension de l'Activité dans votre Application et étend cette BaseActivity au lieu de l'Activité.
Dans ce BaseActivity remplacer le onDestroy() la méthode.
Comme