Junior — Middle
Мо метавонед намудҳои гуногуни Broadcast Receiver-ро, ки дар Android истифода мешаванд, номбар кунед?
sobes.tech AI
Ҷавоб аз AI
Android-да екі негізгі Broadcast Receiver түрі бар:
-
Статикалық (Static) Broadcast Receiver-лер — олар қолданбаның манифестінде (
AndroidManifest.xml) жарияланады. Олар қолданба іске қосылмаса да кең таралған хабарламаларды қабылдай алады. Алайда, Android 8.0 (API 26) бастап, олардың кейбір жүйелік оқиғалар үшін қолданылуы шектелген, ресурстарды үнемдеу үшін. -
Динамикалық (Dynamic) Broadcast Receiver-лер — олар бағдарламалық түрде кодта тіркеледі (әдетте
onCreateнемесеonResumeәдістерінде)registerReceiver()көмегімен. Олар тек қолданба немесе компонент іске қосылған кезде ғана белсенді.
Сонымен қатар, оларды бөлуге болады:
- Ordered Broadcast Receivers — хабарламаларды ретімен алады, әрі қажет болса, әрі қарай таратуын тоқтата алады.
- Local Broadcast Receivers — бір қолданба ішінде жұмыс істейді, сыртқа шықпайды, бұл қауіпсіздік пен өнімділікті арттырады (
LocalBroadcastManager).
Динамикалық тіркеудің мысалы:
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// оқиғаны өңдеу
}
};
registerReceiver(receiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));