如何在Google地图API中获取用户位置?

4
我注意到谷歌地图API有一个选项叫做“sensor”。

请确认您是否尝试使用HTML5实现此功能? - Philar
我想使用JavaScript获取这个。 - lovespring
请查看我的回答中的链接,它使用HTML5和Javascript。您的目标操作系统是Android、iPhone还是使用Qt? - Philar
5个回答

14
在GMaps API中,“sensor”不是选项,而是信息参数。以下是docs的说明:

使用Google Maps API需要指示您的应用程序是否在任何Maps API库或服务请求中使用传感器(如GPS定位器)来确定用户的位置。

Google Maps不知道您的用户的任何信息,因此无法提供其位置。它是相反的:您可以确定用户的位置并将其提供给Google Maps以放置位置指针等。
您有几个选项来获取JS中的用户位置: 如果您正在为配备传感器的设备(例如带有GPS接收器的移动电话)开发,则应该有一些供应商特定的方法可以直接从设备中获取位置。

3

获取用户位置的另一种方法是包含:

<script type="text/javascript" src="https://www.google.com/jsapi"></script>

在你的页面中。

这将创建一个名为“google.loader.ClientLocation”的javascript对象,其中包含用户的纬度、经度和地址。

示例:

google.loader.ClientLocation = {
    "latitude": 51.817,
    "longitude": 19.3,
    "address": {
        "city": "Aleksandrow Lodzki",
        "region": "Lodz",
        "country": "Poland",
        "country_code": "PL"
    }
};

3
“获取用户在Google地图中的位置”的方法取决于您所针对的设备。 HTML 5方法 适用于支持HTML5的Android、iPhone和其他移动平台。在这种情况下,浏览器能够直接从GPS获取坐标,而无需编写本机语言的代码。
然而,如果您正在使用QT开发以针对塞班等设备,则需要使用本机语言(例如我的情况下为C ++)编写代码,以从GPS获取坐标并将其发布到服务器以更新用户的当前位置。您可以在此处找到有关使用Qt Mobility API检索坐标的详细信息here

0

传感器参数不再需要。从这里

以前,Google Maps API要求您包含传感器参数来指示您的应用程序是否使用传感器来确定用户的位置。现在不再需要此参数。


0

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