Android学习心得(13) --- Android代码混淆(1)
来源:互联网 发布:oracle sql优化 编辑:程序博客网 时间:2024/05/01 14:56
我在博客上发表一些我的Android学习心得,希望对大家能有帮助。
这一篇我们讲述一下最新的ADT环境下如何进行Android混淆
在新版本的ADT创建项目时,混码的文件不再是proguard.cfg, 而是project.properties和proguard-project.txt。 我们把之前配置都配置好了,proguard已经在包含在sdk中了。
环境配置参考 Android学习心得(1) --- MAC下Android环境的搭建
新建一个项目的时候,会自动生成project.properties和proguard-project.txt文件, 无需自己新建,如果你的项目无法自动生成,那么你就要检查一下你的ADT版本了
如果需要对项目进行全局混码,只需要进行一步操作:将project.properties的中“#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt”把“#”去掉就可以了。
由于apk文件的混淆往往是伴随着文件的压缩和代码的优化问题,混淆的apk文件解压转换为jar文件, 使用ju-gui打开以后有一个不太引人注意的细节问题---其中找不到资源文件类。 利用这一特性,我们可以直接利用apktool解压apk文件,对其smali文件的文件名进行分析, 如果存在一个或以上的资源的smali文件,就可以证明该apk文件没有混淆,反之,则说明已经是混淆过了的文件。 我们将没有混淆和混淆过的apk分别使用Eclipse导出并签名
参考Android学习心得(12) --- APK签名keystore
分别通过dex2jar和jd-gui查看源代码
明显的发现,第二个显示的源代码已经被混淆过了,产生了a,b,c三个类,R.class已经不见了。另外一个明显的区别是,混淆过后的apk大小是未混淆的apk三分之一,代码往往经过压缩和优化。
0 0
- Android学习心得(13) --- Android代码混淆(1)
- Android学习心得(14) --- Android代码混淆(2)
- android 代码混淆(jar包混淆)
- Android代码混淆(上)
- Andoird 混淆代码学习心得(上)
- Android 代码混淆(1)
- Android 简化代码 (代码混淆)
- Android Native 代码 Release 编译 - 混淆 Native 代码
- Android项目代码混淆(加密),添加混淆配置文件
- Android 上线前的代码混淆之(二)混淆
- Android 代码混淆(常用框架混淆配置)
- android 混淆(proguard)代码-简单版
- Android的代码混淆(ProGuard)
- android 代码混淆经验总结(转载)
- Android反编译与加密(代码混淆)
- Android代码混淆技术总结(一)
- Android Studio的Proguard(代码混淆)
- [Android]混淆Android代码
- hdu 5131 Song Jiang's rank list(模拟)
- HDU 2871 Memory Control(线段树·区间合并·Vector)
- leetcode 128: Longest Consecutive Sequence
- uva 11795 状压dp
- typedef和#define究竟有什么区别?
- Android学习心得(13) --- Android代码混淆(1)
- 软件架构设计
- Valgrind简单用法
- 双向链表,定义一个节点,具有next、previous和data属性
- MFC修改菜单
- mongodb异常关闭后,再启动需要删除mongod.lock文件
- POJ2007--Scrambled Polygon
- 库和框架的区别
- 倒排索引