在應用開發中,地圖開發是經常需要使用的“組件”,國內比較出名的是就是百度地圖和高德地圖。
此博客講的是高德地圖實現定位和3D地圖顯示,並標注相應位置,話不多說,先看看效果,在上代碼。
效果如圖:

首先注冊高德成為開發者(打開高德地圖,點擊底部的開發者平台),創建應用,按照要求填寫相應信息,如下圖:

途中包含了發布版的SHA1安全碼和測試版SHA1安全碼,兩者的值可以看 博客 : Android Studio apk打包,keystore.jks文件生成,根據keystore密鑰獲取SHA1安全碼
講的很詳細,照做就一定會成功獲取的。
首先導入高德的jar包

選中jar包右鍵點擊 Add As Library, 在build.fradle中看到如下代碼 表示導包成功
compile files('libs/AMap_Location_V3.0.0_20160922.jar') compile files('libs/AMap_Search_V3.5.0_20160927.jar') compile files('libs/AMap_3DMap_V4.1.1_20161019.jar')
注:項目代碼目錄中要添加一個接口文件 JniLibs 的os文件 才能繪制地圖,具體下載源碼查看,就不詳細描述了
AndroidManifest.xml中加入權限
<!--允許程序打開網絡套接字--> <uses-permission android:name="android.permission.INTERNET" /> <!-- 定位 --> <!-- 用於訪問GPS定位 --> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission> <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission> <!--允許程序設置內置sd卡的寫權限--> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!--允許程序獲取網絡狀態--> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!--允許程序訪問WiFi網絡信息--> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!--允許程序讀寫手機狀態和身份--> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!--允許程序訪問CellID或WiFi熱點來獲取粗略的位置--> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<application>標簽中添加Key值信息
<meta-data android:name="com.amap.api.v2.apikey" android:value="32c4bc659a111616d9b1196522223206"></meta-data> <!-- 定位需要的服務 --> <service android:name="com.amap.api.location.APSService"></service>
如果只實現高德定位可查看: Android Studio 中實現高德定位並獲取相應信息
講的很詳細;有疑問的請留言。
代碼Github: https://github.com/DickyQie/android-map/tree/high-moral-display-map
