3 Stimmen

Wie man einen Dienst registriert, der immer läuft

Ich möchte, dass mein Android-App-Dienst die ganze Zeit über läuft. Das heißt - 1. direkt nach der Installation, 2. beim Booten 3. wenn er geschlossen wird - wird er neu gestartet -

Wie erreiche ich all diese Punkte mit dem Code?

Danke!

5voto

PravinCG Punkte 7668

Ich werde den Code hier nicht veröffentlichen, aber Sie können ihn leicht finden.

  1. Verwenden Sie direkt nach der Installation die Standardaktivität, um den Dienst zu starten. Falls Sie keine Benutzeroberfläche haben, erstellen Sie eine Aktivität ohne Benutzeroberfläche (kein setContentView) und starten Sie den Dienst in dessen onCreate.

  2. Sie müssen einen broadcastReceived erstellen, der auf ACTION_BOOT_COMPLETED hört, und diesen als Service Manager aufrufen. Beim Empfang des Broadcasts in diesem Empfänger starten Sie den Dienst einfach erneut.

  3. Stellen Sie Ihren Dienst in den Vordergrund, und das sollte im Idealfall für dieses Szenario sorgen.

5voto

uris Punkte 5769

Sie sollten nicht die Service im Vordergrund stehen! Die beste Praxis in der aktuellen Android-Version ist es, die START_STICKY von Ihrem Service 's onStartCommand() . Dadurch wird das Android-System veranlasst, Ihren Dienst neu zu starten.

Herzliche Grüße.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X