Sobes.tech
Junior — Middle

¿Cómo implementar un componente Broadcast Receiver que funcione solo dentro de la aplicación actual?

sobes.tech AI

Respuesta de la IA

Para que el Broadcast Receiver funcione solo dentro de la aplicación actual, debe registrarse dinámicamente mediante código, y no en el manifiesto. Con el registro dinámico usando registerReceiver(), el receptor solo recibirá los mensajes broadcast enviados dentro de la aplicación.

Ejemplo:

BroadcastReceiver receiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        // procesamiento del evento
    }
};

// Registro en una Activity o Service
IntentFilter filter = new IntentFilter("com.example.MY_ACTION");
registerReceiver(receiver, filter);

// No olvides desregistrar
unregisterReceiver(receiver);

De esta manera, limitas el alcance del Broadcast Receiver a la aplicación actual, ya que otros sistemas o aplicaciones no podrán enviar estos mensajes broadcast locales.