Service.OnStartCommand(Intent, StartCommandFlags, Int32) Methode

Definition

Wird vom System jedes Mal aufgerufen, wenn ein Client den Dienst explizit startet, indem er aufruft android.content.Context#startService, die angegebenen Argumente und ein eindeutiges ganzzahliges Token, das die Startanforderung darstellt, bereitstellt.

[Android.Runtime.Register("onStartCommand", "(Landroid/content/Intent;II)I", "GetOnStartCommand_Landroid_content_Intent_IIHandler")]
public virtual Android.App.StartCommandResult OnStartCommand (Android.Content.Intent? intent, Android.App.StartCommandFlags flags, int startId);
[<Android.Runtime.Register("onStartCommand", "(Landroid/content/Intent;II)I", "GetOnStartCommand_Landroid_content_Intent_IIHandler")>]
abstract member OnStartCommand : Android.Content.Intent * Android.App.StartCommandFlags * int -> Android.App.StartCommandResult
override this.OnStartCommand : Android.Content.Intent * Android.App.StartCommandFlags * int -> Android.App.StartCommandResult

Parameter

intent
Intent

Die Absicht, die für android.content.Context#startServiceangegeben angegeben wird. Dies kann NULL sein, wenn der Dienst neu gestartet wird, nachdem sein Prozess abgelaufen ist und zuvor alles mit Ausnahme #START_STICKY_COMPATIBILITYzurückgegeben wurde.

flags
StartCommandFlags

Zusätzliche Daten zu dieser Startanforderung.

startId
Int32

Eine eindeutige ganze Zahl, die diese spezifische Anforderung zum Starten darstellt. Verwendung mit #stopSelfResult(int).

Gibt zurück

Der Rückgabewert gibt an, welche Semantik das System für den aktuellen Startstatus des Diensts verwenden soll. Es kann eine der Konstanten sein, die den #START_CONTINUATION_MASK Bits zugeordnet sind.

Attribute

Hinweise

Wird vom System jedes Mal aufgerufen, wenn ein Client den Dienst explizit startet, indem er aufruft android.content.Context#startService, die angegebenen Argumente und ein eindeutiges ganzzahliges Token, das die Startanforderung darstellt, bereitstellt. Rufen Sie diese Methode nicht direkt auf.

Aus Gründen der Abwärtskompatibilität ruft #onStart die Standardimplementierung entweder oder auf und gibt diese #START_STICKY#START_STICKY_COMPATIBILITYzurück.

<p class="caution">Beachten Sie, dass das System dies im Standard Thread Ihres Diensts aufruft. Der Standard Thread eines Diensts ist derselbe Thread, in dem Benutzeroberflächenvorgänge für Aktivitäten ausgeführt werden, die im gleichen Prozess ausgeführt werden. Sie sollten immer vermeiden, dass die Ereignisschleife des Standard Threads blockiert wird. Wenn Sie Vorgänge mit langer Ausführungsdauer, Netzwerkaufrufe oder E/A für schwere Datenträger ausführen, sollten Sie einen neuen Thread starten oder verwenden android.os.AsyncTask.

Java-Dokumentation für android.app.Service.onStartCommand(android.content.Intent, int, int).

Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In der Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

Weitere Informationen