移动设备如何被Web应用程序请求位置?

17

许多现代手机(如谷歌Nexus One等)都具有某种内置定位服务。当我访问某些网站(例如google.com)时,该网站会询问我是否愿意与该站点共享我的位置。

那么,如何请求移动设备将其位置提供给该网站?以及以什么格式提供该位置?我一无所知,并且从谷歌中也没有找到任何答案。


你能澄清一下吗:是Web应用程序还是本地移动应用程序? - Steve Madsen
网络应用程序。我见过一些网站从移动设备请求地理位置数据。 - kikkoman90
谢谢大家!这里有很棒的答案!我得到了我想要的 :) - kikkoman90
4个回答

25

iPhone、Android甚至某些桌面浏览器(最近的Firefox、Chrome和Opera版本)上的Web应用程序使用W3C Geolocation API请求您的位置。Google Gears还支持类似的地理位置API作为许多浏览器的插件,但W3C API正在成为标准。

检查API支持并请求位置的代码很简单(if (navigator.geolocation) ...)。这里提供一些示例代码


0

应用程序使用平台的本地API获取位置。在Android的情况下,本地应用程序通常使用Java构建并使用Android SDK。Apple iPhone / IApd应用程序是针对iPhone SDK使用Objective-C编写的。

您可以使用Web技能(例如Javascript、CSS和HTML)编写本地应用程序,使用像PhoneGap这样的工具,让您访问手机的本地功能。


0

0
如果在移动平台上向浏览器公开地理位置服务,则可以通过Javascript将其提供给Web应用程序(而不是本机应用程序)。
对于iPhone上的Safari,请参阅Safari Web内容指南中的获取地理位置

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接