Junior — Middle
Wie implementiert man den Start eines BroadcastReceiver in einer Android-Anwendung?
sobes.tech KI
Antwort von AI
Um den Einstieg in die Arbeit mit BroadcastReceiver in Android zu erleichtern, gibt es zwei Hauptmethoden:
- Statischer Registrierung im Manifest — wird in
AndroidManifest.xmlhinzugefügt. Dieser Empfänger erhält Broadcast-Nachrichten, auch wenn die Anwendung nicht läuft.
<receiver android:name=".MyBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
- Dynamische Registrierung im Code — wird in einer Aktivität oder einem Service mit
registerReceiver()registriert. Funktioniert nur, solange die Anwendung aktiv ist.
BroadcastReceiver receiver = new MyBroadcastReceiver();
IntentFilter filter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(receiver, filter);
Die Wahl der Methode hängt von der Aufgabe ab: Für Systemereignisse, die immer abgefangen werden sollen — statische Registrierung; für temporäre Ereignisse — dynamische Registrierung.