关闭

apk反编译

175人阅读 评论(0) 收藏 举报
分类:

链接: https://pan.baidu.com/s/1b24opg 密码: f2nb

第一步,准备工作。将apktool目录下的三个文件(aapt、apktool、apktool.jar)复制到/usr/local/bin目录下,这样就已经配置好环境变量了,在终端中使用 apktool 命令查看是否成功,这里用的是目前最新的2.1.1版,如下图。


复制文件

使用的是2.1.1版

       第二步,反编译资源文件。任意下载一个安卓App(这里以meilijia.apk为例),记住下载路径,在终端中,用cd命令进到这个apk文件的目录下,再执行apktool d meilijia.apk命令,如下图。


执行 apktool d 命令

      执行成功后,会在当前目录下生成一个meilijia文件夹,点进去就可以看到相关apk的资源文件了,选中AndroidManifest.xml,然后空格键,就可以预览反编译后的内容了,如下图。


反编译资源

      第三步,反编译java 源文件。这里要用到dex2jar和jd-gui,将meilijia.apk重命名改成meilijia.zip,然后使用解压缩软件解压,得到一个meilijia-1目录(因为当前目录已经存在meilijia目录了,这个无关紧要),拿到里面的classes.dex文件,将这个文件复制到dex2jar-2.0目录下,如下图。


解压 meilijia.zip 文件

复制 classes.dex 文件

      同样,使用cd命令进入dex2jar-2.0目录,执行sh d2j-dex2jar.sh classes.dex命令,成功后会在当前目录下生成一个classes_dex2jar.jar文件,如下图。


生成 classes_dex2jar.jar 文件

      最后,用jd-gui工具打开这个jar包就可以看到java源代码了,如下图。


反编译 java 源码

    如果在第三步执行sh d2j-dex2jar.sh classes.dex命令时提示类似“d2j-dex2jar.sh: line 36: ./d2j_invoke.sh: Permission denied”的错误,可以执行sudo chmod +x d2j_invoke.sh命令来增加可执行权限。

      如果上面的文件链接不可用,这里附上备份地址:安卓反编译工具(Mac)下载

      至此,全部步骤结束。另外,在Windows上反编译apk比较简单,这里推荐一个很强大的工具:ApkIDE。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:21807次
    • 积分:671
    • 等级:
    • 排名:千里之外
    • 原创:40篇
    • 转载:33篇
    • 译文:1篇
    • 评论:8条
    文章分类
    最新评论