1 需求

官网链接:

GitHub - skylot/jadx: Dex to Java decompiler


2 语法

jadx - dex to java decompiler, version: 1.4.5usage: jadx [options] <input files> (.apk, .dex, .jar, .class, .smali, .zip, .aar, .arsc, .aab)
options:-d, --output-dir                    - output directory-ds, --output-dir-src               - output directory for sources-dr, --output-dir-res               - output directory for resources-r, --no-res                        - do not decode resources-s, --no-src                        - do not decompile source code--single-class                      - decompile a single class, full name, raw or alias--single-class-output               - file or dir for write if decompile a single class--output-format                     - can be 'java' or 'json', default: java-e, --export-gradle                 - save as android gradle project-j, --threads-count                 - processing threads count, default: 8-m, --decompilation-mode            - code output mode:'auto' - trying best options (default)'restructure' - restore code structure (normal java code)'simple' - simplified instructions (linear, with goto's)'fallback' - raw instructions without modifications--show-bad-code                     - show inconsistent code (incorrectly decompiled)--no-imports                        - disable use of imports, always write entire package name--no-debug-info                     - disable debug info--add-debug-lines                   - add comments with debug line numbers if available--no-inline-anonymous               - disable anonymous classes inline--no-inline-methods                 - disable methods inline--no-finally                        - don't extract finally block--no-replace-consts                 - don't replace constant value with matching constant field--escape-unicode                    - escape non latin characters in strings (with \u)--respect-bytecode-access-modifiers - don't change original access modifiers--deobf                             - activate deobfuscation--deobf-min                         - min length of name, renamed if shorter, default: 3--deobf-max                         - max length of name, renamed if longer, default: 64--deobf-cfg-file                    - deobfuscation map file, default: same dir and name as input file with '.jobf' extension--deobf-cfg-file-mode               - set mode for handle deobfuscation map file:'read' - read if found, don't save (default)'read-or-save' - read if found, save otherwise (don't overwrite)'overwrite' - don't read, always save'ignore' - don't read and don't save--deobf-use-sourcename              - use source file name as class name alias--deobf-parse-kotlin-metadata       - parse kotlin metadata to class and package names--deobf-res-name-source             - better name source for resources:'auto' - automatically select best name (default)'resources' - use resources names'code' - use R class fields names--use-kotlin-methods-for-var-names  - use kotlin intrinsic methods to rename variables, values: disable, apply, apply-and-hide, default: apply--rename-flags                      - fix options (comma-separated list of):'case' - fix case sensitivity issues (according to --fs-case-sensitive option),'valid' - rename java identifiers to make them valid,'printable' - remove non-printable chars from identifiers,or single 'none' - to disable all renamesor single 'all' - to enable all (default)--fs-case-sensitive                 - treat filesystem as case sensitive, false by default--cfg                               - save methods control flow graph to dot file--raw-cfg                           - save methods control flow graph (use raw instructions)-f, --fallback                      - set '--decompilation-mode' to 'fallback' (deprecated)--use-dx                            - use dx/d8 to convert java bytecode--comments-level                    - set code comments level, values: error, warn, info, debug, user-only, none, default: info--log-level                         - set log level, values: quiet, progress, error, warn, info, debug, default: progress-v, --verbose                       - verbose output (set --log-level to DEBUG)-q, --quiet                         - turn off output (set --log-level to QUIET)--version                           - print jadx version-h, --help                          - print this helpPlugin options (-P<name>=<value>):1) dex-input: Load .dex and .apk files- dex-input.verify-checksum       - verify dex file checksum before load, values: [yes, no], default: yes2) java-convert: Convert .class, .jar and .aar files to dex- java-convert.mode               - convert mode, values: [dx, d8, both], default: both- java-convert.d8-desugar         - use desugar in d8, values: [yes, no], default: noExamples:jadx -d out classes.dexjadx --rename-flags "none" classes.dexjadx --rename-flags "valid, printable" classes.dexjadx --log-level ERROR app.apkjadx -Pdex-input.verify-checksum=no app.apk

3 示例


4 参考资料

