MAC系统反编译Android apk

工具描述

  • 需要如下三个工具:apktool, dex2jar, jd-gui
  • 工具的下载地址:下载相关工具

工具的安装和使用

通过apktool工具查看apk的资源文件
  • apktool最大幅度的还原apk的资源,通过apktool处理过的apk包,可以获取,替换里面的资源文件,然后重新打包,签名生成破解的apk。
  • 安装apktool
    • 把下载好的apktool.jar & apktool放到/usr/local/bin目录下
    • 对这个两个文件执行命令:chmod +x,赋予他们可执行的权限。
  • 使用apktool解压apk包
localhost:apk_tool fhw$ apktool d Demo.apk
I: Using Apktool 2.3.1 on Demo.apk
I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
S: WARNING: Could not write to (/Users/fhw/Library/apktool/framework), using /var/folders/7t/pfb49qtn37s5syjrxy0lzr4h0000gn/T/ instead...
S: Please be aware this is a volatile directory and frameworks could go missing, please utilize --frame-path if the default storage directory is unavailable
I: Loading resource table from file: /var/folders/7t/pfb49qtn37s5syjrxy0lzr4h0000gn/T/1.apk
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Baksmaling classes.dex...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...
localhost:apk_tool fhw$

进入解压后的目录,看到的目录结构如下:

localhost:apk_tool fhw$ cd Demo
localhost:Demo fhw$ ls
AndroidManifest.xml apktool.yml     assets          original        res         smali
localhost:Demo fhw$

进行代码的反编译

  • 解压apk包:unzip Demo.apk,解压后,注意生成的classes.dex代码文件
-rw-r--r--   1 fhw  staff    12528 12 31  1979 AndroidManifest.xml
drwxr-xr-x   6 fhw  staff      192  3 30 15:40 META-INF
drwxr-xr-x   4 fhw  staff      128  3 30 15:40 assets
-rw-r--r--   1 fhw  staff  1804632 12 31  1979 classes.dex
drwxr-xr-x  36 fhw  staff     1152  3 30 15:40 res
-rw-r--r--   1 fhw  staff   264832 12 31  1979 resources.arsc
  • 解压dex-tools-2.1-SNAPSHOT.zip, 生成dex2jar工具:unzip dex-tools-2.1-SNAPSHOT.zip,并把classes.dex文件拷贝到解压后目录中,并执行命令:sh d2j-dex2jar.sh classes.dex,生成classes-dex2jar.jar文件备用。
  • 通过jd-gui查看class文件:通过命令:java -jar jd-gui-1.4.0.jar 打开jd-gui,然后打开刚刚生成的classes-dex2jar.jar文件,就可以查看class文件了。
    jd-gui界面表现
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值