JADX is a Dex to Java decompiler that converts Android bytecode into readable Java source code.
The tool addresses the need to analyze and understand Android applications by transforming Dalvik bytecode from APK, dex, aar, aab, and zip files into Java source code. It also decodes AndroidManifest.xml and resources from resources.arsc files. The decompiler includes an obfuscation removal feature to further aid code analysis. The approach works by parsing the compiled Android bytecode format and reconstructing equivalent Java syntax, though the README notes that complete decompilation of all code is not always possible and errors may occur.
Developers analyzing Android applications should choose this tool if they need to inspect compiled code or understand third-party applications. It suits security research, reverse engineering, and code auditing workflows. The project offers both command-line and GUI variants; the GUI provides syntax highlighting, code navigation with jump-to-declaration and find-usage features, full-text search, and a smali debugger for lower-level inspection. The tool can be used standalone or integrated into Java projects as a library.
The project maintains active development with regular commits to the master branch alongside tagged releases. The codebase shows consistent refinement of decompilation accuracy and feature additions. Build automation is in place with GitHub Actions workflows. The tool is distributed through multiple channels including package managers for Linux and macOS, making it accessible across platforms.