Junior — Middle
Poți explica ce este un component BroadcastReceiver și cum funcționează în Android?
sobes.tech AI
Răspuns de la AI
BroadcastReceiver este un component Android care permite unei aplicații să primească și să reacționeze la mesaje broadcast (difuzate) de la sistem sau alte aplicații.
Cum funcționează BroadcastReceiver:
- Se înregistrează pentru anumite evenimente (de exemplu, conectarea la rețea, primirea unui SMS, pornirea dispozitivului).
- Când are loc un eveniment, sistemul trimite broadcast-ul corespunzător.
- BroadcastReceiver-urile înregistrate primesc acest broadcast și execută codul atribuit.
De obicei, BroadcastReceiver este folosit pentru:
- Reacționarea la evenimentele sistemului fără a porni aplicația în mod constant.
- Pornirea sarcinilor în fundal conform unui program sau când sunt îndeplinite anumite condiții.
Exemplu de un BroadcastReceiver simplu care reacționează la pornirea dispozitivului:
public class BootReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
// Acțiuni după pornirea dispozitivului
}
}
}
Pentru înregistrare, se poate folosi manifestul sau se poate face dinamic în cod. Este important să rețineți că începând cu Android 8.0 (Oreo), există restricții pentru lucrul în fundal cu BroadcastReceiver, și pentru anumite evenimente trebuie utilizate alte mecanisme, cum ar fi JobScheduler.