JADX
What it is
JADX converts Android application files into Java source code through command-line and graphical tools. It handles APK, DEX, AAR, AAB, and ZIP inputs, and can decode AndroidManifest.xml and resources.arsc. An included deobfuscator provides options for mappings and identifier renaming. In the GUI, syntax highlighting, declaration navigation, usage lookup, and full-text search support code inspection. Its Smali debugger offers stepping, breakpoints, and changes to register values and object fields. Debugging requires adb and either a debuggable app or a rooted device or emulator. Java projects can use JADX as a library, while its command-line interface can list, install, update, disable, enable, and uninstall plugins, including marketplace plugins. Downloaded releases need 64-bit Java 11 or later. JADX runs on Linux, macOS, and Windows and is licensed under Apache 2.0. The project warns that decompilation may not recover all code, so errors can occur. It directs users to a troubleshooting wiki and accepts issue reports and pull requests through GitHub.
For and against
For
- Provides both command-line and graphical tools.
- Handles APK, DEX, AAR, AAB, and ZIP files.
- Includes search, navigation, and deobfuscation options.
- Supports plugins and Java library use.
Against
- Decompilation may not recover all code.
- Downloaded releases require 64-bit Java 11 or later.
- Debugging requires adb and a debuggable app or rooted device.
The verdict
JADX brings Android file decompilation, code navigation, plugin management, and debugging into one free tool. Treat its output as potentially incomplete, and check the Java and debugging requirements first.
Who it suits
JADX suits developers and analysts who need to inspect Android app code, search decompiled output, or use a debugger with a qualifying app or device.
Plans and prices
JADX
Apache 2.0 licensed · decompilation may not recover 100% of code
Read 4 Oct 2026 · github.com
On the record
- Deobfuscation
- A deobfuscator is included, with options for mappings and identifier renaming.github.com · read 4 Oct 2026
- GUI navigation
- The GUI supports syntax highlighting, jump to declaration, find usage, and full-text search.github.com · read 4 Oct 2026
- Input formats
- It decompiles APK, DEX, AAR, AAB, and ZIP files and can decode AndroidManifest.xml and resources.arsc.github.com · read 4 Oct 2026
- Library use
- JADX can be used as a library in Java projects.github.com · read 4 Oct 2026
- License
- The project is licensed under Apache 2.0.github.com · read 4 Oct 2026
- Limitation
- JADX warns that it cannot decompile all code in most cases, so errors can occur.github.com · read 4 Oct 2026
- Plugins
- The CLI can list, install, update, disable, enable, and uninstall plugins, including plugins from the JADX plugin marketplace.github.com · read 4 Oct 2026
- Purpose
- JADX provides command-line and GUI tools for producing Java source code from Android Dex and APK files.github.com · read 4 Oct 2026
- Runtime requirement
- Running downloaded releases requires Java 11 or later in a 64-bit version.github.com · read 4 Oct 2026
- Security reporting
- The security policy asks users to report issues through a new security advisory and says maintainers will respond within three working days.github.com · read 4 Oct 2026
- 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.github.com · read 4 Oct 2026
- Support
- The project directs users to its troubleshooting wiki and invites issue reports and pull requests through GitHub.github.com · read 4 Oct 2026