Sobes.tech
Junior

Ako pripojiť BroadcastReceiver na príjem správ?

sobes.tech AI

Odpoveď od AI

Existujú dva spôsoby:

  1. Staticky v manifeste:

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

    — Vytvára sa pri spustení aplikácie, aj keď nie je aktívna. — Menej flexibilné, ale spoľahlivé pre systémové udalosti.

  2. Dynamicky v kóde:

    // V aktivite alebo službe
    IntentFilter filter = new IntentFilter("com.example.MY_ACTION");
    MyBroadcastReceiver receiver = new MyBroadcastReceiver();
    registerReceiver(receiver, filter);
    
    // Nezabudnite odregistrovať, ak je to potrebné
    // unregisterReceiver(receiver);
    

    — Vytvára sa a registruje počas behu. — Flexibilnejšie, vhodné pre udalosti vnútri aplikácie. — Je potrebné manuálne odregistrovať, aby sa predišlo únikom pamäti.