RoboGuice @Observes在发布版本中不起作用

时间:2014-02-18 13:15:07

标签: android proguard roboguice

我在我的应用中使用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) {
    ...
}

1 个答案:

答案 0 :(得分:0)

在阅读了更多关于Proguard的内容后解决了......我更改了函数签名并将Proguard配置修改为:

-keep class com.myapp.events.*  
-keepclasseswithmembers class * { 
   void onEvent*(...); 
}