Lorsqu'un service a été tué, comment le redémarrer automatiquement? P>
parfois sans même appeler ondestroy () code> p>
3 Réponses :
Si votre service est tué, le système essaiera de le redémarrer plus tard. Lire Plus . P>
remplace le http://developer.android.com/reference/andrroid/ app / service.html # start_redeliver_intent p>
http://developer.android.com/reference/andrroid/ app / service.html # start_sticky p> OnStartCommand () code> et donner
start_sticky code> ou
start_redeliver_intent code> (dépend de vos besoins) comme valeur de retour. Le système veillera ensuite à redémarrer votre service jusqu'à ce que vous arrêtez explicitement le service. P>
Je fais start_sticky. Travailler bien à Nexus 5 et redémarrer le service. Mais dans le service Xiaomi est tué dès que ma demande est tuée.
J'ai hérité d'une réserve, je devais donc être doux.
Cela a fonctionné pour moi lorsque je remplace Onstartcommand () mais c'est-à-dire,
Je fais même. Travailler bien à Nexus 5. Mais dans le service Xiaomi est tué dès que ma demande est tuée.
Dans les cas incorrects, vous pouvez commencer une réveil pour vous assurer que votre service est en direct. Méfiez-vous de l'utiliser trop souvent, comme étant le réveil, la CPU coûte la durée de vie de la batterie. Avez-vous une application qui ravive Swipe pour rejeter?
Si votre service a été tué, c'est parce que l'utilisateur l'a tué ou que le système d'exploitation était faible à la mémoire. Cela signifie que vous ne devriez probablement pas le redémarrer. Vous ne devriez pas laisser de longs services de course comme ça
Merci de réponse, mais il y a des services, quand je les ai tués, ils se redémarreront rapidement.