Android代码混淆是必须的,java层代码如果不做混淆等于把源代码送人了。那如何做混淆呢?

之前一般都是提到采用proguard.cfg,但使用新版本ADT后没有这个文件了,取而代之的是proguard-project.txt文件。那该如何使用呢?

在项目根目录下有个project.properties,里面有如下内容:

# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt

意思很清楚,将这段注释取消掉即可。

结果我取消掉之后依然有问题,反编译出来代码没有做混淆,试过n次依然不行。

最后,是因为没有经验,我们平时只需要点击运行即可,以为这样生成的apk就可以了,但其实这个apk是debug版本的,不会根据这些配置变动的。

所以需要手动导出一个apk文件,具体方法:

项目上点击右键->Android Tools->Export Unsigned Application package...,因为我的没有签名就选择这个,如果有签名选择Export Signed Application Package..。

完工。

更多相关文章

  1. Android热修复原理(一)热修复框架对比和代码修复
  2. android编译系统的makefile文件Android.mk写法
  3. Android Studio 项目模板修改
  4. android文件系统挂载分析
  5. Android项目构建
  6. 如何在Android上编写高效的Java代码
  7. Android冷启动实现app秒开的实现代码
  8. Android基于多触控的图片缩放和拖动代码实现

随机推荐

  1. shell脚本编写守则
  2. 9.4封装的概述
  3. 手把手教你做用户画像体系规划
  4. 9.4成员变量和局部变量的区别
  5. 9.3使用变量的规则
  6. 如何学习一门新的编程语言?
  7. 如何一步一步构建推荐系统(上)
  8. 如何一步一步构建推荐引擎(下)
  9. 送你一份perl书单
  10. Linux下增加2G的交换分区