Android Roboguice不与Proguard一起工作

Android Roboguice不与Proguard一起工作,android,proguard,roboguice,Android,Proguard,Roboguice,这是我的proguard-project.txt: -keep class com.google.inject.** { *; } -keep class javax.inject.** { *; } -keep class javax.annotation.** { *; } -keep class roboguice.** { *; } -keepattributes Signature -keepattributes *Annotation* -keep class roboguice.

这是我的proguard-project.txt:

-keep class com.google.inject.** { *; }
-keep class javax.inject.** { *; }
-keep class javax.annotation.** { *; }
-keep class roboguice.** { *; }

-keepattributes Signature
-keepattributes *Annotation*
-keep class roboguice.**

-keep class com.google.inject.** { *; }


-keepclassmembers class * {
    @com.google.inject.Inject <fields>;
    @com.google.inject.Inject <init>(...);
}
-keep class javax.inject.** { *; }
-keep class javax.annotation.** { *; }


-keep class com.appmanager.ui.activities.** { *; }
-keep class com.appmanager.ui.fragments.** { *; }
我收到500条警告:


如何解决此警告并防止代码崩溃?

RoboGuice当前保持最新的官方ProGuard设置列表可在

对我来说,文件中没有的部分或者不是默认的部分,我最初跳过的部分是:

-keep class com.mynamespace.MyRoboGuiceModule { *; }
-keep class com.mynamespace.SomeObjectThatGetsInjected { *; }
-dontobfuscate
我真的不喜欢消除混淆。但是它使ProGuard不必一个接一个地上每堂课就可以轻松地开始工作。在从公共崩溃报告映射堆栈跟踪方面,这少了一步

您还可以将以下内容添加到上述内容中以使其进行编译,但它仍可能在运行时崩溃。因此,请始终测试编译版本中的所有代码路径

-dontwarn roboguice.**
-dontwarn org.roboguice.**