Проверьте возраст местоположения пользователя в Mapkit - точность GPS для MapKit User Location значительно лучше, чем в CLLocationManager?

В помещении на iPhone 4. WiFi отключен

Запуск образца LocateMe SDK или моего собственного кода в течение 30-60 секунд дает горизонтальную точность 2294 метра. Довольно неточно, но разумно для триангуляции вышек сотовой связи. Глядя на другие приложения, которые выполняют обратное геокодирование или такие вещи, как Foursquare, обнаруживается аналогичное отсутствие точности.

Однако, если я переключаюсь на другое представление в моем приложении, которое использует Mapkit, и проверяю / отображаю местоположение пользователя, на котором оно находится. Я имею в виду уровень дома, точный на карте, который я бы связал с местоположением уровня WiFi или сильным показанием GPS.

Поэтому я решил, что Mapkit, вероятно, полагается на чтение из кэшированного местоположения, которое было получено при включении WiFi на моем устройстве. Я отключил службы определения местоположения в настройках. Перезапустил приложение Карта переместил карту из моего текущего местоположения. Выход Повторно включенные службы определения местоположения. Снова откройте приложение «Карта» - бинго вернитесь назад, прочитав сильное местоположение.

Насколько я знаю, служба определения местоположения - это одноуровневый системный уровень, что означает, что с MapKit передаются те же данные, что и с моим экземпляром CLLocationManager. Единственное, о чем я могу думать, - это то, что местоположение более широко кэшируется в MapKit, а отключение служб определения местоположения не очищает его кеш, даже когда запущен map.app.

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

Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос