JADX
github.com
What it is
JADX is a free Apache 2.0 project that turns Android Dex and APK files into Java source code through command-line and graphical tools. It also decompiles AAR, AAB, and ZIP files and decodes AndroidManifest.xml and resources.arsc. An included deobfuscator supports mappings and identifier renaming. The GUI offers syntax highlighting, declaration navigation, usage lookup, and full-text search. Its debugger can step through code, set breakpoints, and modify register values or object fields; this requires adb plus a debuggable app or a rooted device or emulator. JADX can be used as a library in Java projects, and its CLI manages plugins from the marketplace. Downloaded releases require 64-bit Java 11 or later. It runs on Linux, macOS, and Windows. The project warns that decompilation may not recover all code, so errors can occur.
Spec sheet
- Purpose
- JADX provides command-line and GUI tools for producing Java source code from Android Dex and APK files.Read 4 Oct 2026 · github.com
- Platforms
- The project documents Windows batch files, macOS Homebrew installation, Arch Linux packages, and Flathub installation.Read 4 Oct 2026 · github.com
- Support
- The project directs users to its troubleshooting wiki and invites issue reports and pull requests through GitHub.Read 4 Oct 2026 · github.com
- License
- The project is licensed under Apache 2.0.Read 4 Oct 2026 · github.com
- Deobfuscation
- A deobfuscator is included, with options for mappings and identifier renaming.Read 4 Oct 2026 · github.com
- GUI navigation
- The GUI supports syntax highlighting, jump to declaration, find usage, and full-text search.Read 4 Oct 2026 · github.com
- Input formats
- It decompiles APK, DEX, AAR, AAB, and ZIP files and can decode AndroidManifest.xml and resources.arsc.Read 4 Oct 2026 · github.com
- Library use
- JADX can be used as a library in Java projects.Read 4 Oct 2026 · github.com
- Limitation
- JADX warns that it cannot decompile all code in most cases, so errors can occur.Read 4 Oct 2026 · github.com
- Plugins
- The CLI can list, install, update, disable, enable, and uninstall plugins, including plugins from the JADX plugin marketplace.Read 4 Oct 2026 · github.com
- Runtime requirement
- Running downloaded releases requires Java 11 or later in a 64-bit version.Read 4 Oct 2026 · github.com
- Security reporting
- The security policy asks users to report issues through a new security advisory and says maintainers will respond within three working days.Read 4 Oct 2026 · github.com
- Smali debugger
- The GUI debugger supports stepping, breakpoints, and modifying register values and object fields; it requires adb and a debuggable app or rooted device/emulator.Read 4 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Free and Apache 2.0 licensed
- Handles APK, DEX, AAR, AAB, and ZIP
- GUI includes search and code navigation
- Debugger supports stepping and breakpoints
- CLI and plugin marketplace support
Limits
- Decompilation may not recover all code
- Downloaded releases require 64-bit Java 11 or later
- Debugger requires adb and a debuggable or rooted target
Who it suits
It suits developers and analysts inspecting Android packages who need GUI or command-line decompilation across desktop platforms.
Verdict
JADX provides broad Android package inspection with both graphical and command-line workflows. Results may contain errors because complete code recovery is not guaranteed.
Where Specifiction places it
- Reverse Engineering Tools#29 of 737.6
- Decompiler Software#13 of 247.7