1. 程式人生 > 其它 >百度地圖騎行導航誘導頁view空指標和初始化問題最佳解答

百度地圖騎行導航誘導頁view空指標和初始化問題最佳解答

技術標籤:Android 解錯錦囊Android 地圖開發百度地圖百度騎行導航地圖導航findViewById空指標(空物件)

不得不說,百度的SDK整合真的很考驗一個人的耐心、細心和用心,就拿百度地圖SDK來說,

導航誘導頁view空指標問題:
騎行導航demo:BaiduMapSDK_BikeNavi_AS_Demo
導航誘導頁出現空指標問題,奇怪,demo可以,我整合之後不可以了,閃退,好氣哦!這個坑花了我好幾天的時間,每次想要吐槽官方文件寫的差時,最後啪啪打自己的臉,說實話,還是自己粗心了。

Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)'
on a null object reference

在這裡插入圖片描述

解決:
Application方法中的ReflectHelper.unseal(base);千萬不要弄丟了,問題就是出在這裡。經過我多次的測試,發現Android R(11)仍存在閃退問題,想必是地圖SDK還沒適配Android R的原因。這個大家不用擔心,Android Q(10)以下親測有效。

public class BNaviDemoApplication extends Application {

    @Override
    protected void attachBaseContext(Context base)
{ super.attachBaseContext(base); ReflectHelper.unseal(base);//這傢伙就是空指標的大罪人,一定不要弄丟了 } @Override public void onCreate() { super.onCreate(); SDKInitializer.initialize(this); } }

初始化失敗問題:
就是整合之後,執行沒咋反應。
解決:
肯定是少了這張圖片,補上就行了。
在這裡插入圖片描述

一個小建議:
下載官方demo,匯入到Android studio,接著,新建一個新專案,把demo的程式碼原封不動複製過去一遍,成功之後,再整合到主專案,這會讓你少走很多彎路。