@doubao-apps/ai 0.0.31 → 0.0.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/dist/contexts/doubao-apps-dev/AGENTS.md +12 -0
  2. package/dist/contexts/doubao-apps-dev/CLAUDE.md +1 -0
  3. package/dist/contexts/doubao-apps-dev/references/reference/open-api/02-/345/256/232/344/275/215.md +224 -0
  4. package/dist/contexts/doubao-apps-dev/references/reference/open-api/22-/350/256/276/345/244/207-/345/237/272/347/241/200/344/277/241/346/201/257.md +133 -0
  5. package/dist/contexts/doubao-apps-dev/references/reference/open-api/README.md +12 -11
  6. package/dist/contexts/doubao-apps-dev/references/reference/open-api.md +37 -20
  7. package/dist/manifest.json +2 -2
  8. package/dist/skills/doubao-apps-dev/SKILL.md +4 -2
  9. package/dist/skills/doubao-apps-dev/references/reference/open-api/02-/345/256/232/344/275/215.md +224 -0
  10. package/dist/skills/doubao-apps-dev/references/reference/open-api/22-/350/256/276/345/244/207-/345/237/272/347/241/200/344/277/241/346/201/257.md +133 -0
  11. package/dist/skills/doubao-apps-dev/references/reference/open-api/README.md +12 -11
  12. package/dist/skills/doubao-apps-dev/references/reference/open-api.md +37 -20
  13. package/package.json +1 -1
  14. /package/dist/contexts/doubao-apps-dev/references/reference/open-api/{22- → 23-}/350/256/276/345/244/207-/347/224/265/346/261/240.md" +0 -0
  15. /package/dist/contexts/doubao-apps-dev/references/reference/open-api/{23- → 24-}/350/256/276/345/244/207-/346/227/245/345/216/206.md" +0 -0
  16. /package/dist/contexts/doubao-apps-dev/references/reference/open-api/{24- → 25-}/350/256/276/345/244/207-/345/211/252/350/264/264/346/235/277.md" +0 -0
  17. /package/dist/contexts/doubao-apps-dev/references/reference/open-api/{25- → 26-}/350/256/276/345/244/207-/350/201/224/347/263/273/344/272/272.md" +0 -0
  18. /package/dist/contexts/doubao-apps-dev/references/reference/open-api/{26- → 27-}/350/256/276/345/244/207-/345/212/240/345/257/206.md" +0 -0
  19. /package/dist/contexts/doubao-apps-dev/references/reference/open-api/{27- → 28-}/350/256/276/345/244/207-/347/224/265/350/257/235.md" +0 -0
  20. /package/dist/contexts/doubao-apps-dev/references/reference/open-api/{28- → 29-}/350/256/276/345/244/207-/346/211/253/347/240/201.md" +0 -0
  21. /package/dist/contexts/doubao-apps-dev/references/reference/open-api/{29- → 30-}/350/256/276/345/244/207-/345/261/217/345/271/225.md" +0 -0
  22. /package/dist/contexts/doubao-apps-dev/references/reference/open-api/{30- → 31-}/350/256/276/345/244/207-/351/234/207/345/212/250.md" +0 -0
  23. /package/dist/contexts/doubao-apps-dev/references/reference/open-api/{31- → 32-}/346/226/207/344/273/266/347/263/273/347/273/237.md" +0 -0
  24. /package/dist/skills/doubao-apps-dev/references/reference/open-api/{22- → 23-}/350/256/276/345/244/207-/347/224/265/346/261/240.md" +0 -0
  25. /package/dist/skills/doubao-apps-dev/references/reference/open-api/{23- → 24-}/350/256/276/345/244/207-/346/227/245/345/216/206.md" +0 -0
  26. /package/dist/skills/doubao-apps-dev/references/reference/open-api/{24- → 25-}/350/256/276/345/244/207-/345/211/252/350/264/264/346/235/277.md" +0 -0
  27. /package/dist/skills/doubao-apps-dev/references/reference/open-api/{25- → 26-}/350/256/276/345/244/207-/350/201/224/347/263/273/344/272/272.md" +0 -0
  28. /package/dist/skills/doubao-apps-dev/references/reference/open-api/{26- → 27-}/350/256/276/345/244/207-/345/212/240/345/257/206.md" +0 -0
  29. /package/dist/skills/doubao-apps-dev/references/reference/open-api/{27- → 28-}/350/256/276/345/244/207-/347/224/265/350/257/235.md" +0 -0
  30. /package/dist/skills/doubao-apps-dev/references/reference/open-api/{28- → 29-}/350/256/276/345/244/207-/346/211/253/347/240/201.md" +0 -0
  31. /package/dist/skills/doubao-apps-dev/references/reference/open-api/{29- → 30-}/350/256/276/345/244/207-/345/261/217/345/271/225.md" +0 -0
  32. /package/dist/skills/doubao-apps-dev/references/reference/open-api/{30- → 31-}/350/256/276/345/244/207-/351/234/207/345/212/250.md" +0 -0
  33. /package/dist/skills/doubao-apps-dev/references/reference/open-api/{31- → 32-}/346/226/207/344/273/266/347/263/273/347/273/237.md" +0 -0
