Ghidra is an open-source software reverse engineering framework from the NSA, offering disassembly, decompilation, graphing and scripting for compiled code.
skylot/jadx
Command-line and GUI tools that decompile Android Dex, APK and related files into readable Java source code.
- Stars
- 51,133
- Forks
- 5,815
- Open issues
- 459
- Last commit
- 6 days ago
What is it?
jadx converts Dalvik bytecode from APK, dex, aab, apks, apkm, xapk and zip files into Java source code. It can also decompile Java bytecode (jar, class, aar) and smali files, and decodes AndroidManifest.xml and other resources from resources.arsc.
The project ships a command-line tool and a GUI (jadx-gui). The GUI provides syntax-highlighted code view, jump to declaration, find usage, full-text search and a smali debugger. The CLI offers options for output format, decompilation mode, deobfuscation mappings and Gradle project export.
The project notes that it cannot decompile every method perfectly, so some output may contain errors. It can also be used as a library in Java projects.
Key features
- 01Decompiles APK, dex, aab, xapk and other Android packages to Java
- 02Decodes AndroidManifest.xml and resources from resources.arsc
- 03Includes a GUI with syntax highlighting, search and jump to declaration
- 04Supports a smali debugger in the GUI
- 05Includes a deobfuscator and supports common mapping formats
- 06Can export decompiled output as a Gradle project
Use cases
- Inspecting how an Android app works without access to its source code
- Analyzing APK files for security review or reverse engineering
- Studying obfuscated Android apps with the built-in deobfuscator
- Embedding decompilation into Java tooling via the library API
Topics
FAQ
- What is jadx?
- Command-line and GUI tools that decompile Android Dex, APK and related files into readable Java source code. jadx converts Dalvik bytecode from APK, dex, aab, apks, apkm, xapk and zip files into Java source code. It can also decompile Java bytecode (jar, class, aar) and smali files, and decodes AndroidManifest.xml and other resources from resources.arsc.
- Is jadx free to use? What license does it have?
- jadx is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is jadx still maintained?
- Actively maintained. The last commit to jadx was on Oct 14, 2026.
- What can I use jadx for?
- Inspecting how an Android app works without access to its source code Analyzing APK files for security review or reverse engineering Studying obfuscated Android apps with the built-in deobfuscator Embedding decompilation into Java tooling via the library API
- Where can I get jadx?
- The source code and installation instructions are on GitHub: https://github.com/skylot/jadx
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
An MCP server that exposes Ghidra's reverse engineering functions so LLM clients can decompile and analyze binaries.
MCP server and CLI letting AI agents reverse engineer native binaries, Electron apps, .NET assemblies and websites.
An HTTP client for the JVM, Android, and GraalVM that reuses connections, supports HTTP/2, and caches responses by default.
A type-safe HTTP client for Android and Java that turns annotated interface methods into network calls.
An automation tower defense RTS written in Java, where players build factories and logistics to supply turrets and defend their base.