Android Apk 混淆请看这篇文章:Android混淆 照葫芦画瓢一次成功!
混淆方式下打包APK成功后,怎么检查自己的APK是否混淆成功了呢?
此时需要用到Android 反编译 三件套apktool 、dex2jar、jd-gui (本文末尾有下载)
0、前提:your.apk和apktool 、dex2jar、jd-gui 处于同一目录下
例如 C:\Users\xxx\Desktop\androidThreeGuns
1、解压apk
把your.apk 后缀名改为zip后解压,解压后的目录结构如下:
2、二进制转jar:dex2jar
把classes.dex文件拷贝到dex2jar 目录下,在dex2jar 目录 下执行
d2j-dex2jar classes.dex
顺利的话将直接生成 classes-dex2jar.jar,进入下一步。
如果不顺利,将收到错误:
此时就需要对classes.dex做出一点处理:使用二进制编辑工具打开classes.dex
在编辑工具中把 038 修改为 035,保存并关闭。再次执行
d2j-dex2jar classes.dex
这样就可以得到classes-dex2jar.jar ,位置在dex2jar 目录下。
二进制编辑工具可以使用nodepad++,见参考文章。
3、class文件反编译成java源代码:jd-gui
双击jd-gui.exe, 顺利的话,可以打开图形界面
如果不顺利,将收到错误
此时可以在前提的目录下cmd执行
java -jar jd-gui-1.6.6.jar
也可以打开上面的图形界面。
接下来打开上一步得到的classes-dex2jar.jar 就可以看到反编译后的源代码了。
此时源代码可能混淆的连自己都不认识了,怎么确认这是自己的apk呢。
4、使用apktool反编译apk
CMD切换到前提中的目录下,运行
java -jar apktool_2.3.4.jar d -f your.apk -o vpn
your.apk (要反编译的apk名字) ,vpn(反编译后存到vpn目录下)
运行成功后查看vpn目录,大概长这样:
查看一下res目录中的资源文件,或者直接看AndroidManifest.xml就行了。
---------That’s All! Thank you!----------------
Android反编译三剑客下载
参考文章:
Android反编译三件套 apktool 、dex2jar、jd-gui
Notepad++查看、编辑二进制文件——安装附加组件HexEditor实现