记录Gradle编译混淆导致反射找不到方法出错问题

1.通配符*,匹配任意长度字符,但不含包名分隔符(.)
2.通配符**,匹配任意长度字符,并且包含包名分隔符(.)

3.通配符***,匹配任意参数类型


#不混淆指定的类

-keep public class com.kawa.easyconvey.utils.Md5Utils  { *; }


#不混淆指定的包路径

-keep public class com.kawa.easyconvey.utils.**  { *; }


#不混淆指定类的具体方法
-keepclassmembers class com.kawa.easyconvey.activity.FunctionActivity {

    #这个是具体方法 

    private void handlerItemClick(int);   

}}


#不混淆指定的第三方包

-dontwarn com.kawa.aspectjlib.**

-keep public class com.kawa.aspectjlib.**{*;}

如果-dontwarn和-keep 结合使用,意思是保持包里面的所有类和所有方法而不混淆,并且是编译的时候不要警告找不到这个包里面的类的相关引用。

猜你喜欢

转载自blog.csdn.net/u014476720/article/details/81015318