получить текущую широту и долготу от устройства с поддержкой GPS - PullRequest
8 голосов
/ 10 августа 2010

Я хотел бы получить широту и долготу текущего местоположения с мобильного устройства с поддержкой GPS прямо из веб-браузера.Могу ли я знать, возможно ли это?как это сделать?это требует геолокации API?Некоторый пример кодирования был бы полезен.Благодарю.

Ответы [ 3 ]

16 голосов
/ 10 августа 2010

Используйте API геолокации HTML5, вот официальная спецификация и примеры .

EDIT

Я обновил свой ответ, чтобы включить текущую поддержку браузера.

Поддержка API геолокации W3C

Firefox 3.5+
Safari 5.0+
Chrome 5.0+
Opera
iPhone 3.0+
Android 2.0+

· ·
Другие телефоны, не перечисленные выше, используют Gears или свои собственные API-интерфейсы, специфичные для платформы.

Ааа, у нас когда-нибудь будет только один API? :)

Большое спасибо Марку Пилигриму за его удивительный пост .

9 голосов
/ 29 ноября 2010

Вот фактический код JavaScript, который использует HTML5 Geolocation API.В браузере Android и iPhone Safari работает следующее:

            function onPositionUpdate(position)
            {
                var lat = position.coords.latitude;
                var lng = position.coords.longitude;
                alert("Current position: " + lat + " " + lng);
            }

            if(navigator.geolocation)
                navigator.geolocation.getCurrentPosition(onPositionUpdate);
            else
                alert("navigator.geolocation is not available");
0 голосов
/ 20 ноября 2010

Вам не нужен новейший мобильный телефон, чтобы использовать GPS и Geolocation API.Почти каждый мобильный браузер (без прокси-сервера) можно использовать для считывания местоположения из GPS-навигатора.Если у вас в телефоне есть Java и GPS - вы можете использовать mobile-gps-web-gate - см. http://code.google.com/p/mobile-gps-web-gate/

...