Как веб-приложения запрашивают местоположение мобильного устройства?

Многие современные мобильные телефоны (google nexus one и т.д.) имеют встроенную службу определения местоположения. когда я перехожу на какой-либо веб-сайт (например, google.com), на веб-сайте спрашивают, хочу ли я поделиться своим местоположением с этим сайтом.

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

Ответы

Ответ 1

Веб-приложения на iPhone, Android или даже определенные настольные браузеры (некоторые последние версии Firefox, Chrome и Opera) используют W3C Geolocation API для запросите свое местоположение. Google Gears также поддерживает аналогичный API геолокации в качестве плагина для многих браузеров, но API W3C становится стандартом.

Код для проверки поддержки API и последующего запроса местоположения прост (if (navigator.geolocation) ...). Пример кода здесь.

Ответ 2

Это зависит от используемого телефона и языка программирования.

Вот tutorial для iPhone. Здесь некоторая информация о местоположении для Android.

Ответ 3

Приложение использует собственный API на платформе для получения местоположения. В случае Android собственные приложения обычно создаются с использованием Java и используют Android SDK. Приложения Apple iPhone/IApd написаны в Objective-C для iPhone SDK.

Вы можете писать собственные приложения, используя веб-навыки (например, Javascript, CSS и HTML), используя инструменты, такие как PhoneGap, которые предоставляют вам доступ к собственным функциям телефона.

Ответ 4

Отметьте geo-location-javascript.

http://code.google.com/p/geo-location-javascript/

Edit:

Заметьте, я никогда не использовал это, поэтому я не уверен, насколько хорошо он работает. Я просто нашел его в запросе google.

Ответ 5

Если услуги геолокации отображаются в браузере на мобильной платформе, они будут доступны для веб-приложения (в отличие от собственного приложения) через Javascript.

Для Safari на iPhone см. Получение географических мест в Руководстве по веб-контенту Safari.