Запустите BroadcastReceiver в фоновом режиме, а когда устройство уже отключено? - PullRequest
0 голосов
/ 12 февраля 2011

У меня есть простая BroadcastReceiver, настроенная на что-то, когда пользователь получает входящее SMS. Но мне нужно, чтобы он работал в фоновом режиме и когда устройство спит. Так я бы использовал Service, который запускает BroadcastReceiver? Если так, может кто-нибудь дать мне какой-нибудь псевдокод? И как это будет работать, если устройство спит?

1 Ответ

8 голосов
/ 12 февраля 2011

У меня есть простой BroadcastReceiver, настроенный на что-то, когда пользователь получает входящее SMS.

ОК.

Но мне нужно, чтобы он работал в фоновом режиме и когда устройство спит.

Не совсем.

Так я бы использовал Службу, которая запускает BroadcastReceiver?

Нет.Ваш BroadcastReceiver должен быть в манифесте, поэтому он может быть вызван независимо от того, запущен ли какой-либо другой код.Вот почему я говорю «не совсем» для «запуска в фоновом режиме» - вы НЕ ХОТИТЕ, чтобы код работал постоянно в фоновом режиме.Скорее, вы хотите иметь возможность получать широковещательные сообщения в любой момент, и для этого нужно поместить получателя в манифест.

Если так, может кто-нибудь дать мне какой-нибудь псевдокод?*

https://github.com/commonsguy/cw-advandroid/tree/master/SMS/Monitor

А как это будет работать, если устройство спит?

Не будет.Однако входящее SMS, как и входящий телефонный звонок, разбудит устройство.

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