我有共同的「ClassNotFoundException的」 issue EventBus與4.4.2設備, 它在FAQGreenRobot EventBus,ClassNotFoundException的還有用戶使用後的指數
即使troubleshot我第一次仔細檢查了,我沒有用任何未被佔用的生命週期方法,但我沒有。然後我更新到EventBus 3.0.0,並使用「索引用戶索引」。但錯誤是還在這裏,我仍然可以在我的堆棧跟蹤看到,建設者正試圖用反身性(findUsingReflectionInSingleClass
):
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.os.PersistableBundle" on path: DexPathList[[zip file "/data/app/com.m360.android.debug-6.apk"],nativeLibraryDirectories=[/data/app-lib/com.m360.android.debug-6, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
at java.lang.Class.getDeclaredMethods(Native Method)
at java.lang.Class.getPublicMethodsRecursive(Class.java:894)
at java.lang.Class.getMethods(Class.java:877)
at org.greenrobot.eventbus.SubscriberMethodFinder.findUsingReflectionInSingleClass(SubscriberMethodFinder.java:157)
at org.greenrobot.eventbus.SubscriberMethodFinder.findUsingInfo(SubscriberMethodFinder.java:88)
at org.greenrobot.eventbus.SubscriberMethodFinder.findSubscriberMethods(SubscriberMethodFinder.java:64)
at org.greenrobot.eventbus.EventBus.register(EventBus.java:136)
at com.m360.android.activity.PlayerActivity.onStart(PlayerActivity.java:977)
at ...
在Player Activity
:
@Subscribe(threadMode = ThreadMode.MAIN)
public void onEvent(QuestionFragment.EnableNextEvent event) {
/* ...... */
}
@Override
protected void onStart() {
super.onStart();
EventBus.builder().addIndex(new MyEventBusIndex()).build().register(this);
}
@Override
protected void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}
另外MyEventBusIndex
可用,所以我想我的構建文件很好。
請讓我知道,如果你看到有什麼問題。
你確定你沒有重寫Activity中的onCreate(Bundle savedInstanceState,PersistableBundle persistentState)方法嗎?這聽起來像甚至只是重寫它(不僅在它內部調用「訂閱」)可能導致此崩潰。 – COBB
我仔細檢查,就像我說過的一樣,既然你提出了疑問,我再次檢查。在我的所有活動的家長中找到它......現在很好地工作,非常感謝! –
這就是它有時如此:)乾杯。 – COBB