第一步:引入获取经纬度的插件
1 require("cordova!cordova-plugin-geolocation");// geo定位
第二步:定义好获取经纬度的方法,通过调用内部function用百度地图的API获取详细位置
Model.prototype.getGOOGLEAPI = function() {//方法定义不同框架有区别;使用请注意 // 获取经纬度 var itemScoreData = this.comp("itemScoreData");//这个data是一个前端对象 var storage = window.localStorage;// 获取缓存对象 navigator.geolocation.getCurrentPosition(successCallback, errorCallback);// 获取经纬度 function successCallback(position) { var longitude= position.coords.latitude;// 经度 var latitude = position.coords.longitude;// 纬度 // URL var url = "http://api.map.baidu.com/geocoder/v2/?callback=renderReverse&location=" +longitude+ "," +latitude + "&output=json&pois=1&ak=UcxbIt99PwqVOOYWTDbGZxHkHkSGrvYB"; // 这里的key可以拿去用 $.ajax({ url : url, dataType : 'jsonp', processData : false, type : 'get', success : function(data) { var sCity = data.result.formatted_address;// 城市区县 var sTown = data.result.business;// 镇 var sdetailed = data.result.sematic_description;// 详细地址 // 具体地址定位login var slongadress = sCity + sTown + sdetailed;// 拼接地址 storage["Door_sLoginSaddreddss"] = slongadress;// 将完整地址存入缓存 itemScoreData.setValue("work_site", slongadress);//将详细信息封装进前端对象中 }, error : function(XMLHttpRequest, textStatus, errorThrown) { util.hint("百度地图获取信息失败", { "position" : "danger" }); } }); } function errorCallback(position) { util.hint("获取经纬度失败", { "position" : "warning" }); } };
第三步:调用getGOOGLEAPI()方法
这样子地址就获取到了