proguard代码混淆

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_27623401/article/details/79446399

1、proguard到底是什么

        Proguard工具是用来压缩,优化,混淆我们的代码,主要作用是可以移除代码中的无用类,字段方法和属性是可以混淆。是对于即将要发布出去的app进行重新组织和处理。使代码不容易被反编译,即使反编译成功也很难读懂代码的意义。

2、Proguard技术的功能

        1、压缩:在打包的时候通过proguard检查并移除我们代码中没有用到的类、字段、属性。在开发过程中有可能用到别人开发过的业务模块,在有些没有用到的类或者代码时如果把它删掉的话又怕以后开发会用到。这时proguard就可以把无用的类删掉同时又不影响开发。

        2、优化:对Javac编译好的字节码文件进行优化,他会移除那些无用的本地class里面的那些指令。

        3、混淆:比如使用1234abcd之类的无意义命名,这样类或者字段方法有可能会重名,这时即使app被反编译,别人也很难读懂。他会把代码中有意义的名词变成无意义的名词。

        4、预检测:java平台上对处理后的代码再次进行检测。

EntryPoint:可以理解成是一种标记。是Proguard过程中不会被处理的类或方法,在proguar进行压缩的时候,会在EntryPoint类中搜索出哪些类和成员在使用。这个标记就是配置我们不希望混淆的类或者方法。

猜你喜欢

转载自blog.csdn.net/qq_27623401/article/details/79446399