как я могу оповестить о текущей активности от приемника вещания? - PullRequest
22 голосов
/ 26 июня 2010

У меня есть активность, требуется ответ на событие трансляции.Поскольку активность не может быть одновременно получателем вещания, я сделал ее получателем.

Мой вопрос: как я могу уведомить активность от получателя вещания?Я считаю, что это обычная ситуация, так есть ли шаблон для этого?

1 Ответ

38 голосов
/ 26 июня 2010

Трансляция является уведомлением.:) Если вы хотите сказать, запускать действие или услугу и т. Д. На основе полученной трансляции, то вам нужен автономный приемник трансляции, и вы помещаете это в свой файл манифеста.Однако, если вы хотите, чтобы ваша активность отвечала на широковещательные рассылки, вы создаете экземпляр широковещательного приемника в своей активности и регистрируете его там.Таким образом, таким образом создается экземпляр получателя при создании класса (это также можно сделать в onCreate).Затем в onResume / onPause я обрабатываю регистрацию и отмену регистрации получателя.Затем в методе onReceive получателя я делаю все необходимое, чтобы действие реагировало так, как я хочу, когда оно получает трансляцию.

...