高德地圖簡單整合
阿新 • • 發佈:2019-01-08
前言
當專案中需要使用地圖SDK的時候, 是選擇高德地圖還是百度地圖呢?從對開發者友好角度,從容易上手角度:高德完勝百度! 所以我們公司的專案也選擇了高德地圖。好了!下面就開始高德地圖的整合吧!
一,賬號與Key的申請
註冊成為高德開發者需要分三步:
第一步,註冊高德開發者;第二步,去控制檯建立應用;第三步,獲取Key。
前2步都比較簡單,這裡說下第三步。
獲取Key
1、進入控制檯,建立一個新應用。如果您之前已經建立過應用,可直接跳過這個步驟。
2、 在建立的應用上點選”新增新Key”按鈕,在彈出的對話方塊中,依次:輸入應用名名稱,選擇繫結的服務為“Android平臺SDK”,輸入釋出版安全碼 SHA1、除錯版安全碼 SHA1、以及 Package,如下圖所示:
二,Android Studio 配置工程
配置工程前需要到官網下載高德SDK 下載地址
注意:這裡根據專案需求選擇下載,如果不需要導航,定位就用預設的即可。(這樣可以大大減小包的體積)如圖:
下載後會得到如圖所示壓縮包
第1步:新增 jar 包
將下載的地圖 SDK 的 jar包複製到工程的 libs 目錄下,如果有老版本 jar 包在其中,請刪除。如圖所示:
第2步:新增 so 庫
說明:3D地圖才需要新增so庫,2D地圖無需這一步驟。
在 main 目錄下建立資料夾 jniLibs (如果有就不需要建立了),將下載檔案的 armeabi 資料夾複製到這個目錄下,如果已經有這個目錄,將下載的 so 庫複製到這個目錄即可。如圖所示:
第3步:在清單檔案中配置高德 Key
<application
android:icon="@drawable/icon"
android:label="@string/app_name" >
<meta-data
android:name="com.amap.api.v2.apikey"
android:value="請輸入您的使用者Key"/>
……
</application>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
第4步:在清單檔案中配置許可權:
<!--允許程式開啟網路套接字-->
<uses-permission android:name="android.permission.INTERNET" />
<!--允許程式設定內建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" />
<!--用於進行網路定位-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<!--用於訪問GPS定位-->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<!--用於獲取wifi的獲取許可權,wifi資訊會用來進行網路定位-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<!--用於讀取手機當前的狀態-->
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<!--用於申請呼叫A-GPS模組-->
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission>
三,驗證
好了!到這裡高德地圖整合就全部完成了!接下來驗證我們整合的是否正確!
1,首先在佈局xml檔案中新增地圖控制元件:
<com.amap.api.maps.MapView
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent">
</com.amap.api.maps.MapView>
2, 在activity的onCreate()方法中新增如下程式碼就能看到高德地圖了!
MapView mapView = (MapView) findViewById(R.id.map);//找到地圖控制元件
//在activity執行onCreate時執行mMapView.onCreate(savedInstanceState),建立地圖
mapView.onCreate(savedInstanceState);
AMap aMap = mapView.getMap();//初始化地圖控制器物件
大功告成!整合高德地圖就是這麼簡單!
如果對你有幫助點個贊支援下吧!