如何調(diào)用百度地圖API實(shí)現(xiàn)手機(jī)自動(dòng)定位
最近由于項(xiàng)目需要,研究了下百度地圖定位,他們提供的實(shí)例基本都是用監(jiān)聽(tīng)器實(shí)現(xiàn)自動(dòng)定位的。我想實(shí)現(xiàn)一種效果:當(dāng)用戶進(jìn)入U(xiǎn)I時(shí),不定位,用戶需要定位的時(shí)候,自己手動(dòng)點(diǎn)擊按鈕,再去定位當(dāng)前位置。經(jīng)過(guò)2天研究和咨詢,找到了解決方案,在此備忘一下。
//聲明地址解析器 var geoc = new BMap.Geocoder(); //自動(dòng)定位 var autoLocation = function () { if (navigator.geolocation) { //判斷瀏覽器是否能獲取當(dāng)前位置 navigator.geolocation.getCurrentPosition(AddrSuc, AddrFail); } else { simpleNoty("無(wú)法自動(dòng)定位,請(qǐng)輸入您的用餐地址"); } } //獲取當(dāng)前坐標(biāo)成功 function AddrSuc(param) { var lng = param.coords.longitude; var lat = param.coords.latitude; var point = new BMap.Point(lng, lat); //將gps坐標(biāo)轉(zhuǎn)換為百度地址坐標(biāo) BMap.Convertor.translate(point, 0, translateCallback); } //獲取坐標(biāo)失敗 function AddrFail(err) { showNotify("自動(dòng)定位失敗"); } //坐標(biāo)轉(zhuǎn)換 function translateCallback(point) { geoc.getLocation(point, function (rs) { var addComp = rs.addressComponents; //查詢得到的地址對(duì)象組件 //addComp.streetNumber:街道門(mén)牌號(hào) //addComp.city:城市 //addComp.district:區(qū) //addComp.street:街道 //addComp.province:省 var address = addComp.city + addComp.district + addComp.street; var lng_t = point.lng; //經(jīng)度 var lat_t = point.lat; //緯度 $(".locationTxt").text("當(dāng)前位置:" + address); }) }
對(duì)象示例:
rs 對(duì)象 :{point: H, address: "北京市朝陽(yáng)區(qū)廣順北大街", addressComponents: Object, surroundingPois: Array[0], business: "望京,來(lái)廣營(yíng),花家地"}
addressComponents 對(duì)象 :{streetNumber: "", street: "廣順北大街", district: "朝陽(yáng)區(qū)", city: "北京市", province: "北京市"}
調(diào)用:
$(function(){ aotuLocation(); });<br><br>
- js實(shí)現(xiàn)百度地圖定位于地址逆解析,顯示自己當(dāng)前的地理位置
- 帶有定位當(dāng)前位置的百度地圖前端web api實(shí)例代碼
- Android百度定位導(dǎo)航之基于百度地圖移動(dòng)獲取位置和自動(dòng)定位
- Android百度地圖定位后獲取周邊位置的實(shí)現(xiàn)代碼
- Android百度地圖實(shí)現(xiàn)搜索和定位及自定義圖標(biāo)繪制并點(diǎn)擊時(shí)彈出泡泡
- 基于Android實(shí)現(xiàn)百度地圖定位過(guò)程詳解
- 微信企業(yè)號(hào)開(kāi)發(fā)之微信考勤百度地圖定位
- ios百度地圖的使用(普通定位、反地理編碼)
- 簡(jiǎn)單實(shí)現(xiàn)安卓里百度地圖持續(xù)定位
相關(guān)文章
Android開(kāi)發(fā)之WebView輸入框提示解決辦法
在做webview應(yīng)用時(shí),當(dāng)輸入的文字過(guò)多時(shí),輸入的提示箭頭會(huì)移動(dòng)到輸入框外,怎么解決這個(gè)問(wèn)題呢?下面小編給大家介紹Android開(kāi)發(fā)之WebView輸入框提示解決辦法,一起看看吧2016-06-06Android自定義view之圍棋動(dòng)畫(huà)效果的實(shí)現(xiàn)
這篇文章主要介紹了Android自定義view之圍棋動(dòng)畫(huà)效果的實(shí)現(xiàn),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12Android實(shí)現(xiàn)精確到天時(shí)分秒的搶購(gòu)倒計(jì)時(shí)
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)精確到天時(shí)分秒的搶購(gòu)倒計(jì)時(shí),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02Android ScrollView實(shí)現(xiàn)下拉彈回動(dòng)畫(huà)效果
這篇文章主要為大家詳細(xì)介紹了Android ScrollView實(shí)現(xiàn)下拉彈回動(dòng)畫(huà)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-08-08Android利用屬性動(dòng)畫(huà)實(shí)現(xiàn)優(yōu)酷菜單
這篇文章主要為大家詳細(xì)介紹了Android利用屬性動(dòng)畫(huà)實(shí)現(xiàn)優(yōu)酷菜單,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01Flutter將整個(gè)App變?yōu)榛疑暮?jiǎn)單實(shí)現(xiàn)方法
Flutter?是?Google?開(kāi)源的?UI?工具包,幫助開(kāi)發(fā)者通過(guò)一套代碼庫(kù)高效構(gòu)建多平臺(tái)精美應(yīng)用,這篇文章主要給大家介紹了關(guān)于Flutter將整個(gè)App變?yōu)榛疑膶?shí)現(xiàn)方法,在Flutter中實(shí)現(xiàn)整個(gè)App變?yōu)榛疑欠浅:?jiǎn)單的,需要的朋友可以參考下2021-12-12Android ActionBar制作時(shí)鐘實(shí)例解析
這篇文章主要為大家詳細(xì)介紹了Android ActionBar制作時(shí)鐘的實(shí)現(xiàn)代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05Android使用自定義View實(shí)現(xiàn)橫行時(shí)間軸效果
這篇文章主要給大家介紹了關(guān)于Android使用自定義View實(shí)現(xiàn)橫行時(shí)間軸效果的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Android具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12深入淺出學(xué)習(xí)Android ListView基礎(chǔ)
這篇文章主要介紹了深入淺出的帶領(lǐng)大家學(xué)習(xí)Android ListView基礎(chǔ),ListView是安卓里常用的控件,本文介紹一下常用用法,以及優(yōu)化等方法,感興趣的小伙伴們可以參考一下2016-01-01