@@ -216,6 +216,18 @@ export default defineWidget({
216
216
  - **路由编码**:入口页跳转含 `/` 的 case name 时必须 `encodeURIComponent`;开发模式 `delegate-page` 的 query 需要 encode/decode。
217
217
  - **响应式主题**:Playground 外壳和示例辅助 UI 使用 `--pg-*` 变量;不要在 Playground 任务中顺手修组件库自身主题。
218
218
 
219
+ ### API e2e 测试范式
220
+
221
+ 当任务新增或正式暴露 `@doubao-apps/framework/api` / Open API / JSB API 时,必须同步补充 `e2e/api` 自动化测试:
222
+
223
+ - **测试目录**:Vitest case 放在 `e2e/api/__tests__/`,优先补到已有 domain 文件,如 `basic.test.ts`、`network.test.ts`、`storage.test.ts`、`device.test.ts`、`ui.test.ts`;没有合适分组时新建 `<domain>.test.ts`。
224
+ - **测试小程序**:`examples/e2e-api-runner` 只负责建立 WebSocket 链接、接收 API 调用指令、执行 `@byted-doubao-apps/framework/api` 并回传结果;不要把具体 e2e case 写在小程序或 playground 内。
225
+ - **协议层**:WebSocket server、协议类型和 runner client 由 `@byted-doubao-apps/e2e-runner` 提供;不要在测试用例里重复实现通信协议。
226
+ - **调用方式**:在测试中使用 `const session = await getApiSession()`,再通过 `await session.callApi<TResult>('<apiName>', [params], { timeoutMs })` 调用并在 Vitest 侧断言。
227
+ - **稳定性原则**:只自动化稳定、低副作用、可断言的 API;强交互、权限弹窗、支付、路由退出、账号业务态或设备状态不稳定的 API 应 `it.skip` / `describe.skip` 并写明原因。
228
+ - **本地依赖**:网络类 API 优先使用 `session.httpFixtureServer`,避免依赖公网。
229
+ - **验证命令**:至少运行 `pnpm --filter @byted-doubao-apps/e2e-api typecheck`;有目标设备时再运行 `pnpm --filter @byted-doubao-apps/e2e-api test:api`。
230
+
219
231
  ### Lynx 组件
220
232
 
221
233
  Lynx 组件库完整参考文档请访问官方文档:
@@ -18,6 +18,7 @@
18
18
  | Framework API | [references/reference/framework-api-quick-ref.md](references/reference/framework-api-quick-ref.md) |
19
19
  | Bridge API / 系统能力 | [references/reference/open-api/README.md](references/reference/open-api/README.md) |
20
20
  | Playground / API / JSB 验证页 | [AGENTS.md#playground-测试页范式](./AGENTS.md#playground-测试页范式) |
21
+ | API e2e 自动化测试 | [AGENTS.md#api-e2e-测试范式](./AGENTS.md#api-e2e-测试范式) |
21
22
 
22
23
  ## 知识库结构
23
24
 
@@ -9,6 +9,14 @@
9
9
  | API | 说明 |
10
10
  | --- | --- |
11
11
  | [getLocation](#getlocation) | 获取设备当前的地理位置信息。<br><br>可能涉及定位授权。 |
12
+ | [chooseLocation](#chooselocation) | 打开地图选择位置。 |
13
+ | [openLocation](#openlocation) | 使用地图查看位置。 |
14
+ | [startLocationUpdate](#startlocationupdate) | 开始接收位置更新。<br><br>需配对调用 stopLocationUpdate。 |
15
+ | [stopLocationUpdate](#stoplocationupdate) | 停止接收位置更新。 |
16
+ | [onLocationChange](#onlocationchange) | 注册地理位置变化回调。<br><br>返回 void,不是 Promise。 |
17
+ | [offLocationChange](#offlocationchange) | 取消注册地理位置变化回调。<br><br>返回 void,不是 Promise。 |
18
+ | [onLocationChangeError](#onlocationchangeerror) | 注册位置更新异常回调。<br><br>返回 void,不是 Promise。 |
19
+ | [offLocationChangeError](#offlocationchangeerror) | 取消注册位置更新异常回调。<br><br>返回 void,不是 Promise。 |
12
20
 
13
21
  ## API 详情
14
22
 
@@ -65,6 +73,130 @@ async function fetchLocation() {
65
73
  fetchLocation();
66
74
  ```
67
75
 
76
+ <a id="chooselocation"></a>
77
+ ### chooseLocation()
78
+
79
+ > **chooseLocation**(`params`?): `Promise`\<[`ChooseLocationResponse`](#chooselocationresponse)\>
80
+
81
+ 打开地图选择位置。
82
+
83
+ #### Parameters
84
+
85
+ • **params?**: [`ChooseLocationParams`](#chooselocationparams)
86
+
87
+ #### Returns
88
+
89
+ `Promise`\<[`ChooseLocationResponse`](#chooselocationresponse)\>
90
+
91
+ <a id="openlocation"></a>
92
+ ### openLocation()
93
+
94
+ > **openLocation**(`params`): `Promise`\<`object`\>
95
+
96
+ 使用地图查看位置。
97
+
98
+ #### Parameters
99
+
100
+ • **params**: [`OpenLocationParams`](#openlocationparams)
101
+
102
+ #### Returns
103
+
104
+ `Promise`\<`object`\>
105
+
106
+ <a id="startlocationupdate"></a>
107
+ ### startLocationUpdate()
108
+
109
+ > **startLocationUpdate**(`params`?): `Promise`\<`object`\>
110
+
111
+ 开始接收位置更新。
112
+
113
+ #### Parameters
114
+
115
+ • **params?**: [`StartLocationUpdateParams`](#startlocationupdateparams)
116
+
117
+ #### Returns
118
+
119
+ `Promise`\<`object`\>
120
+
121
+ #### Remarks
122
+
123
+ 需配对调用 stopLocationUpdate。
124
+
125
+ <a id="stoplocationupdate"></a>
126
+ ### stopLocationUpdate()
127
+
128
+ > **stopLocationUpdate**(`params`?): `Promise`\<`object`\>
129
+
130
+ 停止接收位置更新。
131
+
132
+ #### Parameters
133
+
134
+ • **params?**
135
+
136
+ #### Returns
137
+
138
+ `Promise`\<`object`\>
139
+
140
+ <a id="onlocationchange"></a>
141
+ ### onLocationChange()
142
+
143
+ > **onLocationChange**(`callback`): `void`
144
+
145
+ 注册地理位置变化回调。
146
+
147
+ #### Parameters
148
+
149
+ • **callback**: [`LocationChangeListener`](#locationchangelistener)
150
+
151
+ #### Returns
152
+
153
+ `void`
154
+
155
+ <a id="offlocationchange"></a>
156
+ ### offLocationChange()
157
+
158
+ > **offLocationChange**(`callback`?): `void`
159
+
160
+ 取消注册地理位置变化回调。
161
+
162
+ #### Parameters
163
+
164
+ • **callback?**: [`LocationChangeListener`](#locationchangelistener)
165
+
166
+ #### Returns
167
+
168
+ `void`
169
+
170
+ <a id="onlocationchangeerror"></a>
171
+ ### onLocationChangeError()
172
+
173
+ > **onLocationChangeError**(`callback`): `void`
174
+
175
+ 注册位置更新异常回调。
176
+
177
+ #### Parameters
178
+
179
+ • **callback**: [`LocationChangeErrorListener`](#locationchangeerrorlistener)
180
+
181
+ #### Returns
182
+
183
+ `void`
184
+
185
+ <a id="offlocationchangeerror"></a>
186
+ ### offLocationChangeError()
187
+
188
+ > **offLocationChangeError**(`callback`?): `void`
189
+
190
+ 取消注册位置更新异常回调。
191
+
192
+ #### Parameters
193
+
194
+ • **callback?**: [`LocationChangeErrorListener`](#locationchangeerrorlistener)
195
+
196
+ #### Returns
197
+
198
+ `void`
199
+
68
200
  ## 相关类型
69
201
 
70
202
  <a id="getlocationparams"></a>
@@ -133,3 +265,95 @@ fetchLocation();
133
265
  > **timestamp**: `string`
134
266
 
135
267
  时间戳
268
+
269
+ <a id="chooselocationparams"></a>
270
+ ### ChooseLocationParams
271
+
272
+ #### Properties
273
+
274
+ ##### latitude?
275
+
276
+ > `optional` **latitude**: `number`
277
+
278
+ 目标地纬度
279
+
280
+ ##### longitude?
281
+
282
+ > `optional` **longitude**: `number`
283
+
284
+ 目标地经度
285
+
286
+ <a id="chooselocationresponse"></a>
287
+ ### ChooseLocationResponse
288
+
289
+ #### Properties
290
+
291
+ ##### address?
292
+
293
+ > `optional` **address**: `string`
294
+
295
+ 地址详情
296
+
297
+ ##### latitude
298
+
299
+ > **latitude**: `number`
300
+
301
+ 纬度,GCJ-02 坐标系
302
+
303
+ ##### longitude
304
+
305
+ > **longitude**: `number`
306
+
307
+ 经度,GCJ-02 坐标系
308
+
309
+ ##### name?
310
+
311
+ > `optional` **name**: `string`
312
+
313
+ 位置名称
314
+
315
+ <a id="openlocationparams"></a>
316
+ ### OpenLocationParams
317
+
318
+ #### Properties
319
+
320
+ ##### address?
321
+
322
+ > `optional` **address**: `string`
323
+
324
+ 地址详情
325
+
326
+ ##### latitude
327
+
328
+ > **latitude**: `number`
329
+
330
+ 纬度
331
+
332
+ ##### longitude
333
+
334
+ > **longitude**: `number`
335
+
336
+ 经度
337
+
338
+ ##### name?
339
+
340
+ > `optional` **name**: `string`
341
+
342
+ 位置名称
343
+
344
+ ##### scale?
345
+
346
+ > `optional` **scale**: `number`
347
+
348
+ 缩放比例,范围 5 ~ 18
349
+
350
+ <a id="startlocationupdateparams"></a>
351
+ ### StartLocationUpdateParams
352
+
353
+ #### Properties
354
+
355
+ ##### type?
356
+
357
+ > `optional` **type**: `"wgs84"` \| `"gcj02"`
358
+
359
+ 坐标系类型,支持 wgs84 或 gcj02
@@ -0,0 +1,133 @@
1
+ # Open API: 设备 / 基础信息
2
+
3
+ 设备品牌、型号、系统、内存和性能等级。
4
+
5
+ [返回目录](./README.md) | [返回速查](../open-api.md)
6
+
7
+ ## 速查
8
+
9
+ | API | 说明 |
10
+ | --- | --- |
11
+ | [getDeviceInfo](#getdeviceinfo) | 获取设备基础信息。 |
12
+ | [getDeviceInfoSync](#getdeviceinfosync) | 同步获取设备基础信息。<br><br>同步 API。 |
13
+
14
+ ## API 详情
15
+
16
+ <a id="getdeviceinfo"></a>
17
+ ### getDeviceInfo()
18
+
19
+ > **getDeviceInfo**(`params`?): `Promise`\<[`GetDeviceInfoResult`](#getdeviceinforesult)\>
20
+
21
+ 获取设备基础信息。
22
+
23
+ #### Parameters
24
+
25
+ • **params?**
26
+
27
+ #### Returns
28
+
29
+ `Promise`\<[`GetDeviceInfoResult`](#getdeviceinforesult)\>
30
+
31
+ 返回设备品牌、型号、系统、内存和性能等级等字段,见 [GetDeviceInfoResult](#getdeviceinforesult)。
32
+
33
+ #### Example
34
+
35
+ ```typescript
36
+ import { getDeviceInfo } from '@doubao-apps/framework/api';
37
+
38
+ const result = await getDeviceInfo();
39
+
40
+ console.log(result.brand, result.model, result.system);
41
+ console.log(result.platform, result.benchmarkLevel);
42
+ ```
43
+
44
+ <a id="getdeviceinfosync"></a>
45
+ ### getDeviceInfoSync()
46
+
47
+ > **getDeviceInfoSync**(`params`?): [`GetDeviceInfoResult`](#getdeviceinforesult)
48
+
49
+ 同步获取设备基础信息。
50
+
51
+ #### Parameters
52
+
53
+ • **params?**
54
+
55
+ #### Returns
56
+
57
+ [`GetDeviceInfoResult`](#getdeviceinforesult)
58
+
59
+ 返回设备品牌、型号、系统、内存和性能等级等字段,见 [GetDeviceInfoResult](#getdeviceinforesult)。
60
+
61
+ #### Example
62
+
63
+ ```typescript
64
+ import { getDeviceInfoSync } from '@doubao-apps/framework/api';
65
+
66
+ const result = getDeviceInfoSync();
67
+
68
+ console.log(result.brand, result.model, result.system);
69
+ console.log(result.platform, result.benchmarkLevel);
70
+ ```
71
+
72
+ ## 相关类型
73
+
74
+ <a id="getdeviceinforesult"></a>
75
+ ### GetDeviceInfoResult
76
+
77
+ 设备基础信息。
78
+
79
+ #### Properties
80
+
81
+ ##### abi?
82
+
83
+ > `optional` **abi**: `string`
84
+
85
+ 宿主 App 二进制接口类型,仅 Android 支持。
86
+
87
+ ##### benchmarkLevel
88
+
89
+ > **benchmarkLevel**: `number`
90
+
91
+ 设备性能等级,值越高性能越好;-1 表示未知。
92
+
93
+ ##### brand
94
+
95
+ > **brand**: `string`
96
+
97
+ 设备品牌。
98
+
99
+ ##### cpuType?
100
+
101
+ > `optional` **cpuType**: `string`
102
+
103
+ 设备 CPU 型号,仅 Android 支持。
104
+
105
+ ##### deviceAbi?
106
+
107
+ > `optional` **deviceAbi**: `string`
108
+
109
+ 设备二进制接口类型,仅 Android 支持。
110
+
111
+ ##### memorySize
112
+
113
+ > **memorySize**: `string`
114
+
115
+ 设备内存大小,单位 MB。
116
+
117
+ ##### model
118
+
119
+ > **model**: `string`
120
+
121
+ 设备型号。
122
+
123
+ ##### platform
124
+
125
+ > **platform**: `string`
126
+
127
+ 客户端平台。
128
+
129
+ ##### system
130
+
131
+ > **system**: `string`
132
+
133
+ 操作系统及版本。
@@ -7,7 +7,7 @@
7
7
  | 分组 | 说明 | API 数量 | 详细文档 |
8
8
  | --- | --- | ---: | --- |
9
9
  | 基础 / 账号 / 系统 | 账号、授权、宿主基础信息、窗口信息和能力可用性。 | 9 | [查看](./01-基础-账号-系统.md) |
10
- | 定位 | 获取设备当前的地理位置信息。 | 1 | [查看](./02-定位.md) |
10
+ | 定位 | 获取设备当前的地理位置信息。 | 9 | [查看](./02-定位.md) |
11
11
  | 存储 | 本地缓存;带 Sync 后缀的是同步 API。 | 10 | [查看](./03-存储.md) |
12
12
  | 路由 | 应用内页面跳转、返回、退出和关闭。 | 6 | [查看](./04-路由.md) |
13
13
  | 界面 / 交互 | Toast、Loading、Modal、ActionSheet 和返回前提醒。 | 9 | [查看](./05-界面-交互.md) |
@@ -27,13 +27,14 @@
27
27
  | 设备 / 网络 | 网络类型和本机局域网 IP。 | 3 | [查看](./19-设备-网络.md) |
28
28
  | 设备 / 短信 | 拉起系统短信发送面板。 | 1 | [查看](./20-设备-短信.md) |
29
29
  | 设备 / 无障碍 | 检测无障碍能力开关状态。 | 1 | [查看](./21-设备-无障碍.md) |
30
- | 设备 / 电池 | 电池信息读取与变化监听。 | 2 | [查看](./22-设备-电池.md) |
31
- | 设备 / 日历 | 向系统日历添加事件和重复事件。 | 2 | [查看](./23-设备-日历.md) |
32
- | 设备 / 剪贴板 | 读取和设置系统剪贴板内容。 | 2 | [查看](./24-设备-剪贴板.md) |
33
- | 设备 / 联系人 | 选择和添加手机联系人。 | 2 | [查看](./25-设备-联系人.md) |
34
- | 设备 / 加密 | 安全随机数能力。 | 1 | [查看](./26-设备-加密.md) |
35
- | 设备 / 电话 | 拨打电话。 | 1 | [查看](./27-设备-电话.md) |
36
- | 设备 / 扫码 | 调起扫码并读取扫码结果。 | 1 | [查看](./28-设备-扫码.md) |
37
- | 设备 / 屏幕 | 屏幕亮度、常亮和截屏/录屏相关能力。 | 5 | [查看](./29-设备-屏幕.md) |
38
- | 设备 / 震动 | 触发短震动和长震动。 | 2 | [查看](./30-设备-震动.md) |
39
- | 文件系统 | 文件读写、目录管理和文件信息操作。 | 1 | [查看](./31-文件系统.md) |
30
+ | 设备 / 基础信息 | 设备品牌、型号、系统、内存和性能等级。 | 2 | [查看](./22-设备-基础信息.md) |
31
+ | 设备 / 电池 | 电池信息读取与变化监听。 | 2 | [查看](./23-设备-电池.md) |
32
+ | 设备 / 日历 | 向系统日历添加事件和重复事件。 | 2 | [查看](./24-设备-日历.md) |
33
+ | 设备 / 剪贴板 | 读取和设置系统剪贴板内容。 | 2 | [查看](./25-设备-剪贴板.md) |
34
+ | 设备 / 联系人 | 选择和添加手机联系人。 | 2 | [查看](./26-设备-联系人.md) |
35
+ | 设备 / 加密 | 安全随机数能力。 | 1 | [查看](./27-设备-加密.md) |
36
+ | 设备 / 电话 | 拨打电话。 | 1 | [查看](./28-设备-电话.md) |
37
+ | 设备 / 扫码 | 调起扫码并读取扫码结果。 | 1 | [查看](./29-设备-扫码.md) |
38
+ | 设备 / 屏幕 | 屏幕亮度、常亮和截屏/录屏相关能力。 | 5 | [查看](./30-设备-屏幕.md) |
39
+ | 设备 / 震动 | 触发短震动和长震动。 | 2 | [查看](./31-设备-震动.md) |
40
+ | 文件系统 | 文件读写、目录管理和文件信息操作。 | 1 | [查看](./32-文件系统.md) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  > 公开可用的端能力 API。默认从 `@doubao-apps/framework/api` 导入;本文件根据 `packages/open-api/src` 的导出结构自动生成,按模块列出 API 名称和说明。
4
4
 
5
- 覆盖 131 个函数。详细参数、返回值、示例和相关类型请查看 [Open API 目录](open-api/README.md),精确字段也可按参数/结果类型名查看 IDE 类型提示或 `@doubao-apps/framework/api` 类型定义。
5
+ 覆盖 141 个函数。详细参数、返回值、示例和相关类型请查看 [Open API 目录](open-api/README.md),精确字段也可按参数/结果类型名查看 IDE 类型提示或 `@doubao-apps/framework/api` 类型定义。
6
6
 
7
7
  ## 使用方式
8
8
 
@@ -33,6 +33,14 @@ import { showToast, request, getStorage } from '@doubao-apps/framework/api';
33
33
  | API | 说明 |
34
34
  | --- | --- |
35
35
  | [getLocation](open-api/02-定位.md#getlocation) | 获取设备当前的地理位置信息。<br><br>可能涉及定位授权。 |
36
+ | [chooseLocation](open-api/02-定位.md#chooselocation) | 打开地图选择位置。 |
37
+ | [openLocation](open-api/02-定位.md#openlocation) | 使用地图查看位置。 |
38
+ | [startLocationUpdate](open-api/02-定位.md#startlocationupdate) | 开始接收位置更新。<br><br>需配对调用 stopLocationUpdate。 |
39
+ | [stopLocationUpdate](open-api/02-定位.md#stoplocationupdate) | 停止接收位置更新。 |
40
+ | [onLocationChange](open-api/02-定位.md#onlocationchange) | 注册地理位置变化回调。<br><br>返回 void,不是 Promise。 |
41
+ | [offLocationChange](open-api/02-定位.md#offlocationchange) | 取消注册地理位置变化回调。<br><br>返回 void,不是 Promise。 |
42
+ | [onLocationChangeError](open-api/02-定位.md#onlocationchangeerror) | 注册位置更新异常回调。<br><br>返回 void,不是 Promise。 |
43
+ | [offLocationChangeError](open-api/02-定位.md#offlocationchangeerror) | 取消注册位置更新异常回调。<br><br>返回 void,不是 Promise。 |
36
44
 
37
45
  ## 存储
38
46
 
@@ -269,14 +277,23 @@ iBeacon 搜索和结果读取能力。
269
277
  | --- | --- |
270
278
  | [checkIsOpenAccessibility](open-api/21-设备-无障碍.md#checkisopenaccessibility) | 检测无障碍能力是否开启。 |
271
279
 
280
+ ## 设备 / 基础信息
281
+
282
+ 设备品牌、型号、系统、内存和性能等级。
283
+
284
+ | API | 说明 |
285
+ | --- | --- |
286
+ | [getDeviceInfo](open-api/22-设备-基础信息.md#getdeviceinfo) | 获取设备基础信息。 |
287
+ | [getDeviceInfoSync](open-api/22-设备-基础信息.md#getdeviceinfosync) | 同步获取设备基础信息。<br><br>同步 API。 |
288
+
272
289
  ## 设备 / 电池
273
290
 
274
291
  电池信息读取与变化监听。
275
292
 
276
293
  | API | 说明 |
277
294
  | --- | --- |
278
- | [getBatteryInfo](open-api/22-设备-电池.md#getbatteryinfo) | 获取电池信息。 |
279
- | [onBatteryInfoChange](open-api/22-设备-电池.md#onbatteryinfochange) | 监听电池信息变化事件。<br><br>返回取消监听函数。 |
295
+ | [getBatteryInfo](open-api/23-设备-电池.md#getbatteryinfo) | 获取电池信息。 |
296
+ | [onBatteryInfoChange](open-api/23-设备-电池.md#onbatteryinfochange) | 监听电池信息变化事件。<br><br>返回取消监听函数。 |
280
297
 
281
298
  ## 设备 / 日历
282
299
 
@@ -284,8 +301,8 @@ iBeacon 搜索和结果读取能力。
284
301
 
285
302
  | API | 说明 |
286
303
  | --- | --- |
287
- | [addPhoneCalendar](open-api/23-设备-日历.md#addphonecalendar) | 向系统日历添加事件。 |
288
- | [addPhoneRepeatCalendar](open-api/23-设备-日历.md#addphonerepeatcalendar) | 向系统日历添加重复事件。 |
304
+ | [addPhoneCalendar](open-api/24-设备-日历.md#addphonecalendar) | 向系统日历添加事件。 |
305
+ | [addPhoneRepeatCalendar](open-api/24-设备-日历.md#addphonerepeatcalendar) | 向系统日历添加重复事件。 |
289
306
 
290
307
  ## 设备 / 剪贴板
291
308
 
@@ -293,8 +310,8 @@ iBeacon 搜索和结果读取能力。
293
310
 
294
311
  | API | 说明 |
295
312
  | --- | --- |
296
- | [getClipboardData](open-api/24-设备-剪贴板.md#getclipboarddata) | 获取剪贴板内容。 |
297
- | [setClipboardData](open-api/24-设备-剪贴板.md#setclipboarddata) | 设置系统剪贴板内容。 |
313
+ | [getClipboardData](open-api/25-设备-剪贴板.md#getclipboarddata) | 获取剪贴板内容。 |
314
+ | [setClipboardData](open-api/25-设备-剪贴板.md#setclipboarddata) | 设置系统剪贴板内容。 |
298
315
 
299
316
  ## 设备 / 联系人
300
317
 
@@ -302,8 +319,8 @@ iBeacon 搜索和结果读取能力。
302
319
 
303
320
  | API | 说明 |
304
321
  | --- | --- |
305
- | [chooseContact](open-api/25-设备-联系人.md#choosecontact) | 选择手机联系人。 |
306
- | [addPhoneContact](open-api/25-设备-联系人.md#addphonecontact) | 添加手机联系人。 |
322
+ | [chooseContact](open-api/26-设备-联系人.md#choosecontact) | 选择手机联系人。 |
323
+ | [addPhoneContact](open-api/26-设备-联系人.md#addphonecontact) | 添加手机联系人。 |
307
324
 
308
325
  ## 设备 / 加密
309
326
 
@@ -311,7 +328,7 @@ iBeacon 搜索和结果读取能力。
311
328
 
312
329
  | API | 说明 |
313
330
  | --- | --- |
314
- | [getRandomValues](open-api/26-设备-加密.md#getrandomvalues) | 获取安全随机数。 |
331
+ | [getRandomValues](open-api/27-设备-加密.md#getrandomvalues) | 获取安全随机数。 |
315
332
 
316
333
  ## 设备 / 电话
317
334
 
@@ -319,7 +336,7 @@ iBeacon 搜索和结果读取能力。
319
336
 
320
337
  | API | 说明 |
321
338
  | --- | --- |
322
- | [makePhoneCall](open-api/27-设备-电话.md#makephonecall) | 拨打电话。 |
339
+ | [makePhoneCall](open-api/28-设备-电话.md#makephonecall) | 拨打电话。 |
323
340
 
324
341
  ## 设备 / 扫码
325
342
 
@@ -327,7 +344,7 @@ iBeacon 搜索和结果读取能力。
327
344
 
328
345
  | API | 说明 |
329
346
  | --- | --- |
330
- | [scanCode](open-api/28-设备-扫码.md#scancode) | 调起扫码能力。 |
347
+ | [scanCode](open-api/29-设备-扫码.md#scancode) | 调起扫码能力。 |
331
348
 
332
349
  ## 设备 / 屏幕
333
350
 
@@ -335,11 +352,11 @@ iBeacon 搜索和结果读取能力。
335
352
 
336
353
  | API | 说明 |
337
354
  | --- | --- |
338
- | [getScreenBrightness](open-api/29-设备-屏幕.md#getscreenbrightness) | 获取屏幕亮度。 |
339
- | [setVisualEffectOnCapture](open-api/29-设备-屏幕.md#setvisualeffectoncapture) | 设置截屏或录屏时的视觉表现。<br><br>控制截屏或录屏时的视觉效果。 |
340
- | [setScreenBrightness](open-api/29-设备-屏幕.md#setscreenbrightness) | 设置屏幕亮度。 |
341
- | [setKeepScreenOn](open-api/29-设备-屏幕.md#setkeepscreenon) | 设置屏幕常亮状态。 |
342
- | [onUserCaptureScreen](open-api/29-设备-屏幕.md#onusercapturescreen) | 监听用户主动截屏事件。<br><br>返回取消监听函数。 |
355
+ | [getScreenBrightness](open-api/30-设备-屏幕.md#getscreenbrightness) | 获取屏幕亮度。 |
356
+ | [setVisualEffectOnCapture](open-api/30-设备-屏幕.md#setvisualeffectoncapture) | 设置截屏或录屏时的视觉表现。<br><br>控制截屏或录屏时的视觉效果。 |
357
+ | [setScreenBrightness](open-api/30-设备-屏幕.md#setscreenbrightness) | 设置屏幕亮度。 |
358
+ | [setKeepScreenOn](open-api/30-设备-屏幕.md#setkeepscreenon) | 设置屏幕常亮状态。 |
359
+ | [onUserCaptureScreen](open-api/30-设备-屏幕.md#onusercapturescreen) | 监听用户主动截屏事件。<br><br>返回取消监听函数。 |
343
360
 
344
361
  ## 设备 / 震动
345
362
 
@@ -347,8 +364,8 @@ iBeacon 搜索和结果读取能力。
347
364
 
348
365
  | API | 说明 |
349
366
  | --- | --- |
350
- | [vibrateShort](open-api/30-设备-震动.md#vibrateshort) | 触发短震动。 |
351
- | [vibrateLong](open-api/30-设备-震动.md#vibratelong) | 触发长震动。 |
367
+ | [vibrateShort](open-api/31-设备-震动.md#vibrateshort) | 触发短震动。 |
368
+ | [vibrateLong](open-api/31-设备-震动.md#vibratelong) | 触发长震动。 |
352
369
 
353
370
  ## 文件系统
354
371
 
@@ -356,4 +373,4 @@ iBeacon 搜索和结果读取能力。
356
373
 
357
374
  | API | 说明 |
358
375
  | --- | --- |
359
- | [getFileSystemManager](open-api/31-文件系统.md#getfilesystemmanager) | 获取文件系统管理器。 |
376
+ | [getFileSystemManager](open-api/32-文件系统.md#getfilesystemmanager) | 获取文件系统管理器。 |
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "packageName": "@byted-doubao-apps/ai-assets",
3
- "version": "0.0.31",
4
- "generatedAt": "2026-05-29T13:07:54.764Z",
3
+ "version": "0.0.32",
4
+ "generatedAt": "2026-06-04T03:52:19.968Z",
5
5
  "skills": [
6
6
  {
7
7
  "name": "doubao-apps-dev",
@@ -35,10 +35,12 @@ Doubao Apps SDK 是豆包应用开发框架,基于 React Lynx 框架提供完
35
35
  ### 3. 创建项目
36
36
 
37
37
  ```bash
38
- # 使用 create 创建一个 empty 工程,注意,使用正式的项目文件夹名
38
+ # 使用 create 创建一个名为 my-doubao-app 的 empty 工程
39
39
  npm create @byted-doubao-apps my-doubao-app -- --template empty -y
40
+ # 如果预期就地创建工程,使用 . 作为目录名
41
+ # npm create @byted-doubao-apps . -- --template empty -y
40
42
 
41
- # 进入项目目录
43
+ # 进入项目目录 (如果就地创建工程,则不需要执行 cd)
42
44
  cd my-doubao-app
43
45
 
44
46
  # 安装依赖
@@ -9,6 +9,14 @@
9
9
  | API | 说明 |
10
10
  | --- | --- |
11
11
  | [getLocation](#getlocation) | 获取设备当前的地理位置信息。<br><br>可能涉及定位授权。 |
12
+ | [chooseLocation](#chooselocation) | 打开地图选择位置。 |
13
+ | [openLocation](#openlocation) | 使用地图查看位置。 |
14
+ | [startLocationUpdate](#startlocationupdate) | 开始接收位置更新。<br><br>需配对调用 stopLocationUpdate。 |
15
+ | [stopLocationUpdate](#stoplocationupdate) | 停止接收位置更新。 |
16
+ | [onLocationChange](#onlocationchange) | 注册地理位置变化回调。<br><br>返回 void,不是 Promise。 |
17
+ | [offLocationChange](#offlocationchange) | 取消注册地理位置变化回调。<br><br>返回 void,不是 Promise。 |
18
+ | [onLocationChangeError](#onlocationchangeerror) | 注册位置更新异常回调。<br><br>返回 void,不是 Promise。 |
19
+ | [offLocationChangeError](#offlocationchangeerror) | 取消注册位置更新异常回调。<br><br>返回 void,不是 Promise。 |
12
20
 
13
21
  ## API 详情
14
22
 
@@ -65,6 +73,130 @@ async function fetchLocation() {
65
73
  fetchLocation();
66
74
  ```
67
75
 
76
+ <a id="chooselocation"></a>
77
+ ### chooseLocation()
78
+
79
+ > **chooseLocation**(`params`?): `Promise`\<[`ChooseLocationResponse`](#chooselocationresponse)\>
80
+
81
+ 打开地图选择位置。
82
+
83
+ #### Parameters
84
+
85
+ • **params?**: [`ChooseLocationParams`](#chooselocationparams)
86
+
87
+ #### Returns
88
+
89
+ `Promise`\<[`ChooseLocationResponse`](#chooselocationresponse)\>
90
+
91
+ <a id="openlocation"></a>
92
+ ### openLocation()
93
+
94
+ > **openLocation**(`params`): `Promise`\<`object`\>
95
+
96
+ 使用地图查看位置。
97
+
98
+ #### Parameters
99
+
100
+ • **params**: [`OpenLocationParams`](#openlocationparams)
101
+
102
+ #### Returns
103
+
104
+ `Promise`\<`object`\>
105
+
106
+ <a id="startlocationupdate"></a>
107
+ ### startLocationUpdate()
108
+
109
+ > **startLocationUpdate**(`params`?): `Promise`\<`object`\>
110
+
111
+ 开始接收位置更新。
112
+
113
+ #### Parameters
114
+
115
+ • **params?**: [`StartLocationUpdateParams`](#startlocationupdateparams)
116
+
117
+ #### Returns
118
+
119
+ `Promise`\<`object`\>
120
+
121
+ #### Remarks
122
+
123
+ 需配对调用 stopLocationUpdate。
124
+
125
+ <a id="stoplocationupdate"></a>
126
+ ### stopLocationUpdate()
127
+
128
+ > **stopLocationUpdate**(`params`?): `Promise`\<`object`\>
129
+
130
+ 停止接收位置更新。
131
+
132
+ #### Parameters
133
+
134
+ • **params?**
135
+
136
+ #### Returns
137
+
138
+ `Promise`\<`object`\>
139
+
140
+ <a id="onlocationchange"></a>
141
+ ### onLocationChange()
142
+
143
+ > **onLocationChange**(`callback`): `void`
144
+
145
+ 注册地理位置变化回调。
146
+
147
+ #### Parameters
148
+
149
+ • **callback**: [`LocationChangeListener`](#locationchangelistener)
150
+
151
+ #### Returns
152
+
153
+ `void`
154
+
155
+ <a id="offlocationchange"></a>
156
+ ### offLocationChange()
157
+
158
+ > **offLocationChange**(`callback`?): `void`
159
+
160
+ 取消注册地理位置变化回调。
161
+
162
+ #### Parameters
163
+
164
+ • **callback?**: [`LocationChangeListener`](#locationchangelistener)
165
+
166
+ #### Returns
167
+
168
+ `void`
169
+
170
+ <a id="onlocationchangeerror"></a>
171
+ ### onLocationChangeError()
172
+
173
+ > **onLocationChangeError**(`callback`): `void`
174
+
175
+ 注册位置更新异常回调。
176
+
177
+ #### Parameters
178
+
179
+ • **callback**: [`LocationChangeErrorListener`](#locationchangeerrorlistener)
180
+
181
+ #### Returns
182
+
183
+ `void`
184
+
185
+ <a id="offlocationchangeerror"></a>
186
+ ### offLocationChangeError()
187
+
188
+ > **offLocationChangeError**(`callback`?): `void`
189
+
190
+ 取消注册位置更新异常回调。
191
+
192
+ #### Parameters
193
+
194
+ • **callback?**: [`LocationChangeErrorListener`](#locationchangeerrorlistener)
195
+
196
+ #### Returns
197
+
198
+ `void`
199
+
68
200
  ## 相关类型
69
201
 
70
202
  <a id="getlocationparams"></a>
@@ -133,3 +265,95 @@ fetchLocation();
133
265
  > **timestamp**: `string`
134
266
 
135
267
  时间戳
268
+
269
+ <a id="chooselocationparams"></a>
270
+ ### ChooseLocationParams
271
+
272
+ #### Properties
273
+
274
+ ##### latitude?
275
+
276
+ > `optional` **latitude**: `number`
277
+
278
+ 目标地纬度
279
+
280
+ ##### longitude?
281
+
282
+ > `optional` **longitude**: `number`
283
+
284
+ 目标地经度
285
+
286
+ <a id="chooselocationresponse"></a>
287
+ ### ChooseLocationResponse
288
+
289
+ #### Properties
290
+
291
+ ##### address?
292
+
293
+ > `optional` **address**: `string`
294
+
295
+ 地址详情
296
+
297
+ ##### latitude
298
+
299
+ > **latitude**: `number`
300
+
301
+ 纬度,GCJ-02 坐标系
302
+
303
+ ##### longitude
304
+
305
+ > **longitude**: `number`
306
+
307
+ 经度,GCJ-02 坐标系
308
+
309
+ ##### name?
310
+
311
+ > `optional` **name**: `string`
312
+
313
+ 位置名称
314
+
315
+ <a id="openlocationparams"></a>
316
+ ### OpenLocationParams
317
+
318
+ #### Properties
319
+
320
+ ##### address?
321
+
322
+ > `optional` **address**: `string`
323
+
324
+ 地址详情
325
+
326
+ ##### latitude
327
+
328
+ > **latitude**: `number`
329
+
330
+ 纬度
331
+
332
+ ##### longitude
333
+
334
+ > **longitude**: `number`
335
+
336
+ 经度
337
+
338
+ ##### name?
339
+
340
+ > `optional` **name**: `string`
341
+
342
+ 位置名称
343
+
344
+ ##### scale?
345
+
346
+ > `optional` **scale**: `number`
347
+
348
+ 缩放比例,范围 5 ~ 18
349
+
350
+ <a id="startlocationupdateparams"></a>
351
+ ### StartLocationUpdateParams
352
+
353
+ #### Properties
354
+
355
+ ##### type?
356
+
357
+ > `optional` **type**: `"wgs84"` \| `"gcj02"`
358
+
359
+ 坐标系类型,支持 wgs84 或 gcj02
@@ -0,0 +1,133 @@
1
+ # Open API: 设备 / 基础信息
2
+
3
+ 设备品牌、型号、系统、内存和性能等级。
4
+
5
+ [返回目录](./README.md) | [返回速查](../open-api.md)
6
+
7
+ ## 速查
8
+
9
+ | API | 说明 |
10
+ | --- | --- |
11
+ | [getDeviceInfo](#getdeviceinfo) | 获取设备基础信息。 |
12
+ | [getDeviceInfoSync](#getdeviceinfosync) | 同步获取设备基础信息。<br><br>同步 API。 |
13
+
14
+ ## API 详情
15
+
16
+ <a id="getdeviceinfo"></a>
17
+ ### getDeviceInfo()
18
+
19
+ > **getDeviceInfo**(`params`?): `Promise`\<[`GetDeviceInfoResult`](#getdeviceinforesult)\>
20
+
21
+ 获取设备基础信息。
22
+
23
+ #### Parameters
24
+
25
+ • **params?**
26
+
27
+ #### Returns
28
+
29
+ `Promise`\<[`GetDeviceInfoResult`](#getdeviceinforesult)\>
30
+
31
+ 返回设备品牌、型号、系统、内存和性能等级等字段,见 [GetDeviceInfoResult](#getdeviceinforesult)。
32
+
33
+ #### Example
34
+
35
+ ```typescript
36
+ import { getDeviceInfo } from '@doubao-apps/framework/api';
37
+
38
+ const result = await getDeviceInfo();
39
+
40
+ console.log(result.brand, result.model, result.system);
41
+ console.log(result.platform, result.benchmarkLevel);
42
+ ```
43
+
44
+ <a id="getdeviceinfosync"></a>
45
+ ### getDeviceInfoSync()
46
+
47
+ > **getDeviceInfoSync**(`params`?): [`GetDeviceInfoResult`](#getdeviceinforesult)
48
+
49
+ 同步获取设备基础信息。
50
+
51
+ #### Parameters
52
+
53
+ • **params?**
54
+
55
+ #### Returns
56
+
57
+ [`GetDeviceInfoResult`](#getdeviceinforesult)
58
+
59
+ 返回设备品牌、型号、系统、内存和性能等级等字段,见 [GetDeviceInfoResult](#getdeviceinforesult)。
60
+
61
+ #### Example
62
+
63
+ ```typescript
64
+ import { getDeviceInfoSync } from '@doubao-apps/framework/api';
65
+
66
+ const result = getDeviceInfoSync();
67
+
68
+ console.log(result.brand, result.model, result.system);
69
+ console.log(result.platform, result.benchmarkLevel);
70
+ ```
71
+
72
+ ## 相关类型
73
+
74
+ <a id="getdeviceinforesult"></a>
75
+ ### GetDeviceInfoResult
76
+
77
+ 设备基础信息。
78
+
79
+ #### Properties
80
+
81
+ ##### abi?
82
+
83
+ > `optional` **abi**: `string`
84
+
85
+ 宿主 App 二进制接口类型,仅 Android 支持。
86
+
87
+ ##### benchmarkLevel
88
+
89
+ > **benchmarkLevel**: `number`
90
+
91
+ 设备性能等级,值越高性能越好;-1 表示未知。
92
+
93
+ ##### brand
94
+
95
+ > **brand**: `string`
96
+
97
+ 设备品牌。
98
+
99
+ ##### cpuType?
100
+
101
+ > `optional` **cpuType**: `string`
102
+
103
+ 设备 CPU 型号,仅 Android 支持。
104
+
105
+ ##### deviceAbi?
106
+
107
+ > `optional` **deviceAbi**: `string`
108
+
109
+ 设备二进制接口类型,仅 Android 支持。
110
+
111
+ ##### memorySize
112
+
113
+ > **memorySize**: `string`
114
+
115
+ 设备内存大小,单位 MB。
116
+
117
+ ##### model
118
+
119
+ > **model**: `string`
120
+
121
+ 设备型号。
122
+
123
+ ##### platform
124
+
125
+ > **platform**: `string`
126
+
127
+ 客户端平台。
128
+
129
+ ##### system
130
+
131
+ > **system**: `string`
132
+
133
+ 操作系统及版本。
@@ -7,7 +7,7 @@
7
7
  | 分组 | 说明 | API 数量 | 详细文档 |
8
8
  | --- | --- | ---: | --- |
9
9
  | 基础 / 账号 / 系统 | 账号、授权、宿主基础信息、窗口信息和能力可用性。 | 9 | [查看](./01-基础-账号-系统.md) |
10
- | 定位 | 获取设备当前的地理位置信息。 | 1 | [查看](./02-定位.md) |
10
+ | 定位 | 获取设备当前的地理位置信息。 | 9 | [查看](./02-定位.md) |
11
11
  | 存储 | 本地缓存;带 Sync 后缀的是同步 API。 | 10 | [查看](./03-存储.md) |
12
12
  | 路由 | 应用内页面跳转、返回、退出和关闭。 | 6 | [查看](./04-路由.md) |
13
13
  | 界面 / 交互 | Toast、Loading、Modal、ActionSheet 和返回前提醒。 | 9 | [查看](./05-界面-交互.md) |
@@ -27,13 +27,14 @@
27
27
  | 设备 / 网络 | 网络类型和本机局域网 IP。 | 3 | [查看](./19-设备-网络.md) |
28
28
  | 设备 / 短信 | 拉起系统短信发送面板。 | 1 | [查看](./20-设备-短信.md) |
29
29
  | 设备 / 无障碍 | 检测无障碍能力开关状态。 | 1 | [查看](./21-设备-无障碍.md) |
30
- | 设备 / 电池 | 电池信息读取与变化监听。 | 2 | [查看](./22-设备-电池.md) |
31
- | 设备 / 日历 | 向系统日历添加事件和重复事件。 | 2 | [查看](./23-设备-日历.md) |
32
- | 设备 / 剪贴板 | 读取和设置系统剪贴板内容。 | 2 | [查看](./24-设备-剪贴板.md) |
33
- | 设备 / 联系人 | 选择和添加手机联系人。 | 2 | [查看](./25-设备-联系人.md) |
34
- | 设备 / 加密 | 安全随机数能力。 | 1 | [查看](./26-设备-加密.md) |
35
- | 设备 / 电话 | 拨打电话。 | 1 | [查看](./27-设备-电话.md) |
36
- | 设备 / 扫码 | 调起扫码并读取扫码结果。 | 1 | [查看](./28-设备-扫码.md) |
37
- | 设备 / 屏幕 | 屏幕亮度、常亮和截屏/录屏相关能力。 | 5 | [查看](./29-设备-屏幕.md) |
38
- | 设备 / 震动 | 触发短震动和长震动。 | 2 | [查看](./30-设备-震动.md) |
39
- | 文件系统 | 文件读写、目录管理和文件信息操作。 | 1 | [查看](./31-文件系统.md) |
30
+ | 设备 / 基础信息 | 设备品牌、型号、系统、内存和性能等级。 | 2 | [查看](./22-设备-基础信息.md) |
31
+ | 设备 / 电池 | 电池信息读取与变化监听。 | 2 | [查看](./23-设备-电池.md) |
32
+ | 设备 / 日历 | 向系统日历添加事件和重复事件。 | 2 | [查看](./24-设备-日历.md) |
33
+ | 设备 / 剪贴板 | 读取和设置系统剪贴板内容。 | 2 | [查看](./25-设备-剪贴板.md) |
34
+ | 设备 / 联系人 | 选择和添加手机联系人。 | 2 | [查看](./26-设备-联系人.md) |
35
+ | 设备 / 加密 | 安全随机数能力。 | 1 | [查看](./27-设备-加密.md) |
36
+ | 设备 / 电话 | 拨打电话。 | 1 | [查看](./28-设备-电话.md) |
37
+ | 设备 / 扫码 | 调起扫码并读取扫码结果。 | 1 | [查看](./29-设备-扫码.md) |
38
+ | 设备 / 屏幕 | 屏幕亮度、常亮和截屏/录屏相关能力。 | 5 | [查看](./30-设备-屏幕.md) |
39
+ | 设备 / 震动 | 触发短震动和长震动。 | 2 | [查看](./31-设备-震动.md) |
40
+ | 文件系统 | 文件读写、目录管理和文件信息操作。 | 1 | [查看](./32-文件系统.md) |
@@ -2,7 +2,7 @@
2
2
 
3
3
  > 公开可用的端能力 API。默认从 `@doubao-apps/framework/api` 导入;本文件根据 `packages/open-api/src` 的导出结构自动生成,按模块列出 API 名称和说明。
4
4
 
5
- 覆盖 131 个函数。详细参数、返回值、示例和相关类型请查看 [Open API 目录](open-api/README.md),精确字段也可按参数/结果类型名查看 IDE 类型提示或 `@doubao-apps/framework/api` 类型定义。
5
+ 覆盖 141 个函数。详细参数、返回值、示例和相关类型请查看 [Open API 目录](open-api/README.md),精确字段也可按参数/结果类型名查看 IDE 类型提示或 `@doubao-apps/framework/api` 类型定义。
6
6
 
7
7
  ## 使用方式
8
8
 
@@ -33,6 +33,14 @@ import { showToast, request, getStorage } from '@doubao-apps/framework/api';
33
33
  | API | 说明 |
34
34
  | --- | --- |
35
35
  | [getLocation](open-api/02-定位.md#getlocation) | 获取设备当前的地理位置信息。<br><br>可能涉及定位授权。 |
36
+ | [chooseLocation](open-api/02-定位.md#chooselocation) | 打开地图选择位置。 |
37
+ | [openLocation](open-api/02-定位.md#openlocation) | 使用地图查看位置。 |
38
+ | [startLocationUpdate](open-api/02-定位.md#startlocationupdate) | 开始接收位置更新。<br><br>需配对调用 stopLocationUpdate。 |
39
+ | [stopLocationUpdate](open-api/02-定位.md#stoplocationupdate) | 停止接收位置更新。 |
40
+ | [onLocationChange](open-api/02-定位.md#onlocationchange) | 注册地理位置变化回调。<br><br>返回 void,不是 Promise。 |
41
+ | [offLocationChange](open-api/02-定位.md#offlocationchange) | 取消注册地理位置变化回调。<br><br>返回 void,不是 Promise。 |
42
+ | [onLocationChangeError](open-api/02-定位.md#onlocationchangeerror) | 注册位置更新异常回调。<br><br>返回 void,不是 Promise。 |
43
+ | [offLocationChangeError](open-api/02-定位.md#offlocationchangeerror) | 取消注册位置更新异常回调。<br><br>返回 void,不是 Promise。 |
36
44
 
37
45
  ## 存储
38
46
 
@@ -269,14 +277,23 @@ iBeacon 搜索和结果读取能力。
269
277
  | --- | --- |
270
278
  | [checkIsOpenAccessibility](open-api/21-设备-无障碍.md#checkisopenaccessibility) | 检测无障碍能力是否开启。 |
271
279
 
280
+ ## 设备 / 基础信息
281
+
282
+ 设备品牌、型号、系统、内存和性能等级。
283
+
284
+ | API | 说明 |
285
+ | --- | --- |
286
+ | [getDeviceInfo](open-api/22-设备-基础信息.md#getdeviceinfo) | 获取设备基础信息。 |
287
+ | [getDeviceInfoSync](open-api/22-设备-基础信息.md#getdeviceinfosync) | 同步获取设备基础信息。<br><br>同步 API。 |
288
+
272
289
  ## 设备 / 电池
273
290
 
274
291
  电池信息读取与变化监听。
275
292
 
276
293
  | API | 说明 |
277
294
  | --- | --- |
278
- | [getBatteryInfo](open-api/22-设备-电池.md#getbatteryinfo) | 获取电池信息。 |
279
- | [onBatteryInfoChange](open-api/22-设备-电池.md#onbatteryinfochange) | 监听电池信息变化事件。<br><br>返回取消监听函数。 |
295
+ | [getBatteryInfo](open-api/23-设备-电池.md#getbatteryinfo) | 获取电池信息。 |
296
+ | [onBatteryInfoChange](open-api/23-设备-电池.md#onbatteryinfochange) | 监听电池信息变化事件。<br><br>返回取消监听函数。 |
280
297
 
281
298
  ## 设备 / 日历
282
299
 
@@ -284,8 +301,8 @@ iBeacon 搜索和结果读取能力。
284
301
 
285
302
  | API | 说明 |
286
303
  | --- | --- |
287
- | [addPhoneCalendar](open-api/23-设备-日历.md#addphonecalendar) | 向系统日历添加事件。 |
288
- | [addPhoneRepeatCalendar](open-api/23-设备-日历.md#addphonerepeatcalendar) | 向系统日历添加重复事件。 |
304
+ | [addPhoneCalendar](open-api/24-设备-日历.md#addphonecalendar) | 向系统日历添加事件。 |
305
+ | [addPhoneRepeatCalendar](open-api/24-设备-日历.md#addphonerepeatcalendar) | 向系统日历添加重复事件。 |
289
306
 
290
307
  ## 设备 / 剪贴板
291
308
 
@@ -293,8 +310,8 @@ iBeacon 搜索和结果读取能力。
293
310
 
294
311
  | API | 说明 |
295
312
  | --- | --- |
296
- | [getClipboardData](open-api/24-设备-剪贴板.md#getclipboarddata) | 获取剪贴板内容。 |
297
- | [setClipboardData](open-api/24-设备-剪贴板.md#setclipboarddata) | 设置系统剪贴板内容。 |
313
+ | [getClipboardData](open-api/25-设备-剪贴板.md#getclipboarddata) | 获取剪贴板内容。 |
314
+ | [setClipboardData](open-api/25-设备-剪贴板.md#setclipboarddata) | 设置系统剪贴板内容。 |
298
315
 
299
316
  ## 设备 / 联系人
300
317
 
@@ -302,8 +319,8 @@ iBeacon 搜索和结果读取能力。
302
319
 
303
320
  | API | 说明 |
304
321
  | --- | --- |
305
- | [chooseContact](open-api/25-设备-联系人.md#choosecontact) | 选择手机联系人。 |
306
- | [addPhoneContact](open-api/25-设备-联系人.md#addphonecontact) | 添加手机联系人。 |
322
+ | [chooseContact](open-api/26-设备-联系人.md#choosecontact) | 选择手机联系人。 |
323
+ | [addPhoneContact](open-api/26-设备-联系人.md#addphonecontact) | 添加手机联系人。 |
307
324
 
308
325
  ## 设备 / 加密
309
326
 
@@ -311,7 +328,7 @@ iBeacon 搜索和结果读取能力。
311
328
 
312
329
  | API | 说明 |
313
330
  | --- | --- |
314
- | [getRandomValues](open-api/26-设备-加密.md#getrandomvalues) | 获取安全随机数。 |
331
+ | [getRandomValues](open-api/27-设备-加密.md#getrandomvalues) | 获取安全随机数。 |
315
332
 
316
333
  ## 设备 / 电话
317
334
 
@@ -319,7 +336,7 @@ iBeacon 搜索和结果读取能力。
319
336
 
320
337
  | API | 说明 |
321
338
  | --- | --- |
322
- | [makePhoneCall](open-api/27-设备-电话.md#makephonecall) | 拨打电话。 |
339
+ | [makePhoneCall](open-api/28-设备-电话.md#makephonecall) | 拨打电话。 |
323
340
 
324
341
  ## 设备 / 扫码
325
342
 
@@ -327,7 +344,7 @@ iBeacon 搜索和结果读取能力。
327
344
 
328
345
  | API | 说明 |
329
346
  | --- | --- |
330
- | [scanCode](open-api/28-设备-扫码.md#scancode) | 调起扫码能力。 |
347
+ | [scanCode](open-api/29-设备-扫码.md#scancode) | 调起扫码能力。 |
331
348
 
332
349
  ## 设备 / 屏幕
333
350
 
@@ -335,11 +352,11 @@ iBeacon 搜索和结果读取能力。
335
352
 
336
353
  | API | 说明 |
337
354
  | --- | --- |
338
- | [getScreenBrightness](open-api/29-设备-屏幕.md#getscreenbrightness) | 获取屏幕亮度。 |
339
- | [setVisualEffectOnCapture](open-api/29-设备-屏幕.md#setvisualeffectoncapture) | 设置截屏或录屏时的视觉表现。<br><br>控制截屏或录屏时的视觉效果。 |
340
- | [setScreenBrightness](open-api/29-设备-屏幕.md#setscreenbrightness) | 设置屏幕亮度。 |
341
- | [setKeepScreenOn](open-api/29-设备-屏幕.md#setkeepscreenon) | 设置屏幕常亮状态。 |
342
- | [onUserCaptureScreen](open-api/29-设备-屏幕.md#onusercapturescreen) | 监听用户主动截屏事件。<br><br>返回取消监听函数。 |
355
+ | [getScreenBrightness](open-api/30-设备-屏幕.md#getscreenbrightness) | 获取屏幕亮度。 |
356
+ | [setVisualEffectOnCapture](open-api/30-设备-屏幕.md#setvisualeffectoncapture) | 设置截屏或录屏时的视觉表现。<br><br>控制截屏或录屏时的视觉效果。 |
357
+ | [setScreenBrightness](open-api/30-设备-屏幕.md#setscreenbrightness) | 设置屏幕亮度。 |
358
+ | [setKeepScreenOn](open-api/30-设备-屏幕.md#setkeepscreenon) | 设置屏幕常亮状态。 |
359
+ | [onUserCaptureScreen](open-api/30-设备-屏幕.md#onusercapturescreen) | 监听用户主动截屏事件。<br><br>返回取消监听函数。 |
343
360
 
344
361
  ## 设备 / 震动
345
362
 
@@ -347,8 +364,8 @@ iBeacon 搜索和结果读取能力。
347
364
 
348
365
  | API | 说明 |
349
366
  | --- | --- |
350
- | [vibrateShort](open-api/30-设备-震动.md#vibrateshort) | 触发短震动。 |
351
- | [vibrateLong](open-api/30-设备-震动.md#vibratelong) | 触发长震动。 |
367
+ | [vibrateShort](open-api/31-设备-震动.md#vibrateshort) | 触发短震动。 |
368
+ | [vibrateLong](open-api/31-设备-震动.md#vibratelong) | 触发长震动。 |
352
369
 
353
370
  ## 文件系统
354
371
 
@@ -356,4 +373,4 @@ iBeacon 搜索和结果读取能力。
356
373
 
357
374
  | API | 说明 |
358
375
  | --- | --- |
359
- | [getFileSystemManager](open-api/31-文件系统.md#getfilesystemmanager) | 获取文件系统管理器。 |
376
+ | [getFileSystemManager](open-api/32-文件系统.md#getfilesystemmanager) | 获取文件系统管理器。 |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@doubao-apps/ai",
3
- "version": "0.0.31",
3
+ "version": "0.0.32",
4
4
  "description": "Doubao Apps SDK AI tools with context and skills management",
5
5
  "type": "module",
6
6
  "bin": {