地理位置会阻止移动导航应用程序打开吗?

时间:2016-03-23 20:19:39

标签: javascript html5 google-maps navigation geolocation

我正在努力解决问题一段时间。我无法找到任何有适当帮助的文章。我正在建立一个我拥有的网站" Navigate"按钮。该按钮必须找到用户位置并将其导航到特定位置。如果用户使用台式计算机,则应打开谷歌地图及其上的路线。但是如果用户使用移动设备,它应该直接打开导航应用程序并启动路线。(当然,如果没有安装导航,它也应该在浏览器中打开谷歌地图。)

发现用户地理位置无法打开导航应用程序。相反,它在浏览器中打开谷歌地图。有谁知道问题出在哪里,有没有办法实现我的目标。

这是我使用HTML5地理位置的代码:

$('#button-navigate').on('click', function(e){
    navigator.geolocation.getCurrentPosition(geoNavigate);
    e.preventDefault();
});

function geoNavigate( position ) {
    var myLat = position.coords.latitude;
    var myLng = position.coords.longitude;
    window.location.href = 'http://maps.google.com/maps?saddr=' + myLat + ',' + myLng + '&daddr=42.140511,24.6884765';
}

但是,如果我尝试那样,使用静态起点,没有Geolocation功能,它似乎工作正确:

$('#button-navigate').on('click', function(e) {
    window.location.href = 'http://maps.google.com/maps?saddr=43.140511,24.6884765&daddr=42.140511,24.6884765';

    e.preventDefault();
});

我不喜欢在页面加载时获取用户位置并将其设置为按钮上的href属性。有没有其他方法可以获得用户坐标或解决我的地理定位问题?

编辑:它似乎发生在Android手机上。我尝试过iPhone 6和iPhone 5S,它可以正常工作。

0 个答案:

没有答案