詳解在Android中整合高德定位功能
關於定位,相信大家都不陌生。現在很多App基本都少不了定位的功能,Android本身也提供了定位的功能(LocationManager),但是由於Google牆太厚了,所以你懂得。。
定位功能國內也有很多選擇,主流的當選百度定位、高德等等。今天就和大家分享下如何整合高德定位功能,那麼,我們開車吧~
整合高德定位,我將其大致分為以下幾步:
(1)新增高德SDK
(2)配置AndroidManifest檔案
(3)初始化AMapLocationClient定位物件
(4)配置AMapLocationClientOption定位引數
(5)設定監聽回撥
(6)呼叫AMapLocationClient物件的startLocation方法開啟定位
(7)定位成功後,呼叫AMapLocationClient物件的stopLocation方法關閉定位
(8)呼叫onDestroy方法銷燬
以上8步就是定位的整個完整流程,下面我們一步一步來實現。
(1)在libs目錄下新增SDK:SDK下載地址
(2)在配置檔案中,我們需要配置許可權,定位service,key。
1. 許可權:
2.service:
3.key:
(3)第三步和第四步程式碼如下,每個引數的設定在註釋都有說明。
(4)設定定位監聽
從上面程式碼中,我們看到,當定位回撥成功後,最後停止定位。
(5)開啟定位
(6)銷燬,重寫Activity的onDestory宣告週期方法:
經過上面的幾步,我們的定位功能就全部實現啦,基本的流程:
第 1 步,配置AndroidManifest.xml
第 2 步,初始化定位
第 3 步,配置引數並啟動定位
第 4 步,獲取定位結果
最後一步,停止定位。
注意事項
● 目前手機裝置在長時間黑屏或鎖屏時CPU會休眠,這導致定位SDK不能正常進行位置更新。若您有鎖屏狀態下獲取位置的需求,您可以應用alarmManager實現1個可叫醒CPU的Timer,定時請求定位。
● 使用定位SDK務必要註冊GPS和網路的使用許可權。
● 在使用定位SDK時,請儘量保證網路暢通,如獲取網路定位,地址資訊等都需要裝置可以正常接入網路。
● 定位SDK在國內返回高德型別座標,海外定位將返回GPS座標。
● 僅裝置定位(通過GPS定位)是裝置本地定位行為,是不返回地址資訊的,地址資訊在網路定位時會返回。
補充:如果在Android6.0上使用定位,需要我們動態申請許可權驗證,來看下在Android6.0上的實現步驟:
(1)宣告需要的許可權:
(2)動態申請許可權
(3)檢查許可權
(4)驗證是否通過授權
以上就是本篇部落格全部內容啦,相信大家看完上面的步驟,對App整合高德定位功能的實現有了更清晰的認識。下一篇將和大家分享下如何使用高德地圖的一些技巧。有問題的小夥伴可以給我留言咯!
相關文章
- Flutter整合高德定位和地圖功能Flutter地圖
- Android高德地圖定位SDK 返回資訊中只有經緯度問題解決Android地圖
- js高德API定位JSAPI
- Android開發之高德地圖實現定位Android地圖
- 百度地圖整合_定位功能地圖
- 高德在提升定位精度方面的探索和實踐
- android開發之GPS定位詳解Android
- CSS 定位詳解CSS
- css定位詳解CSS
- Position定位詳解
- 整合融雲Android SDK實現在群聊/討論組中@人的功能Android
- 高德地圖定位實現地圖
- EhCache快取系統在整合環境中的使用詳解快取
- 在Android原生專案中整合FlutterAndroidFlutter
- 在Android App中整合Google登入AndroidAPPGo
- Android熱修復之Tinker整合最新詳解Android
- Android 整合 Flutter 及通訊互動詳解AndroidFlutter
- Android APK開發:Menu介面功能詳解AndroidAPK
- Android中PopupWindow使用詳解Android
- Android中AsyncTask使用詳解Android
- OpenCV在Android中的整合與簡單使用OpenCVAndroid
- ssm整合詳解SSM
- CSS定位屬性詳解CSS
- android ---------高德地圖實現定位和3D地圖顯示Android地圖3D
- Android中的onWindowFocusChanged()方法詳解Android
- Android中SQLite應用詳解AndroidSQLite
- 詳解Android中AsyncTask的使用Android
- Android中的ANR用法詳解Android
- Android中Context用法詳解AndroidContext
- Android 中 HttpURLConnection 使用詳解AndroidHTTP
- Android中HttpURLConnection使用詳解AndroidHTTP
- Android中的Context詳解AndroidContext
- Android 中的 Checkbox 詳解Android
- Android 中的 HandlerThread 詳解Androidthread
- Android免費整合推送功能(MobPush)Android
- Android整合支付寶支付功能Android
- 在 IBM WebSphere Portal 中整合 IBM Lotus Quickr 協作功能IBMWebUI
- 在Windows Virtual PC中使用“整合功能”Windows