Android proguard 详解(二)

像 Android 开发基于 java 语言的,很容易被别人反编译出来,一下就相当于裸奔了,特别是用于商业用途的时候,防止反编译是必要的措施。而代码混淆是一种很好防止反编译的方式。

1、APK 的代码混淆。

在 eclipse 的开发环境下,使用 android SDK  自带的 proguard 混淆工具。

主要用到红线框中的两个文件。

在 project.properties 文件中,要指定混淆的文件。如图:

然后,详细的 proguard-project.txt 的写法如下:

-dontwarn 是让指定包名不提示警告

-libraryjars 是指明导入第三方包,不参加混淆

再看看我导入的第三方包:

好了,这些准备工作都 OK ,那就开始导出 APK 了。注意平时调试的时候是不会进行代码混淆的,切记不要直接 COPY /bin 目录下 APK 发布出去哦。导出 APK 的具体流程:

右键 —— > Export ------>  

我用的现在的一个 keystore ,当然你也可以新建一个,这个很容易的。

再输入一个 alias 的密码

选择好 APK 存储的目标目录,点击 Finish ,就可以在指定的目录下看到 APK 了。

但是如果你那个 proguard-project.txt 配置没有写好的话,如下:(有把一句屏蔽掉了)

当点击 Finish 的时候,就会出现下来这种报错:

OK 了之后,你可以看看,混淆之前和之后异同:

2、Android 工程导出 JAR 包的混淆。

我是参照:http://www.cnblogs.com/rayray/p/3421028.html

其实,还是用 Android SDK  里自带的 Proguard ,位于目录 android-sdk-windows/tools/proguard/bin 下面 proguardgui.bat 。双击即可开始,

可以加载已经存在的配置文件,也可以点击 Next ,新建一个。

完成混淆!如果这时候它报错的话,可以先将这些配置文件保存下来,直接修改文件就可以了。

然后,我们可以看看混淆之前和混淆之后的效果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值