У меня есть служба переднего плана, которая должна получить одно обновление местоположения.
Он запускается определенной трансляцией и при запуске просто выполняет запрос на нашем бэкэнде. Когда он получает другую широковещательную рассылку, он запрашивает обновление местоположения (один раз), выполняет еще один внутренний запрос, а затем останавливается.
Изменить: чтобы уточнить, служба сама выполняет обновления местоположения и внутренние запросы. В этом отношении оно не зависит от основного приложения.
Это хорошо работает на Lollipop и Marshmallow, как когда телефон не спит, так и в режиме Doze. Но по какой-то причине на Android O служба никогда не получает обновления местоположения в режиме ожидания. Сеть работает нормально, так как ее первый запрос проходит в обеих ситуациях. Кроме того, если я разбужу телефон во время работы запроса местоположения, он получит обновление. То же самое, если я помещу его в окно обслуживания.
Android O вводит некоторые ограничения на фоновое местоположение, но упоминаний на странице, поведение приложения на переднем плане (видимое приложение или запущенная служба на переднем плане) должно быть сохранено и похоже на предыдущие версии Android.
Это проблема в предварительной версии для разработчиков или ограничение, которое я пропустил?