PhoneStateListener onCellLocationChanged не вызывается в фоновом режиме - PullRequest
1 голос
/ 08 июля 2011

Я реализовал sticky-сервис, который работает в фоновом режиме. Я хочу, чтобы мое приложение обрабатывало изменения gsm-Cell. Но мой PhoneStateListener не вызывается надежно. Иногда он просто вызывается после нажатия кнопки, и телефон выходит из спящего режима. Как я могу заставить телефон надежно распознавать gsm-Locationchanges в фоновом режиме? Почему это иногда работает, а иногда нет?

1 Ответ

0 голосов
/ 31 августа 2011

Поместите PhoneStateListener в сервис и затем поместите запросы на прослушивание в onStartCommand. Если служба перестает прослушивать изменения, попробуйте создать Timer, который вызывает класс TimerTask внутри службы, который содержит запросы на прослушивание, и делать вызов Timer для класса TimerTask каждые X миллисекунд. Это сработало для меня.

...