В моем приложении пользователь может запустить службу отслеживания, которая использует LocationManager для запроса местоположения каждые X секунд.Спящий режим Android и LocationManager
Пользователь сообщил, что на своем устройстве (Galaxy Tab S2), когда устройство переходит в спящий режим, отслеживание останавливается через несколько минут.
У меня есть два вопроса:
- есть способ поместить мое устройство находится в спящем режиме (для тестирования)?
- Каким будет влияние частичной блокировки слежения? На моем устройстве процессор все равно не спит, поэтому я думаю, что это не повлияет, я прав? Или мне нужно использовать AlarmManager, чтобы вручную получить местоположение каждые х секунд (что, кстати, должно быть imho вариантом LocationManager)?
Насколько я знаю, менеджер местоположений приобретает сам wakelock, когда он запрашивается для обновления местоположения, остановка отслеживания местоположения может быть связана с тем, что ваша служба была убита системой Android по какой-то причине. Вы обслуживаете сервис, останавливаясь должным образом, например, снова начинаете службу или с помощью диспетчера аварийных сообщений, чтобы сохранить свое обслуживание, если оно было убито системой Android. –
Ну, мой сервис липкий, и я уже видел, что он убит и автоматически перезапущен. Вы уверены, что LocationManager использует блокировки от бодрствования? Из того, что я нашел в Интернете, это не так. –