Wie starten Sie einen getötet Dienst automatisch?
Wenn ein Dienst getötet wurde, wie um es neu zu starten automatisch?
manchmal sogar ohne Aufruf onDestroy()
- Wenn Ihr Dienst getötet wurde, es ist, weil der Benutzer entweder getötet oder der OS war der Arbeitsspeicher. Das bedeutet, dass Sie wahrscheinlich sollte nicht neu starten. Sie sollten nicht lassen Sie lange laufen Dienste wie
- danke für die Antwort, aber es sind einige Dienste,wenn ich Sie tötete,Sie starten sich bald.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich erbte einen IntentService, also musste ich sanft.
Es funktionierte für mich, wenn ich überschrieb onStartCommand (), aber
Ist, lassen die Eltern das tun, was es sollte und zurück START_STICKY.
Überschreibt die
onStartCommand()
und gebenSTART_STICKY
oderSTART_REDELIVER_INTENT
(hängt von Ihren Bedürfnissen) als Rückgabewert. Das system stellt dann sicher, um starten Sie Ihren Dienst, bis Sie explizit den Dienst zu beenden.http://developer.android.com/reference/android/app/Service.html#START_REDELIVER_INTENT
http://developer.android.com/reference/android/app/Service.html#START_STICKY
Wenn Sie Ihren Dienst getötet wird, versucht das system neu zu starten später.
Lesen mehr.