64 votes

Un service android est-il garanti d'appeler onDestroy ()?

Le cycle de vie diagramme d'une Activité sur un appareil android ne garantit pas que onDestroy() sera appelée, mais que le processus peut être tué et l'Activité est retirée brusquement. Le cycle de vie diagramme d'un Service sur un android ne garantit que onDestroy() sera appelée. J'ai donc deux questions relatives à cette différence.

Tout d'abord, si le Service fait partie du même processus que celui de l'Activité, est le Service onDestroy() a appelé, bien que l'Activité onDestroy() n'est pas appelée? Je ne le crois pas, que "le meurtre d'un processus de" suggèrent que le système d'exploitation est l'arrêt de son fils et de la diffusion de ses ressources.

Et si c'est le cas, pouvez-Service uniquement-processus d'être brutalement tués par l'OS?

40voto

kabuko Points 23166

Je ne sais pas où vous avez vu qu'un Service est la garantie d'avoir des onDestroy() appelé. Autant que je sache, ce n'est pas le cas. Si vous lisez cette page de la documentation, il décrit les conditions dans lesquelles un service pourrait être tué. Donc, si vous vous demandez si un processus qui héberge à la fois une activité de service et qui est tué, sera onDestroy() être appelé sur le service (mais pas sur l'activité), alors la réponse est non; un service de l' onDestroy() ne sera pas nécessairement être appelé. Quant à savoir si un service uniquement le processus peut être brutalement tués par les OS: oui, c'est possible. Cela est particulièrement vrai lorsque vous avez beaucoup de travail à faire, et votre onStartCommand appel que les files d'attente le travail à faire de façon asynchrone. Ensuite, le service va passer la majorité de son temps n'a pas protégés onCreate, onStartCommand ou onDestroy méthodes.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X