Proguard绿色机器人事件公共汽车

时间:2016-11-08 03:19:35

标签: android proguard android-proguard greenrobot-eventbus

我正在我的应用上使用事件总线。在docs之后我添加了

# Green Robot Eventbus
-keepattributes *Annotation*
-keepclassmembers class ** {
    @org.greenrobot.eventbus.Subscribe <methods>;
}
-keep enum org.greenrobot.eventbus.ThreadMode { *; }

到我的<project>/app/proguard-rules.pro

但是当编译我的应用程序时,也会出现错误

ava.lang.RuntimeException: Unable to start activity ComponentInfo{com.rkmax.myapp.MyActivity}:  org.greenrobot.eventbus.e: Subscriber class com.rkmax.myapp.MyActivity and its super classes have no public methods with the @Subscribe annotation

我的应用程序在调试版本上运行良好。也许这是我缺少的东西

1 个答案:

答案 0 :(得分:1)

我的所有订阅注释方法都定义为void methodName(...)我发现我必须明确添加public才能在发布版本上正常工作