我正在使用 cordova 构建一个 JS 应用程序。我想在用户点击链接时打开谷歌地图应用程序。
代码-
$window.location.href = 'comgooglemaps://maps.google.com/maps?saddr=My+Location&daddr=' + destinationAddress
目的地址是该地点的地址。
现在上面的代码在 ios 上工作正常,但谷歌地图在 android 上打不开。
来自 documentation看起来 comgooglemaps
是 iOS 特定协议(protocol)
我也尝试过此 Android - launch google map via web url 中提到的地理 URL如下
<a href="geo:53,-9?saddr=(53,-9)&daddr=(42,4)">Click here for route maps</a>
它打开谷歌地图应用程序但不显示路线。
有什么可以同时在安卓和iOS上运行的吗
最佳答案
我通过以下 javascript 代码实现了这一点,在对我们的项目进行了大量研究之后,我们发现只需调用 maps.google.com 就可以很好地工作:
1) 安卓
2) iOS
3) 网络浏览器...:)
$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、
索尼爱立信 Xperia、
Moto G
特征
最好的一点是,如果安装了谷歌地图应用程序,设备默认情况下会选择它,否则它将在谷歌浏览器中打开,默认情况下所有安卓设备都有。
关于javascript - 从 Angular JS 应用程序打开谷歌地图应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25958509/