1. 程式人生 > >android的百度地圖開發(一)

android的百度地圖開發(一)

one rst dir 還要 遠程服務 存儲 返回 src copy

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的百度地圖開發(一)