houstudio/cdroid
项目简介
CDroid is an open-source, Android-compatible GUI framework built on C++11, designed for cross-platform embedded systems
CDroid 是一个基于 C++11 开发的、类 Android 风格的跨平台 GUI 工具包,专为嵌入式系统设计。它的核心目标是让嵌入式开发者能够像开发 Android 应用一样,高效构建图形用户界面。项目最大的亮点在于其与 Android 生态的高度兼容性:它内置了超过 50 种 UI 组件和 20 多种 Drawable 资源,这些组件和布局(如 LinearLayout、RelativeLayout、ListView、RecyclerView 等)几乎与 Android 原生 API 一一对应。这意味着开发者可以直接使用 Android Studio 或 Eclipse 来设计界面布局,然后无缝迁移到 CDroid 上运行,大大降低了学习和迁移成本。在技术栈方面,CDroid 利用 Cairo 图形库实现了矢量图形渲染,支持多图层和多窗口管理,并提供了丰富的可绘制对象,包括 ShapeDrawable、VectorDrawable、RippleDrawable 等。它解决了传统嵌入式 GUI 开发中界面设计效率低、组件库匮乏、与主流移动端设计工具脱节的问题。适用场景非常广泛,包括智能家居控制面板、工业 HMI、车载信息娱乐系统、医疗设备显示终端等资源受限但需要丰富交互体验的嵌入式平台。项目提供了详细的移植指南,开发者只需针对特定芯片实现底层接口,即可快速适配新硬件。同时,项目还提供了预配置的虚拟机镜像和完整的构建脚本,方便开发者快速上手体验。
标签
项目特点
技术规格
| 开发语言 | C++11 |
|---|---|
| 目标平台 | 嵌入式系统(Linux、Windows、macOS) |
| UI 组件数量 | 50+ |
| Drawable 资源类型 | 20+ |
| 布局支持 | LinearLayout、RelativeLayout、ListView、RecyclerView 等 |
| 渲染引擎 | 基于 C++ 原生实现,无外部依赖 |
| 输入支持 | 触摸屏、鼠标、键盘 |
| 许可证 | 未知(需从仓库确认) |
| 最新版本 | 请参考 GitHub Releases |
项目资源
搜索资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| cdroid 核心库 | 1 | — | 包含所有 UI 组件和布局 |
| UI 组件(Button、TextView 等) | 50+ | — | 与 Android 原生 API 对应 |
| Drawable 资源 | 20+ | — | 包括 Shape、StateList 等 |
| 示例程序 | 若干 | — | 位于 examples 目录 |
| CMakeLists.txt | 1 | — | 用于 CMake 构建系统 |