1. 程式人生 > >使用百度SDK,地圖不能顯示 + 不能定位幾步解決方法

使用百度SDK,地圖不能顯示 + 不能定位幾步解決方法

前言

在平時地圖模組的開發中,最常見的問題就是地圖顯示不出來或者是不能定位,找了半天都不知道出了什麼問題。經過兩三個專案的開發後,我也學會了如何解決這類問題。現總結出以下幾小點。其實按這幾步走就能找出問題的所在了。

一、API key的問題(地圖不顯示)

檢查一下Manifest檔案中的key有沒有錯。
以下是我在專案中遇到的:
   1) 在用svn協作的時候,隊友為了在他的裝置上顯示地圖,把key改成了他申請的key,之後我在更新的時候,沒看清楚,svn把本地的Manifest檔案中的內容替換了。最後我重新run的時候,地圖當然顯示不出來。直接把key換回來就好了。

<meta-data
android:name="com.baidu.lbsapi.API_KEY" android:value="wor3W4Dzz8mbUEChE9dPiFcc984xgGRa" />

   2) 前段時間換了一下Windows系統,java、安卓環境都重新配置一下,然後在重新匯入之前備份的專案檔案,最後發現地圖顯示不出來。其實就是在重新配置的時候,Andorid簽名證書SHA1的值就變了,要重新去百度API控制檯更改應用的SHA1值。

二、Service問題(不能定位)

檢查一下Manifest檔案中,是否註冊了百度定位的Service。

   <service
android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" />

三、so庫的問題(不能定位)

   1) 在存放so庫檔案的資料夾中,檢視一下裝置CPU對應的種類目錄下的資料夾中的so庫檔案是否有丟失。
   這裡寫圖片描述
   2) 檢視libs資料夾下的BaiduLBS_Android.jar的版本so庫的版本是否對應。
   這裡寫圖片描述
   下載SDK的時候,得到的是一個壓縮包,裡面的so庫和jar包都是對應好的,最好不要單獨更換一個so檔案。因為隨著時間的推移,百度也會推出更新的版本,可能會出現新版本的so庫檔案和舊版本so庫檔案不能配合使用的問題。
   這裡寫圖片描述

四、初始化問題(直接崩潰)

在使用地圖之前,是否有執行這一句程式碼初始化SDK。

 SDKInitializer.initialize(getApplicationContext());

五、網路問題(地圖不顯示)

看看自己的裝置是不是連錯WIFI了。
(上次就因為測試機連錯wifi,地圖一直不顯示,卡了大半天)
這裡寫圖片描述