Android混淆-ProGuard

upload successful

参考:
https://www.cnblogs.com/duanxz/p/3651418.html

通常情况下,编译后的字节码仍然包含了大量的调试信息:源文件名,行号,字段名,方法名,参数名,变量名等等。这些信息使得它很容易被反编译和通过逆向工程获得完整的程序。有时,这是令人厌恶的。例如像ProGuard这样的混淆器就能删除这些调试信息,并用无意义的字符序列来替换所有名字,使得它很难进行逆向工程,它进一步免费的精简代码。除了异常堆栈信息所需要的类名,方法名和行号外,程序只会保留功能上的等价。

ProGuard

ProGuard是一款免费的Java类文件压缩器、优化器和混淆器。处理的顺序是先压缩,然后优化,最后才进行混淆。

  • 功能:
    • 压缩(Shrink):检测并移除代码中无用的类、字段、方法和特性(Attribute)。
    • 优化(Optimize):对字节码进行优化,移除无用的指令。
    • 混淆(Obfuscate):使用a,b,c,d这样简短而无意义的名称,对类、字段和方法进行重命名。
    • 预检(Preveirfy):在Java平台上对处理后的代码进行预检,确保加载的class文件是可执行的。
  • 使用:
---------------------------- 本 文 结 束 感 谢 阅 读 ----------------------------
欢迎打赏~
0%