Sobes.tech
Junior

Kā pieslēgt BroadcastReceiver, lai saņemtu ziņojumus?

sobes.tech AI

Atbilde no AI

Ir divi veidi:

  1. Statiski manifestā:

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

    — Tiek izveidots, palaižot lietotni, pat ja tā nav aktīva. — Mazāk elastīgs, bet uzticams sistēmas notikumiem.

  2. Dinamiski kodā:

    // Aktivitātē vai pakalpojumā
    IntentFilter filter = new IntentFilter("com.example.MY_ACTION");
    MyBroadcastReceiver receiver = new MyBroadcastReceiver();
    registerReceiver(receiver, filter);
    
    // Neaizmirstiet atcelt reģistrāciju, ja nepieciešams
    // unregisterReceiver(receiver);
    

    — Izveidots un reģistrēts izpildes laikā. — Elastīgāks, piemērots notikumiem lietotnes iekšienē. — Nepieciešams manuāli atcelt reģistrāciju, lai novērstu atmiņas noplūdi.