Junior — Middle
¿Puede nombrar los diferentes tipos de Broadcast Receiver utilizados en Android?
sobes.tech AI
Respuesta de la IA
En Android, existen dos tipos principales de Broadcast Receiver:
-
Receptores de Difusión Estáticos (Static) — se declaran en el manifiesto de la aplicación (
AndroidManifest.xml). Pueden recibir mensajes broadcast incluso cuando la aplicación no está en ejecución. Sin embargo, desde Android 8.0 (API 26), su uso está restringido para ciertos eventos del sistema para ahorrar recursos. -
Receptores de Difusión Dinámicos (Dynamic) — se registran programáticamente en el código (generalmente en
onCreateoonResumede la actividad) usandoregisterReceiver(). Están activos solo mientras la aplicación o componente esté en ejecución y registrado.
También se pueden distinguir:
- Receptores de Difusión Ordenada (Ordered Broadcast Receivers) — reciben los mensajes en secuencia, con la posibilidad de detener la transmisión posterior.
- Receptores de Difusión Local (Local Broadcast Receivers) — funcionan dentro de una misma aplicación, sin salir de ella, lo que aumenta la seguridad y el rendimiento (se usa
LocalBroadcastManager).
Ejemplo de registro dinámico:
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// procesamiento del evento
}
};
registerReceiver(receiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));