如何反编译apk

143 阅读1分钟

方法一:

1.反编译工具

git clone github.com/google/enja… //下载反编译脚本

cd enjarify //进入反编译目录

2.获取目标应用的安装包

使用命令: adb shell dumpsys activity | grep Resume

获取包名如下:ResumedActivity: ActivityRecord{2a7c903 u0 com.xiaomi.shop/com.xiaomi.shop2.activity.MainActivity t1613}

包名为com.xiaomi.shop

查找apk 地址 使用 命令: adb shell pm path com.android.shop 得到目录 /data/app/~~LHXoS2nY2NBTN6zZw_QBSQ==/com.xiaomi.shop-adZiWlX2F1lGE7zG-E2iRw==/base.apk

然后进行导出 使用命令 :adb pull /data/app/~~LHXoS2nY2NBTN6zZw_QBSQ==/com.xiaomi.shop-adZiWlX2F1lGE7zG-E2iRw==/base.apk

将apk 复制到刚刚的目录 即 /enjarify

命令 cp -r 自己的目录/base.apk 自己的目录/enjarify

3.反编译

./enjarify.sh base.apk : 反编译apk

最后生成 base-enjarify.jar 反编译完成

4、下载查看反编译工具

git clone github.com/skylot/jadx… //下载

cd jadx //进入目录

./gradlew dist // build jadx

cd build/jadx //进入 jadx 目录

bin/jadx-gui base-enjarify.jar : 注意: base-enjarify.jar 是刚才反编译出来的

然后就能看到反编译的结果

方法二 (慢)

java -jar apktool_2.5.0.jar d xxx.apk