溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Android 出現(xiàn):java.lang.NoClassDefFoundError...錯(cuò)誤解決辦法

發(fā)布時(shí)間:2020-09-26 17:11:17 來(lái)源:腳本之家 閱讀:167 作者:lqh 欄目:移動(dòng)開(kāi)發(fā)

今天測(cè)試突然給我說(shuō)我寫(xiě)的XX界面一點(diǎn)app就crash了!

納尼,我肯定表示不服啊!怎么可能出現(xiàn)一點(diǎn)擊就崩潰的情況呢,明明自己的測(cè)試了的!

然后我又用自己的測(cè)試機(jī)試了下沒(méi)問(wèn)題(Version:5.0.2),然后又使用crash的測(cè)試手機(jī)(Version:4.4),乖乖,居然是4.4才會(huì)出現(xiàn)的情況?。?.4以下沒(méi)有驗(yàn)證哈!可能都會(huì)吧?。。。?/p>

log顯示:

 W/System.err: java.lang.NoClassDefFoundError: android/os/PersistableBundle
 W/System.err:   at java.lang.Class.getDeclaredMethods(Native Method)
 W/System.err:   at java.lang.Class.getDeclaredMethods(Class.java:656)
 W/System.err:   at de.greenrobot.event.SubscriberMethodFinder.findSubscriberMethods(SubscriberMethodFinder.java:75)
 W/System.err:   at de.greenrobot.event.EventBus.register(EventBus.java:163)
 W/System.err:   at de.greenrobot.event.EventBus.register(EventBus.java:133)

接著當(dāng)然就是google 了!

StackOverFlow

最終找到了出現(xiàn)這個(gè)error的原因:

 @Override
public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState) {
  super.onCreate(savedInstanceState, persistentState);
}
@Override
public void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) {
  super.onSaveInstanceState(outState, outPersistentState);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
}

@Override
protected void onSaveInstanceState(Bundle outState) {
  super.onSaveInstanceState(outState);
}

注意在寫(xiě)Activity的時(shí)候,如果使用了public 兩個(gè)Bundle參數(shù)的方法,那么在4.4的機(jī)器上就會(huì)出現(xiàn)crash的情況!

至于為撒就還沒(méi)有去細(xì)究,本質(zhì)上,兩個(gè)參數(shù)的其實(shí)還是走的一個(gè)參數(shù)的方法。。

public void onCreate(@Nullable Bundle savedInstanceState,
    @Nullable PersistableBundle persistentState) {
  onCreate(savedInstanceState);
}

所以在寫(xiě)這些回調(diào)的時(shí)候不要馬虎大意了,記得是復(fù)寫(xiě)protected開(kāi)頭的?。。?/p>

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI