移动html5启动手机的原生导航应用程序
我正在开发一个phonegap / cordova应用程序。 有没有办法在浏览器视图中打开手机的原生导航应用程序? 或者有没有从HTML5应用程序打开本地地图应用程序的最佳做法? 或者它们都是平台特定的?
我已经阅读了以下适用于某些Android版本的地方
<a href="geo:some address here" />Navigate to here</a>
并且这适用于iOS
<a href="http://maps.apple.com/?daddr=San+Francisco,+CA&saddr=cupertino">Directions</a>
我很惊讶Phonegap没有实现这样的东西。
您可以使用神奇的“maps:”协议,例如window.location = "maps:daddr=50.4,-4.5"
在iOS 5(Google Maps)和iOS 6(Apple Maps)上打开原生导航应用程序。
但要在Android上启动本机Google Navigator应用程序,您需要使用phonegap插件。 我为了自己的目的写了这个。
更新插件现在已针对Phonegap 3.x进行了更新,并且支持Android,iOS和Windows Phone,包括在iOS上选择偏好Google地图的选项。
插件在这里:https://github.com/dpa99c/phonegap-launch-navigator
该插件非常棒! 感谢分享! 我在我的应用程序尝试过,但不幸的是我有Phonegap版本3.x和您的插件只适用于Phonegap 2.x :(
所以为了让它在Phonegap 3.x上运行,我从你的github仓库中获得了插件并做了一些修改,以便它可以用于3.x
Phonegap 3.x的修改PhoneNavigator插件可以从我的github仓库下载:https://github.com/viktor0710/PhoneNavigator-Phonegap-3.x.git
如何将它集成到您的Phonegap 3.x项目中:
如何使用它:
//function declaration
function navigateTo (lat, lon, successFn, errorFn) {
cordova.require('cordova/plugin/phonenavigator').doNavigate(lat, lon, successFn, errorFn);
}
//set lat and lon variables. Most probably read them from the UI
var latitude = 48.137607;
var longitude = 11.568569;
//call function
navigateTo(
latitude,
longitude,
function(){
console.log("Successfully opened navigator");
},
function(){
console.log("Error opening navigator");
}
);
如上所述,Galaxy S4 Android上的以下工作(只是测试它),调出Google地图/导航应用程序并wa声:
<a href="geo:37.786971,-122.399677;u=35">Wikimedia Headquarters</a>
信用:http://en.wikipedia.org/wiki/Geo_URI#Example
请在此处查看答案:https://stackoverflow.com/a/19765368/2728686
链接地址: http://www.djcxy.com/p/66553.html上一篇: mobile html5 launch phone's native navigation app
下一篇: HTML5 Offline iPad App with Caching videos, PDF, Doc and PPT files