贡献指南
HiDiTingV100 社区欢迎开发者改进文档、修复示例、补充新的业务场景。本文说明从发现问题到提交合并请求的完整流程,并给出文档与 Demo 的统一验收要求。
贡献范围
| 类型 | 适合提交的内容 | 提交时需要同步检查 |
|---|---|---|
| 文档修正 | 错别字、失效链接、错误锚点、描述不准确、图片缺失 | 目录、上下文、相关页面和 Web 预览 |
| 文档增强 | 背景知识、快速跑通、代码走读、故障排查 | SDK 接口、Demo 路径、命令和预期结果 |
| Demo 修复 | 编译错误、资源泄漏、不安全函数、异常路径缺失 | README、构建配置、运行日志和对应开发指南 |
| 新增 Demo | 可独立构建的 Native 或 JS 示例 | 工程结构、接入目标、README、开发指南和验证记录 |
仓库与目录
贡献目标仓库为 GitCode 上的 HiSpark/hs-fbb,主要目录如下。
| 目录 | 用途 |
|---|---|
/docs/zh-CN/HiDiTingV100/ |
中文开发文档源文件 |
| /samples/native_samples/ | Native 示例工程 |
| /samples/js_samples/ | OpenHarmony JS 示例工程 |
/src/ |
SDK 组件、接口与内置实现 |
Web 文档由独立部署仓同步生成。文档正文只能链接 /docs/ 内可随站点发布的页面和图片;SDK 与 Demo 使用 /src/、/samples/ 开头的路径文字说明,不创建从文档站反向跳往代码文件的本地链接。
提交流程
- 在 GitCode 确认问题是否已经存在;修复缺陷时,在问题描述中记录复现条件和影响范围。
- Fork
HiSpark/hs-fbb,从最新master创建短期分支。 - 修改文档或代码。涉及功能流程时,文档、Demo README 和构建配置应在同一变更中保持一致。
- 在本地完成对应检查;不要只验证单个 Markdown 的预览效果。
- 提交变更并创建合并请求,说明修改原因、验证方法、验证结果和暂未覆盖的条件。
- 根据评审意见更新原分支,不重复创建表达同一目的的合并请求。
推荐分支名称:
文档贡献规范
新增开发指南可从开发指南模板开始,并遵循以下要求。
结构
- 每篇文档只保留一个一级标题。
- 开发指南至少说明适用范围、准备条件、快速跑通、核心流程、基于 Demo 开发、注意事项和常见问题。
- Web 站点根据正文标题自动生成页面目录,不在文档开头重复维护手写“目录”章节;正文确需跨章节引用时,使用稳定且能在 Web、GitCode 和常用编辑器中一致解析的锚点。
- 分类
README.md负责导读,子文档负责完整流程,避免在多个页面复制同一大段正文。
链接与路径
- 文档仓内部链接使用相对路径,并在移动或重命名文件后同步更新所有入口。
- 引用 SDK 或 Sample 时直接链接到 GitCode 的源码目录或示例目录。文件使用
blob地址,目录使用tree地址;需要精确定位时追加#L行号,不在正文中只写源码路径,也不创建从docs反向跨到代码目录的相对链接。 - 需要精确定位代码行时,可在 GitCode 文件链接后使用
#L行号。由于master分支的行号会随代码变化,长期有效的精确行链接应固定到发布标签或提交号;持续更新的开发指南优先链接到文件本身。 - 外部链接优先使用长期稳定的官方页面,并说明链接用途。
- 提交前检查图片、文档、锚点和外部链接;不能以“稍后补充”替代有效目标。
图片
- 图片放在所属文档附近的
figures目录,文件名使用能够表达内容的中文名称。 - 每张图片提供准确的替代文本;替代文本描述图片内容,不写“图片1”之类的编号。
- 保留原始宽高比,不拉伸、不使用空白占位图,不在图片内重复正文可表达的大段文字。
- 常规正文图片由 Web 站点统一居中和限制最大宽度;只有确有排版需要时才单独指定尺寸。
描述与代码片段
- 参数、返回值、宏、组件名和日志必须与当前 SDK 或 Demo 一致。
- 代码片段只保留理解业务所需的核心数据结构和关键调用,完整实现通过
/samples/或/src/路径说明。 - 示例必须包含初始化、正常调用、失败处理和资源释放;省略代码时明确省略的内容,不使用无法编译的伪代码冒充完整示例。
- AT 命令可以作为串口调试或板端回归入口,但不是非 AT 业务功能的必要组成部分。
Demo 贡献规范
新增或修改 Demo 时至少满足以下要求。
- 工程目录包含
README.md,说明功能、目录结构、依赖、构建目标、运行方法、预期日志和故障排查。 - 构建脚本、组件名称、配置宏和源文件路径真实存在,大小写完全一致。
- 内存和字符串操作使用 SDK 支持的安全接口,并检查会影响业务正确性的返回值。
- 初始化失败、任务退出和重复运行路径能够释放句柄、内存、线程、定时器及外设资源。
- Native Demo 至少通过当前社区目标的编译验证;涉及硬件或双设备的场景,还应写明接线和验证角色。
- JS Demo 同时检查工程配置、签名要求、权限声明、页面生命周期和安装运行结果。
- 对应开发指南给出“快速跑通”和核心流程走读,并明确 Demo 归档路径。
提交信息
提交信息应简洁表达类型、模块和目的,例如:
一个提交尽量只处理一个可独立评审的主题。格式化产生的大面积无关变化应与功能修改分开。
合并请求说明
合并请求至少填写以下内容:
- 问题和修改目标。
- 涉及的文档、组件、Demo 和构建目标。
- 实际执行的检查、编译或板端验证步骤。
- 关键日志、截图或可观察结果。
- 未验证的硬件条件或外部服务条件。
- 是否需要同步 Web 文档导航、版本说明或其他关联页面。
提交前检查表
- 文档和代码使用 UTF-8,文件名、目录名不包含空格。
- 一级标题、目录、标题层级和锚点正确。
- 文档链接、图片链接和外部链接有效。
- 文档没有链接到
/docs/之外的本地文件。 - 图片命名、替代文本、对齐和尺寸符合规范。
- Demo README、构建配置和开发指南相互一致。
- 示例能够编译;具备条件时已经完成板端运行验证。
- 没有提交构建产物、临时文件、账号、密钥或证书。
- 已在合并请求中说明验证范围和已知限制。
当前文档基线及更新记录参见版本说明。