Proguard-混淆
作者:互联网
ProGuard工具是一个免费的 Java类文件的压缩,优化,混肴器。它删除没有用的类,字段,方法与属性。使字节码最大程度地优化,使用简短且无意义的名字来重命名类、字段和方法 。
git地址:GitHub - Guardsquare/proguard: ProGuard, Java optimizer and obfuscator 目前是更新到7.2.0-beta5
下载压缩包
解压后执行:proguardgui.bat 路径\proguard-7.2.0-beta5\bin
执行proguardgui.bat
配置文件保存为.pro格式的文件
执行的时候 一般会有一个报错
这个时候 就需要在配置文件中将警告忽略 错误提示里面也会有命令
在配置文件中添加参数:-dontwarn com.**
:此行用于忽略-当前类找不到依赖的警告,当前表示包 com下找不到依赖的警告全都忽略
示例:
//需要进行混淆的jar -injars 'C:\control.jar' //混淆后的jar存储位置以及jar名称 -outjars 'C:\control-proguard.jar' //忽略包 com.下所有的警告 -dontwarn com.** //保留 com下LockTemplate类中所有成员,当前类不会被混淆 -keep class com.LockTemplate{*;} //保留 com下MinaServer类中所有成员,当前类不会被混淆 -keep class com.MinaServer{*;} //保留 com下CustomProtocolCodecFactory类中的方法 getEncoder、getDecoder,当前类会被混淆,但方法会被保留 -keepclassmembers class com.CustomProtocolCodecFactory{ *** getEncoder(...); *** getDecoder(...); } -keepclassmembers class com.CustomProtocolEncoder{ *** encode(...); } -keepclassmembers class com.CustomProtocolDecoder{ *** doDecode(...); } -keepclassmembers class com.MinaServerHandler { *** messageReceived(...); }
标签:混淆,...,jar,Proguard,keepclassmembers,com,class 来源: https://www.cnblogs.com/zqdf/p/15774651.html