EventBus中的坑

昨天被一个问题坑住了,

  1. java.lang.RuntimeException: Unable to start activity ComponentInfo
    {com.iflytek.mea.vbgvideo/com.iflytek.mea.vbgvideo.activity.MyOrderActivity}:
    org.greenrobot.eventbus.EventBusException: Subscriber class
    com.iflytek.mea.vbgvideo.activity.MyOrderActivity and its super
    classes have no public methods with the @Subscribe annotation
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2678)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2747)
    at android.app.ActivityThread.access 900(ActivityThread.java:187)atandroid.app.ActivityThread H.handleMessage(ActivityThread.java:1585)
    at android.os.Handler.dispatchMessage(Handler.java:111)
    at android.os.Looper.loop(Looper.java:194)
    at android.app.ActivityThread.main(ActivityThread.java:5871)
    at java.lang.reflect.Method.invoke(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:372)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1119)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:885) Caused by: org.greenrobot.eventbus.EventBusException: Subscriber
    class com.iflytek.mea.vbgvideo.activity.MyOrderActivity and its
    super classes have no public methods with the @Subscribe annotation
    at org.greenrobot.eventbus.l.a(Unknown Source)
    at org.greenrobot.eventbus.c.a(Unknown Source)
    at com.iflytek.mea.vbgvideo.activity.MyOrderActivity.onCreate(Unknown
    Source)
    at android.app.Activity.performCreate(Activity.java:6127)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1123)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2631)
    … 10 more

试了几个手机,发现只有我的debug版本正常,打的release版本都有问题,

恍然发现 我的eventbus没有加混淆配置,加上以下配置就解决了,

混淆eventbus配置

-keepattributes Annotation
-keepclassmembers class ** {
@org.greenrobot.eventbus.Subscribe ; }
-keep enum org.greenrobot.eventbus.ThreadMode { *; }

# Only required if you use AsyncExecutor
-keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent {
    <init>(java.lang.Throwable); }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值