我在我的应用中使用RoboGuice的EventManager,如下所示https://code.google.com/p/roboguice/wiki/Events#Creating_your_Own_Events
并且它在调试版本中完美运行,但事件不会在发布版本中触发 - 可能是由于ProGuard混淆。
我试图保留ProGuard处理的相关方法和类,但我想我做错了什么:
这是我尝试过的ProGuard配置
-keep class com.myapp.events.* # keep all the event classes
-keepclasseswithmembers class * { void on*Event(*); } # keep methods named on*Event, eg. onUserClickedEvent
我的主要活动类有处理程序,例如:
public void onUserClickedEvent( @Observes UserClicked event) {
...
}
答案 0 :(得分:0)
在阅读了更多关于Proguard的内容后解决了......我更改了函数签名并将Proguard配置修改为:
-keep class com.myapp.events.*
-keepclasseswithmembers class * {
void onEvent*(...);
}