目录
概述
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坐标系
评一波