# zaiohController_ct16_second_develop **Repository Path**: zaihong/zaiohController_ct16_second_develop ## Basic Information - **Project Name**: zaiohController_ct16_second_develop - **Description**: 在鸿控制器CT16应用与设备模型开发 SDK,面向客户二次开发场景,提供应用程序、设备模型及通信协议适配所需的开发接口、示例工程、构建工具和配套文档,支持编译生成可在 OpenHarmony 设备上部署运行的二进制应用和设备模型动态库。 - **Primary Language**: C - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-16 - **Last Updated**: 2026-09-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CT16 SDK 导出时间:2026-09-17 17:14:38 ## 目录说明 - `prebuilts/`:交叉编译工具链 - `prebuilts/build-tools/`:GN/Ninja 主机侧构建工具 - `sysroot/`:目标板 sysroot - `components/`:对外开放组件 - `application/`:示例应用和模板 - `tools/`:辅助脚本目录,包含环境初始化和手动打包脚本 - `dsdk_model/docs/`:设备模型 Markdown 文档库 - `dsdk_model/gennerator/`:设备模型编辑和代码框架生成工具 - `dsdk_model/skill/`:设备模型自然语言生成 Skill - `dsdk_model/src/`:设备模型源码和插件清单 - `out/`:编译中间产物和最终压缩包输出目录 ## 推荐使用方式 ```bash ./build.sh example # 编译 application/ 下全部一级应用目录 ./build.sh all ``` ## 设备模型开发 ```bash ./start_model_develop ``` 服务默认监听 `0.0.0.0:8765`,终端会打印本机和局域网访问地址。网页支持从 `dsdk_model/docs/` 加载或删除模型,并在创建、增量生成和完全覆盖之间进行受控选择。补充用户代码标记中的业务逻辑后, 再在 SDK 根目录执行 `./build.sh example` 构建模型 SO。 自然语言生成工作流位于 `dsdk_model/skill/device-model/`,其中 `SKILL.md` 定义文档、源码和插件清单的生成流程;使用支持本地 Skill 的 AI 编程工具时,将该目录作为项目 Skill 加载。 `application//manifest.json` 采用多进程格式,支持通过 `processes[]` 配置多个执行文件,并使用 `dependsOn + delayMs` 描述启动顺序。 ## 应用构建规则 `./build.sh ` 的参数来自 `application/` 下的一级目录名。构建脚本会按下面路径定位 GN 目标: ```text ./build.sh example → application/example/ → application/example/BUILD.gn → group("example_group") → //application/example:example_group ``` 每个一级应用目录必须包含 `manifest.json`,并在自己的 `BUILD.gn` 中提供 `group("_group")`。 `./build.sh all` 仅遍历 `application/` 下的一级目录,逐个构建并打包满足以上约定的应用;不会递归扫描应用内部目录。 ## 脚本说明 - `./build.sh `:定位 `application//BUILD.gn` 中的 `_group`,编译并自动打包指定应用 - `./build.sh all`:遍历并编译 `application/` 下全部一级应用目录 - `./build.sh clean [app_name]`:清理全部或指定应用的编译产物与打包文件,不影响 SDK 环境 - `./tools/setup_env.sh`:初始化 SDK 编译环境 - `./tools/pack_app.sh `:对已编译应用重新打包 - `source ./tools/use_env.sh`:自动初始化并在当前终端加载 SDK 环境变量 - `source ./env.sh`:在执行过 `./tools/setup_env.sh` 后手动加载 SDK 环境变量