Pouvez-vous nommer les différents types de Broadcast Receiver utilisés dans Android?
sobes.tech IA
Réponse de l'IA
Il existe deux principaux types de Broadcast Receiver sur Android:
-
Récepteurs de Diffusion Statique (Static) — déclarés dans le manifeste de l'application (
AndroidManifest.xml). Ils peuvent recevoir des messages broadcast même lorsque l'application n'est pas en cours d'exécution. Cependant, à partir d'Android 8.0 (API 26), leur utilisation est limitée pour certains événements système afin d'économiser des ressources. -
Récepteurs de Diffusion Dynamiques (Dynamic) — enregistrés par programmation dans le code (généralement dans
onCreateouonResumede l'activité) à l'aide deregisterReceiver(). Ils ne sont actifs que tant que l'application ou le composant est en cours d'exécution et enregistré.
On peut également distinguer:
- Récepteurs de Diffusion Ordonnée (Ordered Broadcast Receivers) — reçoivent les messages en séquence, avec la possibilité d'interrompre la transmission suivante.
- Récepteurs de Diffusion Locale (Local Broadcast Receivers) — fonctionnent à l'intérieur d'une même application, sans en sortir, ce qui augmente la sécurité et la performance (utilise
LocalBroadcastManager).
Exemple d'enregistrement dynamique:
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// traitement de l'événement
}
};
registerReceiver(receiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));