史上最詳細的Android Studio百度地圖(BaiDuMap)開發教程,可以當作官方文檔的教科書級別教程!

本文是續寫一一哥作品,(一些大神沒想過要寫出來的,而笨小白又不懂的,,稍有完善。)

原文:http://blog.csdn.net/syc000666/article/details/50756551

由於工作原因,需要用到地圖模塊,之前一直是用Eclipse開發百度地圖,
在Eclipse環境下搭建百度地圖,只要按照百度地圖官網一步步配置就可以了,相對來說很簡單,但是由於現在開發工具切換到了AndroidStudio,百度地圖開發環境的搭建就不是那麼容易了,主要還是因爲Studio下apk的簽名文件導致百度地圖key的申請和Eclipse不一樣,從而造成App運行或者上線後出現Key的驗證出錯,地圖界面只有一片空白的格子的現象.出現百度地圖230錯誤,APP Scode校驗失敗.

如下圖所示:

https://img-blog.csdn.net/20160227193530185

就是這個錯誤浪費了我不少時間!
其實網上也有不少大牛說出瞭解決辦法,但是總是一帶而過,不夠詳細,爲了其他開發百度地圖的孩兒少走彎路,避免浪費不必要的時間,我就寫了這篇博客,不足和有誤之處,還望各位海涵!

一.創建一個Android Studio項目:

https://img-blog.csdn.net/20160227193618438

二.申請百度地圖key.

此處需要重點注意,由於Studio和Eclipse的開發環境不同,導致Sha1值的獲取有差異,在Studio下無法像Eclipse那樣獲取Sha1值.
而且Studio中默認安裝運行的apk是debug版本,不是release版的,debug版的apk有默認的debug.keystore簽名,和release版的簽名是不一樣的.
所以如果採用的是百度地圖官網提供的獲取簽名的方法,是獲得的默認的debug版的簽名,不是正式的簽名.
如果我們開發的app就是自己玩玩,那麼採用默認的debug簽名來獲取Sha1值就可以了,但是如果我們要正式發佈,則需要用release版的簽名來獲取Sha1值才行.
我這裏直接通過release簽名文件來獲取Sha1值,和實際開發一致.

1.創建release版的簽名文件:

在Eclipse中,簽名文件的後綴是.keystore,而Studio中的簽名是.jks.
所以先去Builde菜單下生成一個正式的.jks簽名文件.

https://img-blog.csdn.net/20160227193840470

選擇Create new…生成一個新的簽名文件:

https://img-blog.csdn.net/20160227194252503

Key store path 是選擇你要保存的路徑,然後再起一個名 確定即可;Confirm中填與password相同的密碼;剩下的公司,城市,省份,國家編號,自行填寫;

https://img-blog.csdn.net/20160227194325378

OK之後直接是如下界面,填寫好剛纔的信息即可.

https://img-blog.csdn.net/20160227194353696

Next下一步,出現如下界面:
如果進行了多渠道打包配置,則在Flavors中進行選擇即可.

https://img-blog.csdn.net/20160227194410196

此時,在你指定的路徑下會出現一個.jks文件。

2.進行release版簽名的驗證,生成正式簽名的apk:

點擊Project Structure菜單,選擇Signing簽名選項:
填寫各種簽名信息即可.

https://img-blog.csdn.net/20160227202331521

此時在builde.gradle文件中就多了對正式簽名文件的配置引用:
注意要在buildTypes中添加對正式簽名配置的引用.
signingConfig signingConfigs.release

(添加完之後必須同步,這個studio會自動提示)

https://img-blog.csdn.net/20160227202355880

3.申請百度地圖的key:

運行cmd---》cd .android---》keytool -list -v -keystore 後面加剛剛創建出來的jks文件(直接拖進來就行,注意連接處要有一個空格)---》輸入你的password--》回車

https://img-blog.csdn.net/20160227194519270

至此得到了正式簽名的Sha1值.利用這個值就可以去百度官網申請Key了.

https://img-blog.csdn.net/20160227202427544

去百度控制檯申請Key,填上Sha1和包名,至此,生成所需要的Key:

https://img-blog.csdn.net/20160227202450138

點擊提交之後就會跳轉出現下面出現的密鑰了啊。

https://img-blog.csdn.net/20160227202541280

三.配置開發環境:

接下來就按照百度地圖官網的步驟把開發環境搭建好就可以了.

1.引入所需jar包和so庫.
注意此處要將jar包添加爲類庫.
在main目錄下直接創建jniLibs目錄,然後把各種.so庫拷貝進來即可, (文件夾必須是以jinLibs命名)
不用看百度官網說的那一堆廢話(此處嚴重鄙視百度的API文檔,簡直就是一堆狗屎,和高德的文檔一比,菜的不行,寫這個文檔的也不知道怎麼進的百度).

這裏寫圖片描述

注意:需要將jar包作爲類庫添加到studio的依賴庫中.

2.配置其他所需要的權限和key:

把此處的   “開發者 key”  換成剛剛得到的key就行了(不能有空格)

這裏寫圖片描述

這裏寫圖片描述

3.編譯運行安裝apk:

我這裏直接在Gradle裏直接build和install項目了.

這裏寫圖片描述

安裝運行apk文件:

這裏寫圖片描述

得到最終結果:
出現這個界面說明環境搭建完畢,可以繼續其他地圖功能的實現了.

這裏寫圖片描述

最後就是運行結果.博客中如有不當之處,希望各位可以不吝賜教,共同學習和探討,謝謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章