3

を使用した後、私は4.4.2デバイスと共通の「ClassNotFoundExceptionが」issue EventBus、 を持っているそれはでも、私が最初に私が使用していないことをダブルチェックFAQGreenRobot EventBus、ClassNotFoundExceptionが加入者指数

にtroubleshotています任意の余分なライフサイクルメソッドが、私はしませんでした。その後、EventBus 3.0.0にアップデートし、「suscribers index」を使用しました。しかし、バグはまだここにいると私はまだビルダーは、再帰性(findUsingReflectionInSingleClass)を使用しようとしているというのが私のスタックトレースで見ることができます:Player Activity

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 ... 

@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が利用可能ですので、私のビルドファイルは問題ありません。

問題が表示された場合は教えてください。

+1

アクティビティでonCreate(Bundle savedInstanceState、PersistableBundle persistentState)メソッドをオーバーライドしていませんか?それをオーバーライドしただけでも(その中で "subscribe"と呼ぶのではなく)、このクラッシュを引き起こす可能性があります。 – COBB

+1

私は言ったように私は二重チェックし、あなたは疑いを提起して以来、私は再びチェックした。すべての私の活動の親でそれを見つけました...それは今、大変ありがとうございます! –

+1

それはそれが時々行く方法です:)乾杯。 – COBB

答えて

3

私はGalaxy s3(アンドロイド4.3)で同じエラーが発生しました。 APIレベルが21未満で、PersistableBundleを直接参照しているAndroidで発生します。

「サブスクライバインデックスを持つEventBus 3」は、私にとって(あなたとの)あなたを助けませんでした。 回避策は私が見つけたhereです。

エラー/原因のビットは、hereです。

P.S. eventbus 3.0.0

+0

こんにちは、私は数週間前に私のプロジェクトからevenbusを拭きました。私はそれが最高だと思う。答えをありがとう! –

関連する問題