Junior — Middle
Puoi nominare i diversi tipi di Broadcast Receiver utilizzati in Android?
sobes.tech AI
Risposta dell'AI
In Android, ci sono due principali tipi di Broadcast Receiver:
-
Broadcast Receiver Statici (Static) — dichiarati nel manifesto dell'app (
AndroidManifest.xml). Possono ricevere messaggi broadcast anche quando l'app non è in esecuzione. Tuttavia, a partire da Android 8.0 (API 26), il loro uso è limitato per alcuni eventi di sistema per risparmiare risorse. -
Broadcast Receiver Dinamici (Dynamic) — registrati programmaticamente nel codice (solitamente in
onCreateoonResumedell'attività) usandoregisterReceiver(). Sono attivi solo mentre l'app o il componente sono in esecuzione e registrati.
Puoi anche distinguere:
- Ordered Broadcast Receiver — ricevono i messaggi in sequenza, con la possibilità di interrompere la trasmissione.
- Local Broadcast Receiver — funzionano all'interno di una stessa applicazione, senza uscire da essa, aumentando sicurezza e prestazioni (
LocalBroadcastManager).
Esempio di registrazione dinamica:
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// elaborazione evento
}
};
registerReceiver(receiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));