У меня есть приложение, которое запускает фоновую службу для отслеживания местоположения GPS и сравнения его со списком местоположений. Когда он находит совпадение, он отправляет широковещательную рассылку, чтобы вызвать активность переднего плана, которая затем отображает информацию о местоположении. GPS-отслеживание использует возможности GPS в сервисах Google Play и требует обновления примерно каждые 20 секунд.
Большую часть времени пользователь не знает о приложении и может делать другие вещи. Пользовательский интерфейс переднего плана, вероятно, не будет запускаться чаще, чем каждые 2 минуты, и может длиться до 20 минут или более. В остальное время важно, чтобы приложение могло продолжать получать данные о местоположении GPS, не прерывая других действий пользователя.
Я пытаюсь понять влияние новых функций Doze и Standby в Android 8. Из последних документов мне кажется, что они больше не будут работать, а фоновая служба не будет получать свои обновления (или получит только несколько обновлений). каждый час, что бесполезно). Может ли кто-нибудь сказать мне, правильно ли это?
Кажется, они говорят, что я должен использовать службу переднего плана, но в другом месте они говорят, что службы переднего плана следует использовать только там, где требуется некоторое взаимодействие с пользователем. Похоже на ловушку 22. Подходит ли служба переднего плана для чего-то подобного?
Документы также относятся к белому списку, но я не понимаю, что это на самом деле делает. Могу ли я внести свое приложение в белый список, чтобы оно продолжало работать?
Может ли кто-нибудь помочь запутавшемуся разработчику-любителю?
Крис С