我正在使用cordova构建一个JS应用程序。我想在用户点击链接时打开谷歌地图应用程序。
代码 -
$window.location.href = 'comgooglemaps://maps.google.com/maps?saddr=My+Location&daddr=' + destinationAddress
目的地地址是该地点的地址。
现在上面的代码在ios上工作正常但谷歌地图在android上没有打开。
从documentation看起来comgooglemaps
是iOS特定协议
我还尝试了这个Android - launch google map via web url中提到的地理网址,如下所示
<a href="geo:53,-9?saddr=(53,-9)&daddr=(42,4)">Click here for route maps</a>
它会打开谷歌地图应用程序,但不显示路线。
还有什么可以在Android和iOS上运行
答案 0 :(得分:2)
我通过以下javascript代码实现了这一点,经过对我们项目的大量研究后,我们发现只需调用maps.google.com就可以很好地适用于所有人:
1)Android
2)iOS
3)Web浏览器...... :)
$scope.showMap = function () {
var link = ""+"http://maps.google.com/maps?saddr="+$scope.slat+","+$scope.slon+" &daddr="+$scope.dlat+","+$scope.dlon;
// $location.path(link);
window.location = link;
}
<强>,其中强>:
$ scope.slat =源纬度坐标
$ scope.slon =源经度坐标
$ scope.dlat =目的地纬度坐标
$ scope.dlon =目的地经度坐标
该代码已经过测试,可以正常使用:
iPhone 4,iPad,
iPad 3,
Moto E,
Sony Ericsson Xperia,
Moto G
<强>功能强>
关于这一点最好的事情是,默认情况下设备会选择谷歌地图应用程序(如果已安装),否则它将在谷歌浏览器中打开,默认情况下会出现在所有Android设备中。