Android SDK 自带proguardgui.bat混淆jar包

本文介绍了如何使用Eclipse IDE和Android SDK自带的proguardgui.bat工具对jar包进行混淆,以减少方法数,应对65K方法限制。详细步骤包括设置输入输出路径、添加库jar、配置混淆规则等。同时,文章提到了混淆的风险,如混淆错误、运行错误和调试困难,并列举了Android开发中不能混淆的代码类型,如系统组件、资源引用、序列化等。

前言:现在的项目还是使用的EclipseIDE,导致方法数最终还是来到了65535的65K问题,关于分包,还是换AS都有一大堆教程,为了应付这次的项目上线,使用了proguardgui.bat 把jar进行混淆,对jar里没有调用到的方法,删除掉,来避免65k问题。

此处用到的混淆,是为了删除没有调用到的方法数。把APP中调用jar的类找出来,在配置文件中配置上。

1、sdk\tools\proguard\bin\proguardgui.bat来混淆
2、依次点击Input/Output选项->add input->导入刚刚生成的x.jar文件,再点击add Output 选个路径和设置个文件名称(就是混淆后要得到的jar包)
3、在下面有个Library jars编辑区, 这里一定要注意,把程序中引用的第三方jar包通过add 加入,然后把Android-support-v4.jar(每个工程的libs下都应该有)和android.jar(sdk\platforms\android-20\android.jar)文件加入
4、下一步到Shrinking,这个步骤里面是设置哪些不需要混淆的,如果会用可以在这里直接设置,如果更愿意用代码写出来可以先不设置,在后面的配置文件中直接写规则
5、一直下一步到Process,如果第五步中已经设置过混淆规则,则直接运行右下角的Process!,如果顺利通过了,说明你的配置成功了,在output路径下找到混淆的jar包。如果第五步没有设置混淆规则,则选择右下角的saved configuration,保存配置文件,然后用text文本打开,通过代码来设置规则,之后回到ProGuard窗口并回到第一步的ProGuard ,通过load configuration导入刚刚修改过的配置文件,再运行Process!,这样jar包就生成了,如果规则有问题可以重复修改配置文件,直到运行正常。


关于混淆:

缺省情况下,proguard 会混淆所有代码,但是下面几种情况是不能改变java 元素的名称,否则就会这样就会导致程序出错。
一, 我们用到反射的地方。
二, 我们代码依赖于系统

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值