首页 > win软件 > 系统工具 > 其他系统工具 > Proguard
Proguard

Proguard

最新版 v5.1
大小

2.64MB

语言

简体

系统

WinAll

类别

其他系统工具

下载

108

更新

2024-01-18

要不点点赞?

35

软件介绍

Proguard最新版是一款非常优秀的JAVA代码混淆工具。通过Proguard软件用户可以删除没用的注释,最大限度地优化字节码文件,还可以使用简短的无意义的名称来重命名已经存在的类、字段、方法和属性。Proguard软件提供了简易的配置教程,能够帮助用户更好的进行代码混淆操作。

软件特色

      对字节码进行优化,移除无用的指令

      可以执行多次优化过程

      可以使代码库更小,更有效,并且更难以逆向工程

软件功能

      帮助用户压缩、优化和混淆Java字节码文件

      删除没有用的类,字段,方法与属性

      只写字段进行快速的删除

      可对没有进行使用的参数进行删除

使用方法

      ProGuar由shrink、optimize、obfuscate和preveirfy四个步骤组成,每个步骤都是可选的,我们可以通过配置脚本来决定执行其中的哪几个步骤。

      混淆就是移除没有用到的代码,然后对代码里面的类、变量、方法重命名为人可读性很差的简短名字。

      那么有一个问题,ProGuard怎么知道这个代码没有被用到呢?

      这里引入一个Entry Point(入口点)概念,Entry Point是在ProGuard过程中不会被处理的类或方法。在压缩的步骤中,ProGuard会从上述的Entry Point开始递归遍历,搜索哪些类和类的成员在使用,对于没有被使用的类和类的成员,就会在压缩段丢弃,在接下来的优化过程中,那些非Entry Point的类、方法都会被设置为private、static或final,不使用的参数会被移除,此外,有些方法会被标记为内联的,在混淆的步骤中,ProGuard会对非Entry Point的类和方法进行重命名。

      那么这个入口点怎么来呢?就是从ProGuard的配置文件来,只要这个配置了,那么就不会被移除。

      ProGuard支持那些种类的优化: 除了在压缩操作删除的无用类,字段和方法外,ProGuard也能在字节码级提供性能优化,内部方法有:

      常量表达式求值

      删除不必要的字段存取

      删除不必要的方法调用

      删除不必要的分支

      删除不必要的比较和instanceof验证

      删除未使用的代码

      删除只写字段

      删除未使用的方法参数

      像push/pop简化一样的各种各样的peephole优化

      在可能的情况下为类添加static和final修饰符

      在可能的情况下为方法添加private, static和final修饰符

      在可能的情况下使get/set方法成为内联的

      当接口只有一个实现类的时候,就取代它

      选择性的删除日志代码

      实际的优化效果是依赖于你的代码和执行代码的虚拟机的。简单的虚拟机比有复杂JIT编译器的高级虚拟机更有效。无论如何,你的字节码会变得更小。

      仍有一些明显需要优化的技术不被支持:

      使非final的常量字段成为内联

      像get/set方法一样使其他方法成为内联

      将常量表达式移到循环之外

      Optimizations that require escape analysis

小编寄语

Proguard是一款非常实用的其他系统工具软件,深受用户喜爱,广受好评。飞速下载站还提供其他其他系统工具软件下载,如buddha.dll,Windows11企业版,牛学长苹果数据管理工具,有需要的同学快点击下载吧!

软件介绍 软件特色 软件功能 使用方法 小编寄语