Sobes.tech
Junior — Middle

Hogyan valósítható meg a BroadcastReceiver indítása Android alkalmazásban?

sobes.tech MI

Válasz az MI-től

Az Android BroadcastReceiver-rel való munka megkezdéséhez két fő módszer létezik:

  1. Statikus regisztráció a manifestben — hozzáadva az AndroidManifest.xml-hez. Ez a fogadó akkor is kap broadcast üzeneteket, ha az alkalmazás nincs futásban.
<receiver android:name=".MyBroadcastReceiver">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>
  1. Dinamikus regisztráció kódban — az aktivitásban vagy szolgáltatásban a registerReceiver() segítségével regisztrálva. Csak akkor működik, amíg az alkalmazás aktív.
BroadcastReceiver receiver = new MyBroadcastReceiver();
IntentFilter filter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(receiver, filter);

A módszer kiválasztása a feladattól függ: rendszer eseményekhez, amelyeket mindig figyelni kell — statikus regisztráció; ideiglenes eseményekhez — dinamikus regisztráció.