# Garlic Decompiler (GUI)

**一个基于 C++/Qt6 构建的现代化桌面界面,为 Garlic Decompiler 注入强大动力,将极速的 APK、DEX、JAR 和 CLASS 反编译体验带入 Windows、Linux 和 macOS 平台。**
[](https://opensource.org/)
[](LICENSE)
[](#-built-with)
[](https://www.qt.io/)
[](https://github.com/neocanable/garlic)
[](https://github.com/AgarwalKritik)
##

道德与合法使用
Garlic Decompiler GUI 旨在用于合法的软件分析和逆向工程,包括:
- 安全研究
- 恶意软件分析
- 软件互操作性
- 数字保存
- 教育与学习
- 对您拥有或获得明确授权进行分析的软件进行逆向工程
用户需自行确保其对本软件的使用符合适用的法律、软件许可、知识产权规定以及组织政策。
本项目**不**认可或鼓励未经授权的访问、软件盗版、侵犯版权或任何非法活动。
##

目录
- [关于本项目](#-about-the-project)
- [核心功能](#-key-features)
- [构建技术](#-built-with)
- [项目结构](#-project-structure)
- [入门指南](#-getting-started)
- [从源码构建](#-build-from-source)
- [下载 (Releases)](#-download-releases)
- [用法](#-usage)
- [路线图](#-roadmap)
- [贡献者](#-contributors)
- [贡献指南](#-contributing)
- [许可证](#-license)
- [联系方式与链接](#-contact--links)
- [致谢与鸣谢](#-credits--acknowledgements)
##

关于本项目
**Garlic Decompiler GUI** 是 [Garlic Decompiler](https://github.com/neocanable/garlic) 的现代化 C++/Qt6 图形界面。它允许您:
- **无缝**地打开、反编译、浏览和导出 Android/Java 二进制文件中的 Java 源代码。
- 以闪电般的速度处理 `APK`、`DEX`、`JAR` 和 `CLASS` 文件。
- 使用受 VS Code 启发的选项卡式编辑器浏览项目,并提供精确的语法高亮。
###

核心功能
| 功能 | 描述 |
| ------- | ----------- |
|

**现代 IDE 美学** | 采用美观的 VS Code Dark 2026 主题构建,配有极简状态栏、光标位置跟踪(行/列指示器)以及高级语法高亮。 |
|

**高级代码编辑器** | 功能齐全的代码编辑器,带有集成的查找/替换面板,支持正则表达式、区分大小写和全字匹配搜索。 |
|

**多线程提取** | 得益于强大的 C/C++ 多线程桥接技术,可在不冻结 UI 的情况下反编译大型 APK 文件。 |
|

**实时进度显示** | 通过原生状态栏和进度跟踪系统,实时观看反编译过程。 |
###

构建技术
- **C++17** — 用于构建 GUI 外壳的强大后端语言。
- **Qt6** — 业界标准的跨平台框架,用于渲染现代化界面。
- **Garlic Decompiler Engine** — 核心的纯 C 反编译逻辑。
###

项目结构
想深入研究代码?本项目被精心划分为 C++ UI 层和 C Core 层。
##

入门指南
###

从源码构建
有兴趣自己编译 GarlicGUI 或构建原生系统安装程序吗?
请查看我们详尽的 **[构建指南](BUILD.md)**,其中包含针对 Windows、macOS 和 Linux 的详细分步说明。
###

下载 (Releases)
您可以直接从 [GitHub Releases](https://github.com/AgarwalKritik/garlic-gui/releases) 页面下载最新的编译版本。我们为以下平台提供预编译的二进制文件:
- **Windows**:提供 `.exe` 系统安装程序和 `.zip` 便携版。
- **macOS**:提供 `.dmg` 磁盘映像和 `.app` 应用程序包。
- **Linux**:提供 `.deb`、`.rpm`、`.AppImage` 和 `.tar.gz` 格式。
###

用法
1. **打开 APK/CLASS/JAR/DEX 文件**:在欢迎仪表板上点击“Open File...”或使用 `Ctrl+O`。
2. **等待反编译完成**:进度条会在底部状态栏中原生更新并显示进度。
3. **浏览代码**:使用左侧的文件树导航反编译后的类。
4. **查看源码**:点击任意 Java 文件在编辑器中打开它。
5. **搜索**:按 `Ctrl+F` 打开查找/替换面板,并使用正则表达式进行搜索。
6. **保存/导出**:使用“文件”菜单保存或导出您的项目。
##

路线图
以下是我们已经完成的工作以及未来展望:
- [x] **内嵌 Garlic C 源代码**:将核心的 Garlic C 反编译引擎直接集成到 Qt6 构建系统中,实现无需外部二进制依赖的原生执行。
- [x] **匹配 Garlic CLI CMake 配置**:精确复制了原始命令行工具所使用的构建步骤、宏和 include 目录。
- [x] **原生文件检测**:自动解析文件头,以无缝识别并完美处理 APK、DEX、JAR 和 CLASS 文件。
- [x] **应用原始编译器标志和优化**:保持了核心引擎所使用的精确 `-O3` 和激进的编译器优化标志,以确保最快的反编译速度。
- [x] **跨平台 GUI**:成功以原生编译方式生成 Windows `.exe`、Linux `.AppImage`/`.deb`/`.rpm` 以及 macOS `.dmg`/`.app` 包。
- [x] **现代深色 IDE UI**:设计了时尚的、受 VS Code 启发的深色界面,配有用于跟踪进度和输出日志的综合状态栏。
- [x] **全面的代码编辑支持**:集成了响应迅速的文本编辑器,具备当前行高亮、行号显示以及完整的正则表达式查找/替换功能。
- [x] **多文件浏览支持**:当在已反编译一个文件的情况下打开新文件(如 `classes3.dex`)时,提示用户清除工作区或保留当前打开的文件,以便同时分析多个文件。
- [ ] **添加项目工作区配置**:允许用户将当前的多文件工作区和布局保存到唯一的配置文件中,以便日后即时重新加载。
##

许可证
#### 该项目基于
**Apache License 2.0** 许可 — 有关更多信息,请参见 [LICENSE](LICENSE)
##

联系方式与链接
[](https://github.com/AgarwalKritik/garlic-gui/issues/new)
[](https://github.com/AgarwalKritik)
[](https://lin.ky/abhithemodder)
##

致谢与鸣谢
Garlic Decompiler GUI 是建立在多个杰出开源项目的工作基础之上的。
- **[Garlic Decompiler Engine](https://github.com/neocanable/garlic)** — 由 **[neocanable](https://github.com/neocanable)** 及其贡献者开发。Garlic GUI 原封不动地内嵌了原始的 Garlic C 引擎,未对其核心反编译逻辑进行任何修改。
- **[AbhiTheModder](https://lin.ky/abhithemodder)** — 图形界面的最初概念、项目构思,以及整个开发过程中的测试和反馈。
- **[The Qt Company](https://www.qt.io/)** — 跨平台应用程序框架。
- **[CMake](https://cmake.org/)** — 跨平台构建系统。
*如果您的工作包含在本项目中但未得到致谢,请提交 issue 或 pull request,以便我们添加适当的署名。*