Proguard keep static Inner Class

来源:互联网 发布:李宁淘宝官网 编辑:程序博客网 时间:2024/06/09 19:57

今天在使用Proguard keep一个 静态内部类的时候,混淆完之后一直找不到那个静态内部类,内心抓狂啊。

最后在stackoverflow上找到了答案:

-keepattributes Exceptions,InnerClasses,...-keep class [packagename].A{    *;}-keep class [packagename].A$* {    *;}


其中 A$* 表示所有A的内部类都保留下来,也可以如下使用:

-keepattributes Exceptions,InnerClasses,...-keep class com.xxx.A{ *; }-keep class com.xxx.A$B { *; }-keep class com.xxx.A$C { *; }


这样可以根据需要只保留A的某一个内部类


以下是proguard文件一部分

#-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,*Annotation*,EnclosingMethod-keepattributes Exceptions,InnerClasses,...-keep class com.yulore.reverselookup.api.YuloreWindowConfiguration{ *; }-keep class com.yulore.reverselookup.api.YuloreWindowConfiguration$Builder{ *; }


注意:第一行和第二行都可以解决问题











0 0
原创粉丝点击