Когда приложение запрашивает местоположение устройства, оно может либо дождаться ответа на запрос, либо, используя активные прослушиватели местоположения, получить оперативное обновление местоположения. Это было доступно (без ограничений) в Android 9 и более ранних версиях и предоставлялось, когда приложение указывало только частоту обновления активного местоположения, оставляя пассивную скорость пустым. (Пассивные прослушиватели местоположения не получают случайные обновления местоположения, поскольку они не указывают частоту обновления местоположения.)
Начиная с Android 10, чтобы получать оппортунистические обновления местоположения, разработчики должны указать, что им нужны пассивные обновления местоположения из класса FusedLocationProviderClient .
Поставщик объединенного местоположения
Приложения могут указать скорость, с которой они будут получать оппортунистические обновления местоположения из класса FusedLocationProviderClient , двумя способами.
- Укажите значение в методе
setFastestInterval, которое меньше значения параметраsetInterval. (Используйте значение 0 мс или больше.) - Пусть значение будет установлено автоматически, оставив
setFastestIntervalнеуказанным.
Влияние
Если вы не укажете значение для setFastestInterval , ваше приложение может столкнуться со значительным сокращением количества доставляемых ему обновлений местоположения.
Выполнение
Для реализации этой функции не нужно ничего делать, кроме использования предложенных значений для метода setFastestInterval класса FusedLocationProviderClient .