美文网首页
Android反编译apk看源代码

Android反编译apk看源代码

作者: Icy_Summer | 来源:发表于2022-07-31 18:10 被阅读0次

简介:

工具 作用 使用方法
apktool 可从 apk 中提取出 resource、dex、manifest、xml 等文件,修改后可 rebuild 出新 apk // decode apk文件
apktool d <target.apk dir> -o <dir>
// rebuild 出 apk 文件
apktool -b <dir> -o <target.apk>
dex2jar 将 dex 文件变成一个(包含class 文件的)jar 文件 sh <dir path>/d2j-dex2jar.sh <dex path>/classes.dex -o <output path>.jar
JD-GUI jar包可视化工具 直接将jar包拖入JD-GUI中即可查看

安装 + 示例

1. 安装 apktool <mac系统>

官网链接: apktool官方网站

  1. Mac系统下最简单安装方式:手动安装
  • 官网下载 Mac wrapper script,如果为脚本文件,直接复制保存为apktool,不要任何扩展名;
  • 下载最新 apktool-2,重命名为 apktool.jar。
  • chmod +x 命令修改两个文件 apktool 和 apktool.jar 的可执行权限。
  • 将 apktool 和 apktool.jar 复制到目录 /usr/local/bin 目录下。


    apktool 和 apktool.jar 保存到桌面 apktool 文件夹中

依次执行命令

VCMac-mini:~ vc$ cd /Users/vc/Desktop/apktool 
VCMac-mini:apktool vc$ chmod +x apktool
VCMac-mini:apktool vc$ chmod +x apktool.jar
VCMac-mini:apktool vc$ ls -al
total 39056
drwxr-xr-x@  5 vc  staff       160  8  1 16:55 .
drwx------@ 44 vc  staff      1408  8  1 16:52 ..
-rw-r--r--@  1 vc  staff      6148  8  1 16:54 .DS_Store
-rwxr-xr-x@  1 vc  staff      2860  8  1 16:53 apktool
-rwxr-xr-x   1 vc  staff  19981711  8  1 13:02 apktool.jar
VCMac-mini:apktool vc$ cp apktool /usr/local/bin
VCMac-mini:apktool vc$ cp apktool.jar /usr/local/bin
/usr/local/bin 文件下 apktool

使用 apktool

VCMac-mini:~ vc$ >apktool d /Users/vc/Desktop/app.apk -o /Users/vc/Destop/

解析出目录如下:


app.apk 反编译文件目录

2. 安装 dex2jar

官方地址:dex2jar github 链接

  • 下载解压到本地


    dex2jar 工具目录
  • 运行命令
VCMac-mini:~ vc$ sh /Users/vc/dex-tools-2.1/d2j-dex2jar.sh /Users/vc/Desktop/appApk/app.apk -o  /Users/vc/Desktop/appApk/app-dex2.jar
dex2jar /Users/vc/Desktop/appApk/app.apk -> /Users/cyou/Desktop/appApk/app-dex2.jar
VCMac-mini:~ vc$
  • 得到的 jar 文件


    app.apk 解析出的 jar 包目录

3. 安装 JD-GUI

官方地址:JD-GUI github 链接

  • 将 JD-GUI 下载解压到本地


    JD-GUI 文件目录
  • 直接打开 JD-GUI,将上一步生成的 app-dex2.jar 拖入 JD-GUI 即可。


    JD-GUI 打开 app-dex2.jar 目录
  • 解压出来的 JD-GUI,打开如果遇到 jdk 1.8 的错误,原因是mac新系统JDK的存储位置和老版本中不一样了,下载 github issue 中的 universalJavaApplicationStub.sh,替换掉 JD-GUI -> 显示包内容 -> Contents -> MacOS -> universalJavaApplicationStub.sh 后,再重新打开。

相关文章

  • 反编译详解

    Android 反编译 1. Apk反编译得到Java源代码 使用dex2jar.bat,jd-gui.exe 具...

  • 反编译Android APK及防止APK程序被反编译

    反编译Android APK及防止APK程序被反编译 怎么逆向工程对Android Apk 进行反编译 googl...

  • Android反编译apk看源代码

    简介: 工具作用使用方法apktool可从 apk 中提取出 resource、dex、manifest、xml ...

  • apktool之APK解压、打包

    Android apktool是一个用来处理APK文件的工具,可以对APK进行反编译生成程序的源代码和图片、XML...

  • 反编译

    Android APK反编译easy 详解

  • 2018-08-24学习笔记

    手把手教你使用Android studio生成正式签名的APK文件 9.5.3 Android Apk 反编译 &...

  • Android逆向工程

    一 : 反编译 获取到需要的apk 包,利用反编译工具进行反编译. 反编译工具:Android Killer 首先...

  • Android APK 反编译与安全

    APK 反编译 一、APK反编译基本原理 1.APK分析 assets文件夹:原始资源文件夹,对应着Android...

  • smali 语言

    smali是android apk反编译后得到的文件,android反编译后可以得到jar或者得到smali文件A...

  • Mac上使用ApkTool进行反编译

    Android 反编译 资源文件获取: -> 打开AndroidCrackTool软件对指定apk文件进行反编译 ...

网友评论

      本文标题:Android反编译apk看源代码

      本文链接:https://www.haomeiwen.com/subject/dturwrtx.html