Sobes.tech
Junior

Hogyan csatlakoztassuk a BroadcastReceiver-t az üzenetek fogadásához?

sobes.tech MI

Válasz az MI-től

Két módszer létezik:

  1. Statikus a manifestben:

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

    — Az alkalmazás indításakor jön létre, még akkor is, ha nem aktív. — Kevésbé rugalmas, de megbízható rendszeres eseményekhez.

  2. Dinamikusan a kódban:

    // Egy aktivitásban vagy szolgáltatásban
    IntentFilter filter = new IntentFilter("com.example.MY_ACTION");
    MyBroadcastReceiver receiver = new MyBroadcastReceiver();
    registerReceiver(receiver, filter);
    
    // Ne felejtsd el lemondani a regisztrációt, ha szükséges
    // unregisterReceiver(receiver);
    

    — Futás közben jön létre és regisztrálódik. — Rugalmasabb, alkalmas az alkalmazáson belüli eseményekhez. — Manuálisan kell lemondani a regisztrációt a memória szivárgás elkerülése érdekében.