2013-08-29 4 views
2

В настоящее время я работаю над приложением, которое использует CLLocationManager с наименьшей точностью (kCLLocationAccuracyThreeKilometers). Однако раз в пару минут мне нужно получить точное местоположение пользователя, поэтому я устанавливаю точность kCLLocationAccuracyBest, когда истекает время таймера.Обнаруживать, когда достигается оптимальная точность определения местоположения с помощью CLLocationManager

Очевидно, CLLocationManager начинает обновление местоположения, переходя из неточного местоположения в более точные местоположения по этапам. Однако проблема заключается в том, что я не знаю, как определить, когда была достигнута оптимальная точность определения местоположения, поэтому я никогда не знаю, когда у меня есть лучшее место для работы.

Кто-нибудь знает решение этой проблемы? Было бы весьма признательно.

ответ

7

В CLLocationManagerDelegate метод locationManager:didUpdateLocations: посмотреть на horizontalAccuracyCLLocation. Это даст вам радиус в метрах.

Как указано в документации:

Радиус неопределенности местоположения, в метрах. (только чтение)

Менеджер место будет продолжать пытаться в получении максимальной точности, как это возможно, так что вам придется решить, когда местоположение достаточно точно.

Смежные вопросы