Передача - уведомление. :) Если вы хотите сказать, начать работу или услугу и т. Д. На основе полученной широковещательной передачи, вам нужен автономный широковещательный приемник, и вы поместите его в свой файл манифеста. Однако, если вы хотите, чтобы ваша деятельность реагировала на трансляции, вы создаете экземпляр широковещательного приемника в своей деятельности и регистрируете его там.
Узор я использую:
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);
}
}
Таким образом, этот способ приемник конкретизируется, когда создается класс (может также сделать в OnCreate). Затем в onResume/onPause я обрабатываю регистрацию и регистрацию получателя. Затем в методе приемника onReceive
я делаю все, что необходимо для того, чтобы активность реагировала так, как я хочу, когда он получает трансляцию.
Итак, вы должны определить приемник внутри действия? Что делать, если вам нужно поведение во всем приложении? – shim
Дальнейшие уточнения: 'String BROADCAST_ACTION =" android.net.conn.CONNECTIVITY_CHANGE ";' Кроме того, я хочу, чтобы поведение во всем приложении, вы не могли взять код в классе, расширяющем 'приложение'? – Sunshinator