查找设备的位置

时间:2014-03-01 01:39:57

标签: javascript html google-maps geolocation

我想在HTML / JS中开发一个应用程序,如果用户上网和他的应用程序,那么我可以在谷歌地图中找到他的位置。

此外,如果他的位置发生变化,我也可以知道。

我知道应用程序就像iOS上的FInd my Friend或iOS上的我的iphone / Ipad那样,但在html 5 / JS中怎么可能?

如果您可以分享链接或提出一些想法,那就太棒了。

我用谷歌搜索了,如果我有坐标,我可以在谷歌地图上得到它。但是,如果只有他的应用程序打开,如何从其他设备获取坐标。

3 个答案:

答案 0 :(得分:0)

您可以使用导航器获取用户的当前位置:

navigator.geolocation.getCurrentPosition(function (location)
{
     console.log(JSON.stringify(location, null, 4);
})

或观察他们的位置:

navigator.geolocation.watchPosition(function (location)
{
     console.log(JSON.stringify(location, null, 4);
})

See here for reference

答案 1 :(得分:0)

您可以使用HTML 5获取用户位置。但请注意,Google会对该服务收费(限制和条件免费),用户必须接受来自您网站的访问其位置的请求,并且当他们实际不在时,您无法访问其位置您网站上的浏览器

答案 2 :(得分:0)

使用HTML5 Geolocation API可以获取设备的位置。

Here's an example

但是,如果您试图获取其他人设备的位置,您可能需要构建一个可以执行此操作的Web应用程序(某些用户可以登录和/或共享其地理位置信息的RESTful) )。

// create google map
function GoogleMap(position) {
    var location = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);

    var map = new google.maps.Map(document.getElementById('map'), {
        zoom: 20,
        disableDefaultUI: true,
        mapTypeId: google.maps.MapTypeId.TERRAIN,
    });

    var marker = new google.maps.Marker({
        map: map,
        position: location,
        animation: google.maps.Animation.DROP,
        title: "This is your location"
    });

    map.setCenter(location);
}
// show error if location can't be found
function showError() {
    alert("Location can't be found");
}
//execute geolocation
if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(GoogleMap, showError);
}
else {
    alert("Your browser does not support Geolocation.");
}