Отмена регистрации BroadcastReceiver от неактивности на Android - PullRequest
0 голосов
/ 22 февраля 2012

У меня есть библиотека Android, для которой требуется BroadcastReceiver, который я регистрирую в конструкторе объектов.Он выполняет действия над этим объектом на основе изменения состояния Интернета.Но я сталкиваюсь с сообщениями об ошибках о пропущенном получателе, потому что я не вызываю незарегистрированный.

Как и где я могу вызвать незарегистрированный, когда у меня нет информации о том, когда действие закончится?Так как я предоставляю только класс, который будет создан экземпляром Activity, то нет никаких onPause, методов onClose.

Ответы [ 2 ]

1 голос
/ 22 февраля 2012

Вы можете попытаться сохранить ваш приемник в статике. Я думаю, что получить эту ошибку, только если вы зарегистрируете один и тот же получатель дважды.

Если это не удается, вы можете также попытаться вызвать context.getApplicationContext (). RegisterBroadcastReceiver () вместо использования контекста действия.

0 голосов
/ 22 февраля 2012

Разве вы не должны расширять Activity, правильно работать с рабочим процессом Android, а затем предлагать пользователям расширить вашу активность?

Это всего лишь предложение, но оно определенно решит проблему, которую вы описываете, поскольку вы можете зарегистрировать приемник на onCreate() и отменить регистрацию на onDestroy().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...