欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux下反编译Android apk文件

程序员文章站 2022-07-01 15:29:52
...

本人系统为Ubuntu16.04 LTS

1、工具准备

反编译过程中需要用到三个工具:apktooldex2jarjd-Gui

apktool:反编译出apk所需要的资源文件和布局设置文件。

dex2jar:反编译出jar文件,即apk的源程序字节码

jd-GUI:查看dex2jar反编译出来的jar文件,使用该工具可以看到字节码对应的源代码。

以上三个工具点开链接按照Install Instructions 安装就可以了。

2、反编译步骤

  • 反编译出资源文件

在终端中输入一下命令:

apktool  d  ./xxx.apk(apk的路径)

当前目录下就会生成一个名为xxx的目录,里面包含了反编译出来的各种资源文件,其中其中res表示资源文件,smali表示源代码,不过是字节码,不能直接查看。

  • 反编译源代码

在apk所在目录打开终端,输入一下命令:

sh xxx/d2j-dex2jar.sh -f xxx.apk

其中 xxxx/d2j-dex2jar.sh中xxx为dex2jar的根目录  xxx.apk为需要反编译的apk。命令运行后会在当前目录下生成一个xxx-dex2jar.jar文件。

  • 查看源代码

打开jd-gui工具,选择打开上述得到的xxx-dex2jar.jar文件即可查看apk对应的代码。