Android -- jar包混淆

时间:2024-05-21 15:48:31

1. 什么是代码混淆

代码混淆是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为。防止其它用户使用反编译软件获得我方代码,增加代码的安全性。

例如我们与其它公司进行技术协作,我们需要为对方提供Jar包,但不想将源代码泄露给对方,这时可以通过代码混淆技术来对代码进行保护。

2. Android系统中怎样对jar包进行混淆

android的sdk中提供了专门进行代码混淆的工具(proguardgui.bat),文件位置:

{ANDROID_SDK}\tools\proguard\bin\proguardgui.bat,此工具是带图形界面的

1) 运行

双击运行proguardgui.bat执行文件,弹出操作界面

Android -- jar包混淆


2)选择Next,进入Jar包选择界面

在上半部分的面板中,点击Add Input..按钮选择需要进行混淆的jar包

点击Add output...按钮选择混淆后Jar包的输出位置,如图所示,我选择的是对D:\test.jar进行混淆,混淆完成后输出到D:\output.jar

如果所要混淆的jar引用了其它jar包,需要在下面的面板进行选择,如图所示,默认会有rt.jar

选择完成后点击Next

Android -- jar包混淆


3) 进入Shrinking面板,选择需要保护的类

对Jar包进行混淆,在Keep面板中需要将Library打上勾,如图所示,选择完成后点击Next

Android -- jar包混淆


4)进入到Obfuscation面板,默认即可,直接点击Next

5)进入到Optimization面板,默认选项即可,直接点击Next

6) 进入到Information面板,直接点击Next

7) 进入到Process面板,点击Process按钮开始执行混淆并查看混淆结果

可以点击Save Configuration保存本次操作的配置文件,下次直接在首界面点击Load configuration按钮即可

Android -- jar包混淆