Sobes.tech
Junior

Wie verbindet man einen BroadcastReceiver, um Nachrichten zu empfangen?

sobes.tech KI

Antwort von AI

Es gibt zwei Möglichkeiten:

  1. Statisch im Manifest:

    <application ...>
        <receiver android:name=".MyBroadcastReceiver">
            <intent-filter>
                <action android:name="com.example.MY_ACTION" />
                </intent-filter>
        </receiver>
    </application>
    

    — Wird beim Start der Anwendung erstellt, auch wenn sie nicht aktiv ist. — Weniger flexibel, aber zuverlässig für Systemereignisse.

  2. Dynamisch im Code:

    // In einer Aktivität oder einem Service
    IntentFilter filter = new IntentFilter("com.example.MY_ACTION");
    MyBroadcastReceiver receiver = new MyBroadcastReceiver();
    registerReceiver(receiver, filter);
    
    // Nicht vergessen, bei Bedarf abzumelden
    // unregisterReceiver(receiver);
    

    — Wird zur Laufzeit erstellt und registriert. — Flexibler, geeignet für Ereignisse innerhalb der Anwendung. — Manuelles Abmelden ist notwendig, um Speicherlecks zu vermeiden.