目录

概述

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坐标系