Почему геолокация в Мобильный Safari менее точен, чем местоположение в собственном приложении?

Я использую API геолокации (часто называемый "геолокацией HTML5"), чтобы получить текущий Ent позиция пользователя. Он обновляется автоматически, если вы двигаетесь (проверяется каждую секунду). В первую очередь ориентирован (и в настоящее время протестирован) на iPhone, но должен работать и на других мобильных устройствах. Вы можете увидеть пример здесь:

http://jsbin.com/uyoyey/

Точность, которую вы можете увидеть в каждой строке после трубы, составляет около 3000 (метров), когда я тестирую (снаружи ). Что, очевидно, довольно плохо. Родное приложение Maps на моем iPhone намного точнее. Примерно от 10 до 30 метров (если посмотреть на карту и посмотреть, где я стою. Проверка длинных и широтных значений в другом приложении также дает более точные числа.

Когда я теперь переключаюсь обратно в Safari, точность возрастает до 10 до 30, но через секунду возвращается к 3000.

Вопросы:

  1. Можете ли вы воспроизвести это поведение?
  2. Почему это местоположение вообще так далеко?
  3. Есть ли разница между доступом к GPS- Данные через Geolocation и CLLocationManager (который, как мне кажется, используется в собственных приложениях)?

Спасибо!

Обновление 1:
Я получаю более точные результаты при тестировании в других местах (в большом городе), но теперь мне интересно если собственные приложения также используют отслеживание движения для обновления местоположения. Это объясняет, почему приложение «Карты» может отслеживать мои шаги, а Safari их не распознает.

Обновление 2 (03.08.11):
В электронном письме- беседа с Питером-Полом Кохом он написал, что Safari в основном использует Wi-Fi для геолокации, чтобы продлить срок службы батареи. в различиях.
Я все еще не совсем понимаю, что происходит.

6
задан Steffen Wenzel 3 August 2011 в 09:50
поделиться