Junior — Middle
Androidda ishlatiladigan turli Broadcast Receiver turlarini nomlashingiz mumkinmi?
sobes.tech AI
AIdan javob
Androidda ikkita asosiy Broadcast Receiver turi mavjud:
-
Statik (Static) Broadcast Receiverlar — ular ilovaning manifest faylida (
AndroidManifest.xml) e'lon qilinadi. Ular ilova ishga tushmagan bo'lsa ham keng tarqaladigan xabarlarni qabul qilishlari mumkin. Biroq, Android 8.0 (API 26) dan boshlab, ularning ba'zi tizim voqealari uchun ishlatilishi cheklangan, resurslarni tejash uchun. -
Dinamik (Dynamic) Broadcast Receiverlar — kodda dasturiy ravishda ro'yxatdan o'tkaziladi (odatda
onCreateyokionResumeda)registerReceiver()yordamida. Ular faqat ilova yoki komponent ishga tushgan va ro'yxatdan o'tgan bo'lsa faol bo'ladi.
Shuningdek, quyidagilar ajratiladi:
- Ordered Broadcast Receiverlar — xabarlarni ketma-ket oladi, va agar kerak bo'lsa, uzatishni to'xtatishi mumkin.
- Local Broadcast Receiverlar — faqat bir ilovada ishlaydi, undan tashqariga chiqmaydi, bu xavfsizlik va samaradorlikni oshiradi (
LocalBroadcastManager).
Dinamik ro'yxatdan o'tkazish misoli:
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// voqeani qayta ishlash
}
};
registerReceiver(receiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));