Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)

准备工作

  1. 下载apktool根据提示安装

    Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)_第1张图片

    1. 复制 wrapper script 中的代码,另存为本地 "apktool" 文件,无后缀
    Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)_第2张图片
    • 下载 apktoolxxx.xxxx.jar,修改名字为 "apktool.jar"
    Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)_第3张图片
    • 将 "apktool" 和 "apktool.jar"拖进"/usr/local/bin"目录下,或命令行之行:
      $ sudo -i cp ~/Desktop/apktool ~/../../usr/local/bin
      $ sudo -i cp ~/Desktop/apktool.jar ~/../../usr/local/bin


      Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)_第4张图片
    • 添加它俩权限:
      $ sudo chmod +x apktool
      $ sudo chmod +x apktool.jar

    • 运行,查看是否安装成功
      apktool -v


      Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)_第5张图片
  • 下载 dex2jar,解压,修改权限:
    chmod +x /home/.../d2j-dex2jar.sh /home/.../d2j_invoke.sh

开始反编译

Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)_第6张图片
  1. 准备.dex文件

    • 新建 apk 文件夹,放入 apk 文件(文件名不可包含中文,例子是maple.apk),cd进目录执行:
      apktool d maple.apk
      

      在apk文件夹下生成xxx文件夹,内部包含AndroidManifest.xml, assets, build, lib, original, res等文件


      Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)_第7张图片
  2. 反编译.dex

    • 将.apk后缀改成.rar,解压,拿到classes.dex文件,(多个dex文件则多次执行第二步)

      Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)_第8张图片

    • cd进dex2jar文件夹,执行:

        ./d2j-dex2jar.sh /Users/fred/Desktop/apk/classes.dex
      

      在dex2jar文件夹下生成 maple.jar



      得到结果

  3. 查看jar文件

    • 用JD_GUI,打开maple.jar文件,查看java代码
      Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)_第9张图片
    • 当出现//INTERNAL ERROR时,下载Luyten 再打开即可

      Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten)_第10张图片

参考

  • MAC上反编译android apk---apktool, dex2jar, jd-jui安装使用(含手动签名)
  • Mac下使用dex2jar

你可能感兴趣的:(Mac 下反编译 apk (apktool+dex2jar+JD_GUI+Luyten))