Sobes.tech
Junior

Mesajları almaq üçün BroadcastReceiver necə qoşulur?

sobes.tech Süni İntellekt

AI-dan cavab

İki üsul mövcuddur:

  1. Manifestdə statik olaraq:

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

    — Tətbiq başladıqda yaradılır, hətta aktiv olmasa belə. — Daha az elastik, lakin sistem hadisələri üçün etibarlıdır.

  2. Kodda dinamik olaraq:

    // Aktivlik və ya xidmətdə
    IntentFilter filter = new IntentFilter("com.example.MY_ACTION");
    MyBroadcastReceiver receiver = new MyBroadcastReceiver();
    registerReceiver(receiver, filter);
    
    // Lazım gələrsə qeydiyyatı ləğv etməyi unutmayın
    // unregisterReceiver(receiver);
    

    — İcra zamanı yaradılır və qeydiyyata alınır. — Daha elastikdir, tətbiqin içindəki hadisələr üçün uyğundur. — Yaddaş sızmalarını qarşısını almaq üçün əl ilə qeydiyyatı ləğv etmək lazımdır.