您的位置:首页 > 移动开发 > Android开发

Ubuntu平台下,apktool反编译android程序

2018-03-27 19:00 525 查看
突然想起应该把以前反编译的过程写出来。

前言:

反编译只是为了更好的查看别人代码,用于借鉴。看看别人如何实现,提高自己的水平的。不是用于抄袭,侵权的。已成功

工具(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里的源码的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: