<img src="https://raw.githubusercontent.com/skylot/jadx/master/jadx-gui/src/main/resources/logos/jadx-logo.png" width="64" align="left" />
## JADX
![Build status](https://img.shields.io/github/actions/workflow/status/skylot/jadx/build-artifacts.yml)
![GitHub contributors](https://img.shields.io/github/contributors/skylot/jadx)
![GitHub all releases](https://img.shields.io/github/downloads/skylot/jadx/total)
![GitHub release (latest by SemVer)](https://img.shields.io/github/downloads/skylot/jadx/latest/total)
![Latest release](https://img.shields.io/github/release/skylot/jadx.svg)
[![Maven Central](https://img.shields.io/maven-central/v/io.github.skylot/jadx-core)](https://search.maven.org/search?q=g:io.github.skylot%20AND%20jadx)
![Java 11+](https://img.shields.io/badge/Java-11%2B-blue)
[![License](http://img.shields.io/:license-apache-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.html)
**jadx** - Dex to Java decompiler
Command line and GUI tools for producing Java source code from Android Dex and Apk files
> [!WARNING]
> Please note that in most cases **jadx** can't decompile all 100% of the code, so errors will occur.<br />
> Check [Troubleshooting guide](https://github.com/skylot/jadx/wiki/Troubleshooting-Q&A#decompilation-issues) for workarounds.
**Main features:**
- decompile Dalvik bytecode to Java code from APK, dex, aar, aab and zip files
- decode `AndroidManifest.xml` and other resources from `resources.arsc`
- deobfuscator included
**jadx-gui features:**
- view decompiled code with highlighted syntax
- jump to declaration
- find usage
- full text search
- smali debugger, check [wiki page](https://github.com/skylot/jadx/wiki/Smali-debugger) for setup and usage
Jadx-gui key bindings can be found [here](https://github.com/skylot/jadx/wiki/JADX-GUI-Key-bindings)
See these features in action here: [jadx-gui features overview](https://github.com/skylot/jadx/wiki/jadx-gui-features-overview)
<img src="https://user-images.githubusercontent.com/118523/142730720-839f017e-38db-423e-b53f-39f5f0a0316f.png" width="700"/>
### Download
- release
from [github: ![Latest release](https://img.shields.io/github/release/skylot/jadx.svg)](https://github.com/skylot/jadx/releases/latest)
- latest [unstable build ![GitHub commits since tagged version (branch)](https://img.shields.io/github/commits-since/skylot/jadx/latest/master)](https://nightly.link/skylot/jadx/workflows/build-artifacts/master)
After download unpack zip file go to `bin` directory and run:
- `jadx` - command line version
- `jadx-gui` - UI version
On Windows run `.bat` files with double-click\
**Note:** ensure you have installed Java 11 or later 64-bit version.
For Windows, you can download it from [oracle.com](https://www.oracle.com/java/technologies/downloads/#jdk17-windows) (select x64 Installer).
### Install
1. Arch linux ![Arch Linux package](https://img.shields.io/archlinux/v/extra/any/jadx?label=)
```bash
sudo pacman -S jadx
```
2. macOS ![homebrew version](https://img.shields.io/homebrew/v/jadx?label=)
```bash
brew install jadx
```
3. [Flathub ![Flathub](https://img.shields.io/flathub/v/com.github.skylot.jadx?label=)](https://flathub.org/apps/details/com.github.skylot.jadx)
```bash
flatpak install flathub com.github.skylot.jadx
```
### Use jadx as a library
You can use jadx in your java projects, check details on [wiki page](https://github.com/skylot/jadx/wiki/Use-jadx-as-a-library)
### Build from source
JDK 11 or higher must be installed:
```
git clone https://github.com/skylot/jadx.git
cd jadx
./gradlew dist
```
(on Windows, use `gradlew.bat` instead of `./gradlew`)
Scripts for run jadx will be placed in `build/jadx/bin`
and also packed to `build/jadx-<version>.zip`
### Usage
```
jadx[-gui] [command] [options] <input files> (.apk, .dex, .jar, .class, .smali, .zip, .aar, .arsc, .aab, .xapk, .jadx.kts)
commands (use '<command> --help' for command options):
plugins - manage jadx plugins
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: 4
-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-xml-pretty-print - do not prettify XML
--no-imports - disable use of imports, always write entire package name
--no-debug-info - disable debug info parsing and processing
--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-move-inner-classes - disable move inner classes into parent
--no-inline-kotlin-lambda - disable inline for Kotlin lambdas
--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
--mappings-path - deobfuscation mappings file or directory. Allowed formats: Tiny and Tiny v2 (both '.tiny'), Enigma (.mapping) or Enigma directory
--mappings-mode - set mode for handling the deobfuscation mapping file:
'read' - just read, user can always save manually (default)
'read-and-autosave-every-change' - read and autosave after every change
'read-and-autosave-before-closing' - read and autosave before exiting the app or closing the project
'ignore' - don't read or save (can be used to skip loading mapping files referenced in the project file)
--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-whitelist - space separated list of classes (full name) and packages (ends with '.*') to exclude from deobfuscation, default: android.support.v4.* android.support.v7.* android.support.v4.os.* android.support.annotation.Px androidx.core.os.* androidx.annotation.Px
--deobf-cfg-file - deobfuscation mappings file used for JADX auto-generated names (in the JOBF file format), default: same dir and name as input file with '.jobf' extension
--deobf-cfg-file-mode - set mode for handling the JADX auto-generated names' deobfuscation map file:
'read' - read if found, don't save (default)
'read-or-save' - read if found, save otherwise (don't overwrite
没有合适的资源?快使用搜索试试~ 我知道了~
jadx-1.5.0 (1).zip
共2000个文件
java:1569个
smali:181个
svg:79个
需积分: 5 0 下载量 168 浏览量
2024-04-26
18:38:26
上传
评论
收藏 2.98MB ZIP 举报
温馨提示
主要特性: 新增支持: 脚本化,使用 Kotlin,请参阅简短指南 外部插件,请参阅指南 这两项功能处于预览状态,API 稳定但功能有限(特别是在 UI 自定义方面)。 Jadx GUI: 改进了代码缓存,允许使用常见目录,在首选项中查看/删除现有缓存 将 jadx-gui 配置移动到系统配置目录中的纯 json 文件中 允许设置自定义快捷键 支持标签拖放重新排序 为二进制资源文件添加十六进制查看器 添加“转到主活动”操作 其他: 现在需要 Java 11+。 解析并使用 Kotlin 元数据进行重命名。 添加对 XApk 文件的支持。 允许将类移动到另一个包中。 支持 jsr/ret 操作码(java-input)。 大量 bug 修复... 和回归 。
资源推荐
资源详情
资源评论
收起资源包目录
jadx-1.5.0 (1).zip (2000个子文件)
resources-only.apk 16KB
app-with-fake-dex.apk 10KB
app-with-fake-dex.apk 10KB
gradlew.bat 3KB
HelloWorld.class 522B
HelloWorld$HelloInner.class 504B
HelloWorld.class 426B
hello.dex 856B
hello.dex 824B
hello.dex 748B
CERT.DSA 855B
.editorconfig 697B
.gitattributes 195B
.gitignore 343B
gradlew 8KB
jadx-logo.ico 15KB
jadx.api.plugins.JadxPlugin 50B
jadx.api.plugins.JadxPlugin 49B
jadx.api.plugins.JadxPlugin 43B
jadx.api.plugins.JadxPlugin 42B
jadx.api.plugins.JadxPlugin 42B
jadx.api.plugins.JadxPlugin 40B
jadx.api.plugins.JadxPlugin 40B
jadx.api.plugins.JadxPlugin 38B
jadx.api.plugins.JadxPlugin 37B
gradle-wrapper.jar 42KB
SmaliTokenMaker.java 64KB
MainWindow.java 50KB
SmaliDebugger.java 47KB
XMLChar.java 46KB
DebugController.java 39KB
Smali.java 36KB
RegionMaker.java 36KB
InsnGen.java 34KB
BlockUtils.java 32KB
JadxSettingsWindow.java 29KB
FixTypesVisitor.java 25KB
ClassNode.java 25KB
ClassGen.java 25KB
EnumVisitor.java 24KB
TypeUpdate.java 23KB
BlockExceptionHandler.java 23KB
DexInsnInfo.java 22KB
SearchDialog.java 22KB
InsnDecoder.java 22KB
ArgType.java 22KB
JadxSettings.java 21KB
MarkFinallyVisitor.java 21KB
JadxCLIArgs.java 21KB
JavaInsnsRegister.java 21KB
BlockProcessor.java 21KB
JadxArgs.java 20KB
ModVisitor.java 20KB
RootNode.java 20KB
IntegrationTest.java 20KB
JadxDecompiler.java 20KB
SimplifyVisitor.java 20KB
ResTableParser.java 19KB
ADBDialog.java 19KB
JDebuggerPanel.java 18KB
EntryConfig.java 18KB
MethodGen.java 18KB
MethodNode.java 17KB
ClsSet.java 16KB
OverrideMethodVisitor.java 16KB
TabbedPane.java 16KB
BinaryXMLParser.java 15KB
CommonSearchDialog.java 15KB
MethodInvokeVisitor.java 15KB
RegionUtils.java 15KB
AbstractCodeArea.java 15KB
LoopRegionVisitor.java 14KB
BlockSplitter.java 14KB
LogcatPanel.java 14KB
SSATransform.java 14KB
InsnNode.java 13KB
IfMakerHelper.java 13KB
DexInsnFormat.java 12KB
Utils.java 12KB
SmaliArea.java 12KB
TypeUtils.java 12KB
RegionGen.java 12KB
PrepareForCodeGen.java 12KB
MappingExporter.java 12KB
ExtractFieldInit.java 12KB
UiUtils.java 12KB
TypeInferenceVisitor.java 12KB
ADB.java 11KB
TypeSearch.java 11KB
ClassModifier.java 11KB
TypeCompare.java 11KB
ProcessAnonymous.java 11KB
FileUtils.java 11KB
ProcessVariables.java 10KB
TabDndController.java 10KB
TernaryMod.java 10KB
StringUtils.java 10KB
DexOpcodes.java 10KB
PluginSettingsGroup.java 10KB
ParserConstants.java 10KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
电子取证纯干货
- 粉丝: 262
- 资源: 56
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功