Sobes.tech
Junior — Middle

Android ilovasida BroadcastReceiver boshlanishini qanday amalga oshirish mumkin?

sobes.tech AI

AIdan javob

Androidda BroadcastReceiver bilan ishlashni boshlash uchun ikkita asosiy usul mavjud:

  1. Statik ro'yxatga olish manifestdaAndroidManifest.xml ga qo'shiladi. Bu receiver, ilova ishga tushmagan bo'lsa ham, broadcast xabarlarni oladi.
<receiver android:name=".MyBroadcastReceiver">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>
  1. Dinamik ro'yxatga olish koddaregisterReceiver() yordamida faoliyat yoki xizmatda ro'yxatdan o'tkaziladi. Faqat ilova faol bo'lsa ishlaydi.
BroadcastReceiver receiver = new MyBroadcastReceiver();
IntentFilter filter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(receiver, filter);

Usul tanlovi vazifaga bog'liq: doim ushlash kerak bo'lgan tizim voqealari uchun — statik ro'yxatga olish; vaqtinchalik voqealar uchun — dinamik ro'yxatga olish.