Proguard简介:(废话多说一遍哈哈哈)
Proguard可以移除无用代码,或者使用语意模糊的名称来重命名类、变量和方法,以此达到压缩、优化和混淆代码的目的。这样,生成的APK体积更小,并且不容易被逆向工程。
混淆代码这个是大家平常常用的,而且平时一般都是判断是否是DEBUG环境来输出日志的(1.直接判断BuildConifg.DEBUG;2.自己定义LOG输出,统一判断),下面介绍一种小技巧,利用Proguard去除日志信息:
-assumenosideeffects class android.util.Log {
public static *** d(...);
}
意思是移除所有使用android.util.Log类中d()方法的地方,不管这个方法的参数和返回类型是什么。这个配置和Log类的d();方法匹配,因此所有调试日志都会被移除。
这只是简单的一种用法 其他的用法来发散自己的思维吧。
---------------------
每天进步一点点
----------------------