Ответ 1
Трансляция - это уведомление.:) Если вы хотите сказать, начать работу или услугу и т.д. На основе полученной широковещательной передачи, вам нужен автономный широковещательный приемник, и вы поместите его в свой файл манифеста. Однако, если вы хотите, чтобы ваша деятельность сама отвечала на трансляции, вы создаете экземпляр широковещательного приемника в своей деятельности и регистрируете его там.
Я использую шаблон:
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 я обрабатываю регистрацию и регистрацию получателя. Затем в методе reciever onReceive
я делаю все, что необходимо, чтобы заставить реакцию реагировать так, как я хочу, когда она получает широковещательную передачу.