Sobes.tech
Junior

Kako povezati BroadcastReceiver za primanje poruka?

sobes.tech АИ

Одговор од АИ

Postoje dva načina:

  1. Statistički u manifestu:

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

    — Kreira se pri pokretanju aplikacije, čak i ako nije aktivna. — Manje fleksibilno, ali pouzdano za sistemske događaje.

  2. Dinamički u kodu:

    // U aktivnosti ili servisu
    IntentFilter filter = new IntentFilter("com.example.MY_ACTION");
    MyBroadcastReceiver receiver = new MyBroadcastReceiver();
    registerReceiver(receiver, filter);
    
    // Ne zaboravite da odjavite registraciju ako je potrebno
    // unregisterReceiver(receiver);
    

    — Kreira se i registruje tokom izvršavanja. — Fleksibilnije, pogodno za događaje unutar aplikacije. — Potrebno je ručno odjaviti registraciju da bi se izbegli curenja memorije.