このプロジェクトについて

jadx は Apache 2.0 ライセンスで配布されるオープンソースの Dex から Java へのデコンパイラです。Android の Dex と APK ファイルから Java ソースコードを生成するコマンドラインおよび GUI ツールを提供します。 主な機能: - APK、dex、aar、aab、zip ファイルから Dalvik バイトコードを Java コードにデコンパイルします。 - resources.arsc から AndroidManifest.xml やその他のリソースをデコードします。 - 設定可能な名前長制限、ホワイトリスト、マッピングファイルサポート(Tiny、Tiny v2、Enigma、ProGuard、SRG、XSRG、JAM、CSRG、TSRG、TSRG 2、IntelliJ 移行マップ、Recaf simple、JOBF)を含む難読化解除機能を備えています。 jadx-gui インターフェイスは、構文ハイライトされたデコンパイル済みコード、宣言へのジャンプ、使用箇所の検索、フルテキスト検索、および smali デバッガーを提供します。キーバインディングと機能の概要はプロジェクトのウィキにドキュメント化されています。 インストールオプションには、GitHub からのリリースアーカイブ、ナイトリー不安定ビルド、Arch Linux パッケージ(extra と AUR)、macOS 向け Homebrew、Flathub が含まれます。ツールを実行するには Java 11 以降の 64 ビットが必要です。jadx は Java プロジェクトでのライブラリとしても使用でき、JDK 17 以上を使用して Gradle でソースからビルドすることもできます。 コマンドラインツールは、出力ディレクトリ、デコンパイルモード(auto、restructure、simple、fallback)、リソースデコード、スレッド数、Gradle プロジェクトエクスポート、難読化解除設定、リネームフラグ、整数フォーマット、制御フローグラフおよびコールグラフエクスポート、ログレベル、設定ファイルなど多くのオプションを受け入れます。プラグインコマンドは、プラグインのインストール、リスト表示、更新、有効化、無効化をサポートし、dex 入力、Java 変換、Kotlin メタデータ、Kotlin SMAP、リネームマッピング、smali 入力のバンドルプラグインを含みます。 環境変数により、設定、キャッシュ、一時ディレクトリのカスタマイズ、XML/zip セキュリティチェックおよび zip エントリ制限の調整が可能です。README には、jadx がすべてのケースですべてのコードをデコンパイルできないためエラーが発生する可能性があり、ウィキのトラブルシューティングガイドを参照する旨が記載されています。