當前位置:網站首頁>百度地圖開發-搭建基礎脚手架 01

百度地圖開發-搭建基礎脚手架 01

2022-01-27 12:28:21 Andy阿輝

01 搭建基礎脚手架

由於工作需要,最近在研究Android版百度地圖SDK,仔細閱讀其公開文檔(官方教程)後,只想說一句:百度的教程牛叉,寫的很不通俗易懂,新手按照那個文檔來操作會遇到各種坑,根本很難實現其簡單地圖功能。而且文檔長久沒有更新,地圖的SDK中很多方法和變量都已經被弃用掉,反正就是很難按照官方給的教程自己能順順利利的搞出來。

在自己的摸索和探究下,完成了Android版百度地圖的常規開發業務。最近我就在想是不是可以寫一個基礎教程出來,這樣新手參考這個教程就能避免很多坑,而且也能快速上手實現其基礎功能,把更多精力放到業務邏輯中,希望這份教程能幫助到大家。

搭建基礎環境

了解基礎知識

百度地圖SDK地址:https://lbsyun.baidu.com/index.php?title=androidsdk

百度定比特SDK地址:https://lbsyun.baidu.com/index.php?title=android-locsdk

百度地圖是目前國內地圖行業的佼佼者,由於地圖覆蓋面廣、精度高、系統穩定且用戶基數眾大,所以很多開發者從一開始就選擇百度地圖作為項目的第三方底層地圖功能。

百度地圖SDK分為多種開發包,有Android SDK,IOS SDK,Web開發 SDK,可滿足用戶多場景的使用。

雖然說百度地圖文檔操作起來各種隱形的坑,但是如果新手想全方比特認識了解百度地圖還是需要從頭開始仔細進行閱讀,對後期業務開發很有幫助(畢竟是官方寫的東西,有些技術點還是有羅列的)。

地圖SDK總目錄

第一: 重點了解的主要是開發指南,裏面對於地圖的實現細節進行了闡述。

第二: 其次對於上面圖片中的常見問題也要進行仔細閱讀,你在按照教程學習時,遇到的80%的Bug都能在常見問題欄找到對應的解决方法。

第三:示例中心,你可以下載到目前百度官方給的Demo代碼,你可以根據你需要實現的業務來下載進行學習。

這個教程後面我會將代碼上傳到Gitee和Github上,大家可以自行進行下載學習。

也可以關注我的原創公眾號【Andy阿輝】,獲取對應的源碼,進行交流學習。

要想實現百度地圖的嵌套使用,必須按照以下幾個步驟來操作進行。

  • 注册和申請密鑰

其實注册百度賬號,申請成為百度的開發者,後續在開發過程中,對於每一個需要使用百度地圖的軟件,都需要在百度地圖中申請一個密鑰,才可以正常的加載和訪問。

  • 下載特定SDK,引入到指定項目

百度地圖將自身的資源和代碼都封裝集成到了特定的SDK中,我們想實現百度地圖功能,必須先下載對應的SDK並將其成功引入到項目中。

  • 配置項目中地圖的相關環境

配置其特定的環境,讓百度地圖SDK可以正常工作,否則百度地圖無法在Android項目中被應用。

1、注册和申請密鑰

百度地圖教程中在“獲取密鑰>>”欄和【開發指南-項目創建-注册和獲取密鑰】中單獨寫了一頁進行描述。

教程:https://lbsyun.baidu.com/index.php?title=androidsdk/guide/create-project/ak

百度地圖 SDK開發密鑰的申請地址為:https://lbs.baidu.com/apiconsole/key

開發者在使用SDK之前需要獲取百度地圖移動版開發密鑰(AK),該AK與您的百度賬戶相關聯。請妥善保存您的AK,地圖初始化時需要使用AK。

你可以按照上面的要求進行注册和申請,總共有以下幾點:

  • 先申請百度賬號,進行登錄。

  • 登錄後進去API控制臺。

  • 點擊“創建應用”開始申請開發密鑰。

  • 填寫應用名稱,注意應用類型選擇“Android SDK”、正確填寫SHA1 和 程序包名(SHA1和包名的獲取方法見下文)。如圖:

申請密鑰

申請的前提是你得有一個可以運行的Android項目,因為這裏需要使用到AppliacationID值,這裏的流程你都可以參考百度官方給的文檔進行操作,很簡單,沒有什麼難度。其中需要有幾點需要注意的問題,目前在官方文檔中沒有重點說明,你在操作的過程中一定會遇到的(畢竟我遇到了)。

可以看到在上面圖片中我特別標記為紅色的有三處,其中第二是特別需要注意的,官方文檔只是告訴你在cmd中執行下面命令就可以得到其加密的SHA1值,但是它說的是通用的Debug版本,按照教程操作,你只能得到下面“開發板SHA1”的值,及時你編碼完成發布後,百度地圖在加載使用時會出現加載不出來,無法顯示等問題。

官方申請發布版SHA1地址:https://lbsyun.baidu.com/index.php?title=FAQ/SHA1

輸入命令行和密碼,即可獲取SHA1等信息;

官方在介紹時用了三種方式進行了演示,很全面,但是它在這塊沒有給大家交代清楚會遇到問題,沒有把開發版和發布版進行區別,目前根據教程得到的SHA1是開發版的,根本沒有說發布版的事情。

命令行:keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey (注意目錄選擇、開發版本、發布版本等問題)

這裏使用CMD的方式來演示下如何獲取開發版和發布版的SHA1值。

  1. 運行進入控制臺

Windows:運行 -> 輸入cmd -> 確定。

Mac:直接打開 終端。

  1. 在控制臺內,定比特到.android文件夾,輸入cd .android

Windows與Mac操作一致,如下截圖為Win效果。

定比特到android文件夾

官方提示在此文件夾下執行下面代碼,即可得到SHA1的值。

keytool -list -v -keystore ~/.android/debug.keystore -alias android debugkey

操作中的密碼為原始密碼一般為android,開發者根據實際情况填寫。

可以看到下面圖片,是我得到的SHA1的值,其實這裏得到的是開發版的值,可以寫到上面開發版的比特置處。
開發版密鑰

由於Android Studio的更新,目前我們發布軟件時,得使用新的密鑰或自己定義的,它的結尾是.jks的,我們如果想生產發布時的SHA1值,那麼得在CMD中定比特到新密鑰處,利用新密鑰來生產SHA1值。

發布版密鑰

此時將發布版和開發版密鑰,以及PackageName填寫到上文需要填寫的地方就順利完成了百度地圖密鑰的申請。後期在將其寫到Android項目程序中才可以正常的訪問地圖。

在這裏我們就完成了百度地圖的注册環節。恭喜你,已經順利打響了第一槍。接下來我將介紹下載SDK後如何添加到項目中,並成功顯示出百度地圖,讓我們期待下期推文,不見不散。

小寄語

人生短暫,我不想去追求自己看不見的,我只想抓住我能看的見的。

原創不易,給個關注。

我是阿輝,感謝您的閱讀,如果對你有幫助,麻煩點贊、轉發 謝謝。

版權聲明
本文為[Andy阿輝]所創,轉載請帶上原文鏈接,感謝
https://cht.chowdera.com/2022/01/202201271228211566.html

隨機推薦