In Intent gibt es eine Konstante mit dem Namen ACTION_DOCK_EVENT
Hinzugefügt in API level 5
Broadcast-Aktion: Ein Sticky-Broadcast für Änderungen im physischen Docking-Status des Geräts.
Was meinen Sie mit Docking-Status?
Android-Geräte können an verschiedene Arten von Docking-Geräten angedockt werden. Dazu gehören Auto- oder Heimdocks sowie digitale und analoge Docks. Wenn also ein Dock des Geräts geändert wird, wird die Absicht ACTION_DOCK_EVENT
ausgelöst.
Wenn ein Gerät angedockt ist, kann es in einem von vier verschiedenen Dock-Typen angedockt werden:
ressource hier
was meinen Sie mit Docking-Status?
Docking-Status bedeutet im Allgemeinen, dass Ihr Ladezustand festgelegt ist. Dies kann eine car
, ein home dock
, eine digital
oder ein analog docks
sein. Android-Geräte können an verschiedene Arten von Docks angedockt werden.
Bestimmen Sie den aktuellen Docking-Status
Die dock-state
-Details sind als Extra in einer Kurzsendung der ACTION_DOCK_EVENT
-Aktion enthalten. Da es sich um eine sticky
handelt, müssen Sie keine BroadcastReceiver
registrieren. Sie können einfach registerReceiver()
aufrufen, indem Sie null als Rundfunkempfänger übergeben, wie im nächsten Snippet gezeigt.
IntentFilter ifilter = new IntentFilter(Intent.ACTION_DOCK_EVENT);
Intent dockStatus = context.registerReceiver(null, ifilter);
Die Dock-Status-Details sind als Extra in einer dauerhaften Übertragung der Aktion ACTION_DOCK_EVENT enthalten. Da es klebrig ist, müssen Sie keinen BroadcastReceiver registrieren. Sie können einfach registerReceiver () aufrufen, indem Sie null als Broadcast-Empfänger übergeben, wie im nächsten Snippet gezeigt.
mContext = getApplicationContext();
IntentFilter ifilter = new IntentFilter(Intent.ACTION_DOCK_EVENT);
Intent dockStatus = registerReceiver(null, ifilter);
Sie können den aktuellen Docking-Status aus EXTRA_DOCK_STATE extrahieren:
int dockState = (dockStatus == null ?
Intent.EXTRA_DOCK_STATE_UNDOCKED :
dockStatus.getIntExtra(Intent.EXTRA_DOCK_STATE, -1));
boolean isDocked = dockState != Intent.EXTRA_DOCK_STATE_UNDOCKED;
boolean isCar = dockState == Intent.EXTRA_DOCK_STATE_CAR;
Immer wenn das Gerät angedockt oder abgedockt ist, wird die Aktion ACTION_DOCK_EVENT gesendet. Um Änderungen im Dock-Status des Geräts zu überwachen, registrieren Sie einfach einen Rundfunkempfänger in Ihrem Anwendungsmanifest, wie im folgenden Snippet gezeigt: action Android: name = "Android.intent.action.ACTION_DOCK_EVENT"
Hoffe das hilft.