突然想起应该把以前反编译的过程写出来。
前言:
反编译只是为了更好的查看别人代码,用于借鉴。看看别人如何实现,提高自己的水平的。不是用于抄袭,侵权的。已成功
工具(Ubuntu平台下):
a. apktool: 主要将apk中,资源文件及XML文件进行反编译。
https://download.csdn.net/download/m0_37433067/10311837
b.dex2jar:将dex文件转为jar包及.class文件
https://download.csdn.net/download/m0_37433067/10311848
c.jd-gui-0.3.3.linux.i686: jar\dex.samil源码查看工具
https://download.csdn.net/download/m0_37433067/10311855
工具准备完成。解压好几个文件。使用到解压软件,安装unzip与zip我不过多说明
2.dex2jar的使用
先将.apk解压成文件夹。可以直接解压的,也可以转换成zip解压。得到HC-PDA文件夹
将里面的classs.dex文件移到dex2jar文件夹中,到时会用到里面的dex2jar.sh。
现在该开启新终端了,cd到该文件夹中。
./dex2jar.sh classes.dex 解压完成。得到图中的classes_dex2jar.jar包。这时classes.dex可以删除了,方便下次反编译。3.jd-gui的使用
直接双击jd-gui.在菜单栏file->open file->jar包。即可
可能会有问题,我碰到了问题,但忘记是什么了,应该是lib兼容的问题
4.apktool的使用
将apk复制到apktool-linux文件夹中,使用./apktool d -f HC_PDA.apk解压资源文件
好,得到HC-PDA文件夹,里面的资源文件就出来了。5.总结一下。
apktool 用于解压资源文件。
dex2jar 用于将classes.dex反编译成jar包
jd-gui 用于查看jar里的源码的