Kokiais atvejais draudžiama registruoti Broadcast Receiver Android manifeste?
sobes.tech AI
Atsakymas iš AI
„Android“ manifest'e registruoti Broadcast Receiver nėra leidžiama šiais atvejais:
-
Dinaminiams arba privačioms įvykiams: Jei imtuvas turi reaguoti tik į įvykius, vykstančius programos viduje, arba į įvykius, kurie neturi būti prieinami kitoms programoms, geriau jį registruoti programiškai (dinamiškai) naudojant
registerReceiver()kode. -
Kai kuriems sisteminiams įvykiams naujose „Android“ versijose: Nuo „Android 8.0“ (API 26) daugelis sisteminių transliacijų (pavyzdžiui,
ACTION_NEW_PICTURE,ACTION_NEW_SMS) negali būti registruojamos manifest'e, siekiant sumažinti sistemos apkrovą ir padidinti saugumą. Tokiu atveju imtuvus reikia registruoti dinamiškai. -
Jei reikalinga gyvenimo ciklo kontrolė: Registracija manifest'e leidžia imtuvui būti nuolat aktyviam, kas gali sukelti nereikalingą išteklių naudojimą. Jei norite, kad imtuvas veiktų tik tam tikru metu (pavyzdžiui, kai aktyvumas yra aktyvus), jį reikia registruoti dinamiškai.
Todėl registracija manifest'e nėra leidžiama arba nėra efektyvi įvykiams, kurie turi būti apdorojami tik aktyvios programos būsenos metu arba sisteminiams įvykiams, uždraustiems statinei registracijai naujose „Android“ versijose.