移动安全工具-jadx相关推荐

  1. Android反编译工具jadx详细使用方法

    反编译也不是什么新鲜的东西了.但是有时候为了保护我们自己项目的代码,我们还是要通过反编译工具来检测一下我们的代码是否是安全的. 本文我们来使用一个开源的工具jadx来实现对apk文件的反编译. 1.下 ...

  2. Android反编译工具jadx详细使用方法以及混淆和加固的对比

    反编译也不是什么新鲜的东西了.但是为了保护我们自己项目的代码,我们还是要通过反编译工具来检测一下我们的代码是否安全. 本文我们来使用一个开源的工具jadx来实现对apk文件的反编译. 1.下载安装ja ...

  3. android反编译工具jadx卡死解决方案。

    jadx卡死解决 概述 问题点 解决方案 概述 在android的app中,由于dex部分是由java代码实现的,dex可以直接被apktool,androidkiller,jeb等工具进行反编译分析 ...

  4. 安卓逆向_12 --- jeb工具的使用 ( 动态调试 smali 代码 【 普通调试 和 debug调试 】)

    From:https://www.52pojie.cn/forum.php?mod=viewthread&tid=742250 jeb 动态调试 smali 代码:https://www.bi ...

  5. Android 反编译利器,jadx 的高级技巧

    一.前言 今天介绍一个非常好用的反编译的工具 jadx(Java,Dex反编译器) .jadx 的功能非常的强大,对我而言,基本上满足日常反编译需求. jadx 优点: 图形化的界面. 拖拽式的操作. ...

  6. jadx重新打包_反编译一款APP然后重新打包(Windows环境)

    最近有小伙伴私信我,怎么把一款APP改成自己的信息呀,咳咳,这又来送题材了,今天水一把APP反编译+回编译,文中会针对一款APP进行简单的修改信息,问问题的小伙伴还不火速右上角支持一下. MacOS跟 ...

  7. [1196]Android逆向工具【反射大师】脱壳实战

    文章目录 关于逆向 逆向的准备 逆向步骤 Android系统 安装Xposed框架 1.下载`Xposed Installer` 2.安装`Xposed Installer` 安装反射大师 1.下载反 ...

  8. 移动安全逆向笔记 03:Androidkiller的使用+常见的破解工具

    Androidkiller的使用 字符串用于搜索所有双引号内的内容: 查找方法声明: 右键查看都能试一试: 右键-->插入准备好的代码: 注意:改变本地寄存器的个数 常见的破解工具 jadx(反 ...

  9. 安卓逆向_12 --- jeb工具的使用 ( 动态调试 smali 代码 【 普通调试 和 debug调试 】)...

    From:https://www.52pojie.cn/forum.php?mod=viewthread&tid=742250 jeb 动态调试 smali 代码:https://www.bi ...

最新文章

  1. 驱动程序实例(一):LED设备驱动程序( platform + cdev)
  2. echarts tab切换_Python 数据可视化实战:使用 PyQt5 和 Echarts 打造股票数据看板
  3. EasyUI--messager
  4. 技术实践 | 用 NetworkX + Gephi + Nebula Graph 分析权力的游戏人物关系(上篇)
  5. java不要无限循环_java – 看似无限循环终止,除非使用System.out.println
  6. servlet获取不到Angular4 post过来的参数
  7. (转帖)C#--web services之wsdl文件生成cs
  8. Must 和 have to的疑问句_55 1
  9. 用java读取word2003和word2007的内容
  10. rsyslog收集nginx日志配置
  11. 高通:蓝牙5.0将可同时连接两个设备
  12. 苹果傲慢,售后服务中外有别
  13. PPT中插入矢量图(以及从visio直接复制变模糊的处理方法)
  14. day18 - 正则表达式
  15. 计算机中丢失vcl190,VCL画图实例
  16. 深入理解什么是Beta分布
  17. Windows下的你画我猜 -- 告别效率低下的目录扫描方法
  18. OneNote 找回误删除笔记
  19. js通过字节长度截取中英文混合字符串
  20. SqlServer 对数据库文件进行增删改查

热门文章

  1. PPT VBA:批量转PDF
  2. IP地址短缺该如何解决?
  3. [OC学习笔记]自动引用计数
  4. 大量数据批量插入数据库
  5. 嵌入式Linux开发8——UART串口通讯
  6. Python数据处理(三)——美国西雅图自行车流量可视化
  7. HDU 6975 Forgiving Matching 快速傅里叶变换处理带通配符字符串匹配
  8. python矩阵内积乘_numpy矩阵向量乘法
  9. 分散性与变异性的度量——全距、四分位距、标准差、标准分
  10. (差分)洛谷P4231 三步必杀