Junior — Middle
Կարող եք նշել Android-ում օգտագործվող տարբեր Broadcast Receiver տեսակները:
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));