目录
概述
geolocation是地理位置插件,提供地理位置信息,依赖百度地图sdk。注意:依赖百度地图SDK是为了改善Android系统定位的能力,IOS开发使用的是原生api定位。
本插件已经填写了百度地图key,开发Android应用可以自行申请key,也可以使用默认的key,而开发IOS应用无需考虑这个问题。
申请的网址为:百度地图api官网。
申请的流程并不复杂,网上也能找到资料。申请百度地图sdk的流程:百度地图api申请流程
JS调用方法
1、导入插件require(“cordova!cordova-plugin-geolocation”);
2、插件提供了获取定位信息方法getCurrentPosition
- getCurrentPosition:获取设置地理位置信息。传递的参数有三个:successCallback(请求成功的回调,返回cordova-plugin-geolocation.Position对象)、errorCallback(可选参数 请求失败的回调,返回cordova-plugin-geolocation.PositionError对象)、options(可选参数,地理位置参数)。返回的数据包括经度和纬度。
js代码
define(function(require){
var $ = require("jquery");
require("cordova!cordova-plugin-geolocation");
var Model = function(){
this.callParent();
};
function success(data){
alert("经度:"+data.coords.longitude +"\n"
+"纬度:"+data.coords.latitude +"\n"
+"类型:"+data.coorType +"\n"
);
}
function fail(msg){
alert("错误消息:"+msg);
}
Model.prototype.getLocationClick = function() {
navigator.geolocation.getCurrentPosition(success, fail, null);
};
return Model;
});
注意事项
如果要自行替换百度地图key,在Native\plugins\com.justep.cordova.plugin.baidulocation\plugin.xml文件里找到name为”com.baidu.lbsapi.API_KEY”的”meta-data”标签,将value的值替换成自己申请的百度地图key。
android获取的是百度坐标系,iOS获取的是GPS坐标系
评一波