Интервал обновления местоположения у провайдера Fused
Я сталкиваюсь с одной проблемой. Я использую Fused Location Provider, и в документации он пишет, что когда мы используем высокий приоритет, мы будем получать обновления каждые 5 секунд, но я просмотрел некоторый учебник, и этот парень написал эту функцию
protected void createLocationRequest(){
mLocationRequest=new LocationRequest();
mLocationRequest.setInterval(INTERVAL);
mLocationRequest.setFastestInterval(FASTEST_INTERVAL);
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
}
Этот ИНТЕРВАЛ составляет 10 секунд. Означает ли это, что я буду получать обновления каждые 10 секунд или 5 секунд (как он пишет в документах за использование высокого приоритета)? Заранее спасибо.
1 ответ
Интервал 10 секунд: Вы будете получать обновления местоположения примерно каждые 10 секунд. Но это приблизительно, это может дать местоположение меньше или больше чем 10 секунд.
самый быстрый интервал: это значение должно быть меньше значения интервала. Хорошо, мы знаем, что обновления местоположения придут к нам примерно через 10 секунд (более или менее). здесь самое быстрое средство, я не хочу получать обновления местоположения ниже этого значения (самый быстрый интервал)
Предположим, что у вас есть параметры ниже
- Интервал: 10 секунд
- Самый быстрый интервал: 5 секунд
И возможный результат может быть как ниже (предположение)
01:00:00 (запрошено)
01:00:12 (обновление местоположения, 12 секунд)
01:00:22 (обновление местоположения, 10 секунд)
01:00:30 (обновление местоположения, 8 секунд)
01:00:38 (обновление местоположения, 8 секунд)
01:00:46 (обновление местоположения, 8 секунд)
01:00:52 (обновление местоположения, 6 секунд)
01:00:59 (обновление местоположения, 7 секунд)
...
Результат: вы получили обновления местоположения около 10 секунд и более 5 секунд