Junior — Middle
Können Sie die verschiedenen Arten von Broadcast Receivern nennen, die in Android verwendet werden?
sobes.tech KI
Antwort von AI
Auf Android gibt es zwei Haupttypen von Broadcast Receiver:
-
Statische Broadcast Receiver — werden in der Manifestdatei (
AndroidManifest.xml) deklariert. Sie können Broadcast-Nachrichten empfangen, auch wenn die Anwendung nicht läuft. Ab Android 8.0 (API 26) ist ihre Nutzung für bestimmte Systemereignisse eingeschränkt, um Ressourcen zu sparen. -
Dynamische Broadcast Receiver — werden programmatisch im Code registriert (meist in
onCreateoderonResumeder Aktivität) mitregisterReceiver(). Sie sind nur aktiv, solange die Anwendung oder Komponente läuft und registriert ist.
Es kann auch unterschieden werden:
- Ordered Broadcast Receiver — empfangen Nachrichten in Reihenfolge, mit der Möglichkeit, die Weiterleitung zu unterbrechen.
- Lokale Broadcast Receiver — arbeiten innerhalb einer Anwendung, ohne sie zu verlassen, was die Sicherheit und Leistung erhöht (
LocalBroadcastManager).
Beispiel für eine dynamische Registrierung:
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// Ereignisverarbeitung
}
};
registerReceiver(receiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));