android的百度地圖開發(一)
1,註冊百度開發者賬號
2,申請key ,註意開發版SH和發布版的SH
獲取開發版SHA1:
輸入命令:keytool -list -v -keystore debug.keystore,回車
輸入密鑰庫口令:android(系統默認)回車。
.獲取發布版SHA1:
創建自己的簽名文件
在Android Studio軟件中選擇Build->Generate Signed APK。點擊Next按鈕
這裏可以選擇Create New Key Store或者Choose Existing Key Store,選擇存在的KeyStore文件也是可以的,直接選擇即可,這裏,我介紹一下創建新的KeyStore的步驟,點擊Create new Key Store按鈕,
Key store path:選擇KeyStore的文件路徑與名稱。
Password:密碼
Confirms:再次輸入密碼
Alias:別名
Password:key的密碼
Confirms:再次輸入密碼
Validity(years):密鑰的有效期
First and Last Name:你的名字
Organizational Unit:單位
Organization:組織
City or Locality:城市或者所在地
State or Province:省份
Country Code (XX):國家
填寫完成之後點擊"ok"按鈕,返回到了Generate Signed APK的界面,這個時候發現界面的Key store password、Key alias、Key Password已經自動填寫好了,
點擊"Next"按鈕,出現了Enter Master Password界面(有的可能不會出現這個界面),
填寫密碼即可,點擊“OK”按鈕,
Build Type的選項是release,還要記得勾選Signature Versions的選項。點擊Finish按鈕,到這裏開發版本的keystore文件就創建好了。
查看發布版的SHA1
輸入命令:keytool -list -v -keystore “創建的發布版的keystore文件的地址”,回車。
輸入密鑰庫口令:前面設置的是什麽,這裏填寫什麽。
這就看到了發布版SHA1了。
將查看到的發布版與開發版的SHA1填寫進對應的輸入框中。然後點擊提交即可。
3,官網上下載so和jar包,並導入到項目中
4,配置build.gradle
在項目的build.gradle中加入以下語句:
android { ... sourceSets { main { jniLibs.srcDirs = [‘libs‘] } } }
5,配置 AndroidManifest.xml
權限添加
要使用百度地圖,需要額權限可不少,權限需添加到清單文件中AndroidManifest.xml中,需要的權限有
<!-- 這個權限用於進行網絡定位 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- 這個權限用於訪問GPS定位 -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- 用於訪問wifi網絡信息,wifi信息會用於進行網絡定位 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!-- 獲取運營商信息,用於支持提供運營商信息相關的接口 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- 這個權限用於獲取wifi的獲取權限,wifi信息會用來進行網絡定位 -->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<!-- 用於讀取手機當前的狀態 -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!-- 寫入擴展存儲,向擴展卡寫入數據,用於寫入離線定位數據 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- 訪問網絡,網絡定位需要上網 -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- SD卡讀取權限,用戶寫入離線定位數據 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
服務添加
需要添加一個百度的遠程服務到清單文件中的application中
<service
android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote" >
</service>
添加秘鑰
秘鑰也是在清單文件中的application中添加
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="your api-key" />
android的百度地圖開發(一)