第一步:引入獲取經緯度的插件前端
1 require("cordova!cordova-plugin-geolocation");// geo定位
第二步:定義好獲取經緯度的方法,經過調用內部function用百度地圖的API獲取詳細位置git
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()方法ajax
這樣子地址就獲取到了json