Appearance
Recipes
Recipes 放可以直接复制到业务里的场景写法。它比 Guide 更具体,比 Reference 更偏组合使用。
当前场景
| 文档 | 适用场景 |
|---|---|
| 服务端登录门禁 | 用户操作中取得 code 并建立开发者服务端会话 |
| 排行榜页面 | 提交成绩、读取榜单和展示当前用户排名 |
| 社区分享预置 | 预置社区发帖、复制链接并恢复分享页面状态 |
| 跨小程序跳转 | 打开公开小程序并传递受控启动数据 |
| 默认 SDK 单例 | 默认单例、eager handshake 与测试 mock |
Sandbox 下载合同示例
ts
const directory = hbSDK.files.sandbox.directory('exports')
await directory.create({ recursive: true })
const file = await hbSDK.network.download({
url: 'https://cdn.example.com/report.json',
to: directory,
suggestedName: 'report.json',
})
const report = await file.readText()
// 清理 sandbox 中的下载文件;外部授权对象不支持 remove。
await file.remove()该示例可在新 PC 使用;Android/iOS 1.3.396+ 还需 Host 通过 system.describe 宣告对应 Native operations。Web、Browser Dev Host 或协商未开放时会返回 METHOD_FORBIDDEN。pickFiles() 默认单文件, 显式传入 multiple: true 时允许 Host 返回多个文件(实际返回数量由宿主 picker 决定);小黑盒域名流式下载暂不支持。完整的 picker、路径、覆盖、取消和进度边界见 快速开始。
新增 Recipe 的标准
新增文档时,尽量包含:
- 适用场景
- 完整可复制代码
- 需要注意的边界
- 对应 Reference 链接