La transmisión es la notificación. :) Si quiere decir, iniciar una actividad o un servicio, etc., basado en una transmisión recibida, entonces necesita un receptor de difusión independiente y lo coloca en su archivo de manifiesto. Sin embargo, si desea que su actividad responda a las transmisiones, cree una instancia de un receptor de difusión en su actividad y regístrelo allí.
El patrón de uso es:
public class MyActivity extends Activity {
private BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(...) {
...
}
});
public void onResume() {
super.onResume();
IntentFilter filter = new IntentFilter();
filter.addAction(BROADCAST_ACTION);
this.registerReceiver(this.receiver, filter);
}
public void onPause() {
super.onPause();
this.unregisterReceiver(this.receiver);
}
}
Así, de esta manera se crea una instancia del receptor cuando se crea la clase (también podría hacer en onCreate). Luego, en el comando onResume/onPause, manejo el registro y anulación del registro del receptor. Luego, en el método onReceive
del receptor, hago lo que sea necesario para que la actividad reaccione de la manera que quiero cuando reciba la transmisión.
Entonces, ¿tiene que definir el receptor dentro de la actividad? ¿Qué pasa si quieres el comportamiento en tu aplicación? – shim
Más aclaración: 'String BROADCAST_ACTION =" android.net.conn.CONNECTIVITY_CHANGE ";' Además, si desea un comportamiento en toda la aplicación, ¿no podría tomar el código de toma en la clase que extiende 'Aplicación'? – Sunshinator