Junior — Middle
¿Puedes explicar qué es un componente BroadcastReceiver y cómo funciona en Android?
sobes.tech AI
Respuesta de la IA
BroadcastReceiver es un componente de Android que permite a una aplicación recibir y reaccionar a mensajes broadcast (difundidos) del sistema u otras aplicaciones.
Cómo funciona BroadcastReceiver:
- Se registra para ciertos eventos (por ejemplo, conexión a la red, recepción de SMS, carga del dispositivo).
- Cuando ocurre un evento, el sistema envía el broadcast correspondiente.
- Los BroadcastReceivers registrados reciben este broadcast y ejecutan el código asignado.
Normalmente, BroadcastReceiver se usa para:
- Responder a eventos del sistema sin iniciar la aplicación constantemente.
- Iniciar tareas en segundo plano según un horario o cuando se cumplen ciertas condiciones.
Ejemplo de un BroadcastReceiver simple que responde a la encendida del dispositivo:
public class BootReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
// Acciones después de que el dispositivo se inicie
}
}
}
Para registrarlo, se puede usar el manifiesto o hacerlo dinámicamente en el código. Es importante recordar que desde Android 8.0 (Oreo), hay restricciones en el trabajo en segundo plano para BroadcastReceiver, y para ciertos eventos, es necesario usar otros mecanismos, como JobScheduler.