@doubao-dev/plugin-app-dev 0.0.0-stage → 0.0.40-canary-dea0ddc73-20261026073950

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 (107) hide show
  1. package/README.md +10 -2
  2. package/dist/147.js +9 -0
  3. package/dist/assets.d.ts +5 -0
  4. package/dist/assets.js +4 -0
  5. package/dist/index.d.ts +43 -0
  6. package/dist/index.js +1378 -0
  7. package/dist/plugin.d.ts +102 -0
  8. package/dist/plugin.js +4995 -0
  9. package/dist/preview.js +16 -0
  10. package/dist/rslib-runtime.js +33 -0
  11. package/dist/skills/doubao-plugin-app/SKILL.md +21 -0
  12. package/dist/skills/doubao-plugin-app/references/app-development.md +85 -0
  13. package/dist/skills/doubao-plugin-app/references/frontend/components/container-overlay.md +131 -0
  14. package/dist/skills/doubao-plugin-app/references/frontend/components/form-controls.md +146 -0
  15. package/dist/skills/doubao-plugin-app/references/frontend/components/interactive-controls.md +120 -0
  16. package/dist/skills/doubao-plugin-app/references/frontend/components/map-canvas.md +107 -0
  17. package/dist/skills/doubao-plugin-app/references/frontend/components/overview.md +43 -0
  18. package/dist/skills/doubao-plugin-app/references/frontend/components/scroll-list.md +149 -0
  19. package/dist/skills/doubao-plugin-app/references/frontend/components/text-media.md +209 -0
  20. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/01-/345/237/272/347/241/200.md +1389 -0
  21. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/02-/347/263/273/347/273/237.md +1376 -0
  22. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/03-/350/207/252/345/256/232/344/271/211/351/200/232/344/277/241.md +127 -0
  23. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/04-/345/256/232/344/275/215.md +784 -0
  24. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/05-/345/255/230/345/202/250.md +1176 -0
  25. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/06-/350/267/257/347/224/261.md +839 -0
  26. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/07-/347/225/214/351/235/242.md +376 -0
  27. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/08-/344/272/244/344/272/222.md +1319 -0
  28. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/09-/350/276/223/345/205/245.md +192 -0
  29. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/10-/347/275/221/347/273/234.md +900 -0
  30. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/11-/345/252/222/344/275/223.md +1496 -0
  31. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/12-/344/270/232/345/212/241/350/203/275/345/212/233.md +1281 -0
  32. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/13-/347/231/273/345/275/225.md +511 -0
  33. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/14-/346/224/257/344/273/230.md +943 -0
  34. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/15-/346/225/260/346/215/256/345/210/206/346/236/220.md +124 -0
  35. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/16-/350/223/235/347/211/231.md +3364 -0
  36. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/17-wi-fi.md +1028 -0
  37. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/18-/345/212/240/351/200/237/345/272/246/350/256/241.md +354 -0
  38. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/19-ibeacon.md +508 -0
  39. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/20-/347/275/227/347/233/230.md +320 -0
  40. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/21-/350/256/276/345/244/207/346/226/271/345/220/221.md +351 -0
  41. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/22-/351/231/200/350/236/272/344/273/252.md +354 -0
  42. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/23-/345/252/222/344/275/223-/350/256/276/345/244/207-/347/275/221/347/273/234.md +264 -0
  43. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/24-/347/237/255/344/277/241.md +155 -0
  44. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/25-/346/227/240/351/232/234/347/242/215.md +144 -0
  45. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/26-/345/237/272/347/241/200/344/277/241/346/201/257.md +238 -0
  46. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/27-/347/224/265/346/261/240.md +235 -0
  47. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/28-/345/211/252/350/264/264/346/235/277.md +303 -0
  48. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/29-/345/212/240/345/257/206.md +126 -0
  49. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/30-/346/227/245/345/216/206.md +417 -0
  50. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/31-/347/224/265/350/257/235.md +144 -0
  51. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/32-/346/211/253/347/240/201.md +236 -0
  52. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/33-/345/261/217/345/271/225.md +747 -0
  53. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/34-/351/234/207/345/212/250.md +277 -0
  54. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/35-/346/226/207/344/273/266/347/263/273/347/273/237.md +431 -0
  55. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/common-errors.md +69 -0
  56. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/groups.md +43 -0
  57. package/dist/skills/doubao-plugin-app/references/frontend/doubao-agentic-service-api/quick-reference.md +436 -0
  58. package/dist/skills/doubao-plugin-app/references/frontend/examples/common-patterns.md +590 -0
  59. package/dist/skills/doubao-plugin-app/references/frontend/examples/doubao-agentic-service-api-recipes.md +209 -0
  60. package/dist/skills/doubao-plugin-app/references/frontend/examples/page-widget-basics.md +368 -0
  61. package/dist/skills/doubao-plugin-app/references/frontend/examples/page-widget-recipes.md +65 -0
  62. package/dist/skills/doubao-plugin-app/references/frontend/framework/core.md +283 -0
  63. package/dist/skills/doubao-plugin-app/references/frontend/guides/auth.md +277 -0
  64. package/dist/skills/doubao-plugin-app/references/frontend/guides/best-practices.md +574 -0
  65. package/dist/skills/doubao-plugin-app/references/frontend/guides/client-tools-and-events.md +209 -0
  66. package/dist/skills/doubao-plugin-app/references/frontend/guides/component-development.md +832 -0
  67. package/dist/skills/doubao-plugin-app/references/frontend/guides/debugger-mcp.md +537 -0
  68. package/dist/skills/doubao-plugin-app/references/frontend/guides/expired-widget.md +101 -0
  69. package/dist/skills/doubao-plugin-app/references/frontend/guides/performance-optimization.md +417 -0
  70. package/dist/skills/doubao-plugin-app/references/frontend/guides/troubleshooting.md +278 -0
  71. package/dist/skills/doubao-plugin-app/references/frontend/lynx/best-practices.md +720 -0
  72. package/dist/skills/doubao-plugin-app/references/frontend/lynx/css/pseudo-classes.md +149 -0
  73. package/dist/skills/doubao-plugin-app/references/frontend/lynx/css/selectors.md +224 -0
  74. package/dist/skills/doubao-plugin-app/references/frontend/lynx/css/supported-properties.md +269 -0
  75. package/dist/skills/doubao-plugin-app/references/frontend/lynx/css/values-and-units.md +314 -0
  76. package/dist/skills/doubao-plugin-app/references/frontend/lynx/layout/flex-layout.md +334 -0
  77. package/dist/skills/doubao-plugin-app/references/frontend/lynx/layout/grid-layout.md +408 -0
  78. package/dist/skills/doubao-plugin-app/references/frontend/lynx/layout/linear-layout.md +355 -0
  79. package/dist/skills/doubao-plugin-app/references/frontend/lynx/layout/relative-layout.md +189 -0
  80. package/dist/skills/doubao-plugin-app/references/frontend/lynx/lynx-vs-web/css-differences.md +737 -0
  81. package/dist/skills/doubao-plugin-app/references/frontend/lynx/lynx-vs-web/migration-guide.md +669 -0
  82. package/dist/skills/doubao-plugin-app/references/frontend/lynx/lynx-vs-web/unsupported-features.md +290 -0
  83. package/dist/skills/doubao-plugin-app/references/frontend/lynx/overview.md +60 -0
  84. package/dist/skills/doubao-plugin-app/references/frontend/lynx/patterns/animation.md +243 -0
  85. package/dist/skills/doubao-plugin-app/references/frontend/lynx/patterns/responsive.md +194 -0
  86. package/dist/skills/doubao-plugin-app/references/frontend/lynx/patterns/theming.md +143 -0
  87. package/dist/skills/doubao-plugin-app/references/frontend/lynx/quick-reference.md +229 -0
  88. package/dist/skills/doubao-plugin-app/references/frontend/rules/dos-and-donts.md +479 -0
  89. package/dist/skills/doubao-plugin-app/references/frontend/widget-templates/design-boundary.md +46 -0
  90. package/dist/skills/doubao-plugin-app/references/frontend/widget-templates/overview.md +118 -0
  91. package/dist/skills/doubao-plugin-app/references/frontend/widget-templates/props.md +301 -0
  92. package/dist/skills/doubao-plugin-app/references/mcp-and-cards.md +38 -0
  93. package/dist/templates/README.md.template +11 -0
  94. package/dist/templates/com.doubao/app/manifest.yaml +41 -0
  95. package/dist/templates/com.doubao/app/package.json.template +13 -0
  96. package/dist/templates/com.doubao/app/src/app.config.ts.template +5 -0
  97. package/dist/templates/com.doubao/app/src/app.ts.template +3 -0
  98. package/dist/templates/com.doubao/app/src/pages/home/index.css +14 -0
  99. package/dist/templates/com.doubao/app/src/pages/home/index.tsx.template +14 -0
  100. package/dist/templates/com.doubao/app/src/widgets/example/index.tsx.template +29 -0
  101. package/dist/templates/com.doubao/app/tsconfig.json +19 -0
  102. package/dist/templates/mcp.json +9 -0
  103. package/dist/templates/plugin.json.template +29 -0
  104. package/dist/templates/skills/example/SKILL.md.template +14 -0
  105. package/dist/upload.d.ts +44 -0
  106. package/dist/upload.js +38 -0
  107. package/package.json +60 -3
@@ -0,0 +1,235 @@
1
+ # 豆包应用插件的端能力 API: 电池
2
+
3
+ 电池信息读取与变化监听。
4
+
5
+ [返回目录](./groups.md) | [返回速查](./quick-reference.md)
6
+
7
+ ## 速查
8
+
9
+ | API | 说明 |
10
+ | --- | --- |
11
+ | [getBatteryInfo](#getbatteryinfo) | 获取电池信息。 |
12
+ | [onBatteryInfoChange](#onbatteryinfochange) | 监听电池信息变化事件。<br><br>返回取消监听函数。 |
13
+
14
+ ## API 详情
15
+
16
+ <a id="getbatteryinfo"></a>
17
+ ### getBatteryInfo()
18
+
19
+ # getBatteryInfo
20
+
21
+ 获取电池信息。
22
+
23
+ ## 扫码预览
24
+ ![扫码预览 getBatteryInfo](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=doubao%3A%2F%2Fdoubao_apps%3Fapp_id%3Ddb_1McM5Ni%26path%3D%252Fpages%252Fapi%252Fdevice%252Fget-battery-info%252Findex)
25
+
26
+ ## 使用限制
27
+
28
+ > [!WARNING]
29
+ > **Android、iOS**:Android 返回 0 到 100,iOS 由系统电量换算后可能返回 0;依赖固定下限的调用方在低电量时可能误判。
30
+
31
+ ## 支持版本
32
+
33
+ 前端库版本不低于 `0.0.25`。
34
+
35
+ ## 支持平台
36
+
37
+ <table>
38
+ <thead>
39
+ <tr><th>平台</th><th>支持情况</th></tr>
40
+ </thead>
41
+ <tbody>
42
+ <tr><td>Android</td><td>支持</td></tr>
43
+ <tr><td>iOS</td><td>支持</td></tr>
44
+ <tr><td>PC</td><td>不支持</td></tr>
45
+ <tr><td>HarmonyOS</td><td>不支持</td></tr>
46
+ </tbody>
47
+ </table>
48
+
49
+ ## 支持场景
50
+
51
+ <table>
52
+ <thead>
53
+ <tr><th>场景</th><th>支持情况</th></tr>
54
+ </thead>
55
+ <tbody>
56
+ <tr><td>页面</td><td>支持</td></tr>
57
+ <tr><td>卡片</td><td>不支持</td></tr>
58
+ </tbody>
59
+ </table>
60
+
61
+ ## 使用说明
62
+
63
+ - 电量为瞬时快照,需要持续跟踪省电模式时改用 `onBatteryInfoChange`
64
+
65
+ ## 调用方式
66
+
67
+ ### 异步 API
68
+
69
+ ```typescript
70
+ getBatteryInfo(params?: object): Promise<GetBatteryInfoResult>
71
+ ```
72
+
73
+ ## 入参
74
+
75
+ 无。
76
+
77
+ ## 调用示例
78
+
79
+ ```typescript
80
+ import { getBatteryInfo } from '@doubao-dev/framework/api';
81
+
82
+ const { isCharging, level } = await getBatteryInfo();
83
+
84
+ console.log(isCharging, level);
85
+ ```
86
+
87
+ ## 成功返回
88
+
89
+ <table>
90
+ <thead>
91
+ <tr><th>名称</th><th>类型</th><th>必返</th><th>约束</th><th>说明</th></tr>
92
+ </thead>
93
+ <tbody>
94
+ <tr><td><code>isCharging</code></td><td><code>boolean</code></td><td>是</td><td>-</td><td>是否正在充电。</td></tr>
95
+ <tr><td><code>level</code></td><td><code>number</code></td><td>是</td><td>取值范围 0 到 100 的整数</td><td>当前电量百分比。Android、iOS:Android 返回 0 到 100,iOS 由系统电量换算后可能返回 0。</td></tr>
96
+ </tbody>
97
+ </table>
98
+
99
+ ### 返回示例
100
+
101
+ ```json
102
+ {
103
+ "isCharging": false,
104
+ "level": 82
105
+ }
106
+ ```
107
+
108
+ ## 错误处理
109
+
110
+ 错误对象和通用错误码见 [通用错误处理](./common-errors.md#错误返回)。
111
+
112
+ ### 错误码
113
+
114
+ #### 通用错误码
115
+
116
+ <table>
117
+ <thead>
118
+ <tr><th>errNo</th><th>errMsg</th><th>说明</th><th>平台</th></tr>
119
+ </thead>
120
+ <tbody>
121
+ <tr><td><code>102</code></td><td><code>internal error</code></td><td>内部错误</td><td>Android</td></tr>
122
+ </tbody>
123
+ </table>
124
+
125
+ <a id="onbatteryinfochange"></a>
126
+ ### onBatteryInfoChange()
127
+
128
+ # onBatteryInfoChange
129
+
130
+ 监听电池信息变化事件。
131
+
132
+ ## 扫码预览
133
+ ![扫码预览 onBatteryInfoChange](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=doubao%3A%2F%2Fdoubao_apps%3Fapp_id%3Ddb_1McM5Ni%26path%3D%252Fpages%252Fapi%252Fdevice%252Fget-battery-info%252Findex)
134
+
135
+ ## 支持版本
136
+
137
+ 前端库版本不低于 `0.0.25`。
138
+
139
+ ## 支持平台
140
+
141
+ <table>
142
+ <thead>
143
+ <tr><th>平台</th><th>支持情况</th></tr>
144
+ </thead>
145
+ <tbody>
146
+ <tr><td>Android</td><td>支持</td></tr>
147
+ <tr><td>iOS</td><td>支持</td></tr>
148
+ <tr><td>PC</td><td>不支持</td></tr>
149
+ <tr><td>HarmonyOS</td><td>不支持</td></tr>
150
+ </tbody>
151
+ </table>
152
+
153
+ ## 支持场景
154
+
155
+ <table>
156
+ <thead>
157
+ <tr><th>场景</th><th>支持情况</th></tr>
158
+ </thead>
159
+ <tbody>
160
+ <tr><td>页面</td><td>支持</td></tr>
161
+ <tr><td>卡片</td><td>不支持</td></tr>
162
+ </tbody>
163
+ </table>
164
+
165
+ ## 使用说明
166
+
167
+ - 取消函数只移除本地回调,不影响系统省电模式状态
168
+
169
+ ## 调用方式
170
+
171
+ ### 事件监听 API
172
+
173
+ ```typescript
174
+ onBatteryInfoChange(callback: (event: BatteryInfoChangeEvent) => void): () => void
175
+ ```
176
+
177
+ ## 入参
178
+
179
+ 无。
180
+
181
+ ## 调用示例
182
+
183
+ ```ts
184
+ import { onBatteryInfoChange } from '@doubao-dev/framework/api';
185
+
186
+ const off = onBatteryInfoChange(({ isLowPowerModeEnabled }) => {
187
+ console.log(isLowPowerModeEnabled);
188
+ });
189
+
190
+ off();
191
+ ```
192
+
193
+ ## 回调参数
194
+
195
+ <table>
196
+ <thead>
197
+ <tr><th>名称</th><th>类型</th><th>必返</th><th>说明</th></tr>
198
+ </thead>
199
+ <tbody>
200
+ <tr><td><code>event.isLowPowerModeEnabled</code></td><td><code>boolean</code></td><td>是</td><td>是否处于省电模式。</td></tr>
201
+ </tbody>
202
+ </table>
203
+
204
+ ## 返回值
205
+
206
+ 返回取消当前监听函数的函数。
207
+
208
+ ### 回调示例
209
+
210
+ ```json
211
+ {
212
+ "isLowPowerModeEnabled": true
213
+ }
214
+ ```
215
+
216
+ ## 相关类型
217
+
218
+ <a id="getbatteryinforesult"></a>
219
+ ### GetBatteryInfoResult
220
+
221
+ 电池信息。
222
+
223
+ #### Properties
224
+
225
+ • **isCharging**: `boolean` - 是否正在充电
226
+ • **level**: `number` - 当前电量百分比
227
+
228
+ <a id="batteryinfochangeevent"></a>
229
+ ### BatteryInfoChangeEvent
230
+
231
+ 电池信息变化事件。
232
+
233
+ #### Properties
234
+
235
+ • **isLowPowerModeEnabled**: `boolean` - 是否处于省电模式
@@ -0,0 +1,303 @@
1
+ # 豆包应用插件的端能力 API: 剪贴板
2
+
3
+ 读取和设置系统剪贴板内容。
4
+
5
+ [返回目录](./groups.md) | [返回速查](./quick-reference.md)
6
+
7
+ ## 速查
8
+
9
+ | API | 说明 |
10
+ | --- | --- |
11
+ | [getClipboardData](#getclipboarddata) | 获取剪贴板内容。 |
12
+ | [setClipboardData](#setclipboarddata) | 设置系统剪贴板内容。 |
13
+
14
+ ## API 详情
15
+
16
+ <a id="getclipboarddata"></a>
17
+ ### getClipboardData()
18
+
19
+ # getClipboardData
20
+
21
+ 获取剪贴板内容。
22
+
23
+ ## 扫码预览
24
+ ![扫码预览 getClipboardData](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=doubao%3A%2F%2Fdoubao_apps%3Fapp_id%3Ddb_1McM5Ni%26path%3D%252Fpages%252Fapi%252Fdevice%252Fclipboard%252Findex)
25
+
26
+ ## 支持版本
27
+
28
+ 前端库版本不低于 `0.0.25`。
29
+
30
+ ## 支持平台
31
+
32
+ <table>
33
+ <thead>
34
+ <tr><th>平台</th><th>支持情况</th></tr>
35
+ </thead>
36
+ <tbody>
37
+ <tr><td>Android</td><td>支持</td></tr>
38
+ <tr><td>iOS</td><td>支持</td></tr>
39
+ <tr><td>PC</td><td>不支持</td></tr>
40
+ <tr><td>HarmonyOS</td><td>不支持</td></tr>
41
+ </tbody>
42
+ </table>
43
+
44
+ ## 支持场景
45
+
46
+ <table>
47
+ <thead>
48
+ <tr><th>场景</th><th>支持情况</th></tr>
49
+ </thead>
50
+ <tbody>
51
+ <tr><td>页面</td><td>支持</td></tr>
52
+ <tr><td>卡片</td><td>支持</td></tr>
53
+ </tbody>
54
+ </table>
55
+
56
+ ## 接入准备
57
+
58
+ ### 权限要求
59
+
60
+ <table>
61
+ <thead>
62
+ <tr><th>类型</th><th>标识</th><th>是否必须</th><th>平台</th><th>说明</th></tr>
63
+ </thead>
64
+ <tbody>
65
+ <tr><td>豆包能力</td><td><code>剪贴板能力</code></td><td>按条件</td><td>Android、iOS</td><td>需要豆包提供剪贴板能力,未开通时调用失败</td></tr>
66
+ </tbody>
67
+ </table>
68
+
69
+ ### 授权行为
70
+
71
+ - 该接口不主动弹出授权,仅在豆包已提供剪贴板能力时读取;能力缺失时调用直接失败,需在支持该能力的豆包版本中调用
72
+
73
+ ## 使用说明
74
+
75
+ - 剪贴板内容属于敏感信息,请仅在用户明确操作后读取
76
+
77
+ ## 调用方式
78
+
79
+ ### 异步 API
80
+
81
+ ```typescript
82
+ getClipboardData(params?: object): Promise<GetClipboardDataResult>
83
+ ```
84
+
85
+ ## 入参
86
+
87
+ 无。
88
+
89
+ ## 调用示例
90
+
91
+ ```typescript
92
+ import { getClipboardData } from '@doubao-dev/framework/api';
93
+
94
+ const { data } = await getClipboardData();
95
+
96
+ console.log(data);
97
+ ```
98
+
99
+ ## 成功返回
100
+
101
+ <table>
102
+ <thead>
103
+ <tr><th>名称</th><th>类型</th><th>必返</th><th>说明</th></tr>
104
+ </thead>
105
+ <tbody>
106
+ <tr><td><code>data</code></td><td><code>string</code></td><td>是</td><td>当前剪贴板内容。</td></tr>
107
+ </tbody>
108
+ </table>
109
+
110
+ ### 返回示例
111
+
112
+ ```json
113
+ {
114
+ "data": "hello doubao"
115
+ }
116
+ ```
117
+
118
+ ## 错误处理
119
+
120
+ 错误对象和通用错误码见 [通用错误处理](./common-errors.md#错误返回)。
121
+
122
+ ### 失败示例
123
+
124
+ ```json
125
+ {
126
+ "errNo": 103,
127
+ "errMsg": "feature not support"
128
+ }
129
+ ```
130
+
131
+ ### 错误码
132
+
133
+ <table>
134
+ <thead>
135
+ <tr><th>errNo</th><th>errMsg</th><th>平台</th><th>触发条件</th><th>处理建议</th></tr>
136
+ </thead>
137
+ <tbody>
138
+ <tr><td><code>103</code></td><td><code>feature not support</code></td><td>Android、iOS</td><td>当前豆包版本不支持读取剪贴板</td><td>升级至支持剪贴板能力的豆包版本后重试。</td></tr>
139
+ </tbody>
140
+ </table>
141
+
142
+ #### 通用错误码
143
+
144
+ <table>
145
+ <thead>
146
+ <tr><th>errNo</th><th>errMsg</th><th>说明</th><th>平台</th></tr>
147
+ </thead>
148
+ <tbody>
149
+ <tr><td><code>102</code></td><td><code>internal error</code></td><td>内部错误</td><td>Android、iOS</td></tr>
150
+ </tbody>
151
+ </table>
152
+
153
+ <a id="setclipboarddata"></a>
154
+ ### setClipboardData()
155
+
156
+ # setClipboardData
157
+
158
+ 设置系统剪贴板内容。
159
+
160
+ ## 扫码预览
161
+ ![扫码预览 setClipboardData](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=doubao%3A%2F%2Fdoubao_apps%3Fapp_id%3Ddb_1McM5Ni%26path%3D%252Fpages%252Fapi%252Fdevice%252Fclipboard%252Findex)
162
+
163
+ ## 支持版本
164
+
165
+ 前端库版本不低于 `0.0.20`。
166
+
167
+ ## 支持平台
168
+
169
+ <table>
170
+ <thead>
171
+ <tr><th>平台</th><th>支持情况</th></tr>
172
+ </thead>
173
+ <tbody>
174
+ <tr><td>Android</td><td>支持</td></tr>
175
+ <tr><td>iOS</td><td>支持</td></tr>
176
+ <tr><td>PC</td><td>不支持</td></tr>
177
+ <tr><td>HarmonyOS</td><td>不支持</td></tr>
178
+ </tbody>
179
+ </table>
180
+
181
+ ## 支持场景
182
+
183
+ <table>
184
+ <thead>
185
+ <tr><th>场景</th><th>支持情况</th></tr>
186
+ </thead>
187
+ <tbody>
188
+ <tr><td>页面</td><td>支持</td></tr>
189
+ <tr><td>卡片</td><td>支持</td></tr>
190
+ </tbody>
191
+ </table>
192
+
193
+ ## 接入准备
194
+
195
+ ### 权限要求
196
+
197
+ <table>
198
+ <thead>
199
+ <tr><th>类型</th><th>标识</th><th>是否必须</th><th>平台</th><th>说明</th></tr>
200
+ </thead>
201
+ <tbody>
202
+ <tr><td>豆包能力</td><td><code>剪贴板能力</code></td><td>按条件</td><td>Android、iOS</td><td>需要豆包提供剪贴板能力,未开通时调用失败</td></tr>
203
+ </tbody>
204
+ </table>
205
+
206
+ ### 授权行为
207
+
208
+ - 该接口不主动弹出授权,仅在豆包已提供剪贴板能力时写入;能力缺失时调用直接失败,需在支持该能力的豆包版本中调用
209
+
210
+ ## 使用说明
211
+
212
+ - 写入剪贴板前建议向用户说明,避免在无感知情况下修改系统剪贴板
213
+
214
+ ## 调用方式
215
+
216
+ ### 异步 API
217
+
218
+ ```typescript
219
+ setClipboardData(params: SetClipboardDataParams): Promise<object>
220
+ ```
221
+
222
+ ## 入参
223
+
224
+ <table>
225
+ <thead>
226
+ <tr><th>名称</th><th>类型</th><th>必填</th><th>默认值</th><th>约束</th><th>说明</th></tr>
227
+ </thead>
228
+ <tbody>
229
+ <tr><td><code>data</code></td><td><code>string</code></td><td>是</td><td>-</td><td>-</td><td>需要设置的剪贴板内容</td></tr>
230
+ </tbody>
231
+ </table>
232
+
233
+ ## 调用示例
234
+
235
+ ```typescript
236
+ import { setClipboardData } from '@doubao-dev/framework/api';
237
+
238
+ await setClipboardData({ data: '复制内容' });
239
+ ```
240
+
241
+ ## 成功返回
242
+
243
+ 无返回字段。
244
+
245
+ ### 返回示例
246
+
247
+ ```json
248
+ {}
249
+ ```
250
+
251
+ ## 错误处理
252
+
253
+ 错误对象和通用错误码见 [通用错误处理](./common-errors.md#错误返回)。
254
+
255
+ ### 失败示例
256
+
257
+ ```json
258
+ {
259
+ "errNo": 103,
260
+ "errMsg": "feature not support"
261
+ }
262
+ ```
263
+
264
+ ### 错误码
265
+
266
+ <table>
267
+ <thead>
268
+ <tr><th>errNo</th><th>errMsg</th><th>平台</th><th>触发条件</th><th>处理建议</th></tr>
269
+ </thead>
270
+ <tbody>
271
+ <tr><td><code>103</code></td><td><code>feature not support</code></td><td>Android、iOS</td><td>当前豆包版本不支持写入剪贴板</td><td>升级至支持剪贴板能力的豆包版本后重试。</td></tr>
272
+ <tr><td><code>106</code></td><td><code>system permission denied</code></td><td>Android</td><td>写入后系统未授予剪贴板访问权限,写入未生效</td><td>引导用户在系统设置中开启剪贴板相关权限后重试。</td></tr>
273
+ </tbody>
274
+ </table>
275
+
276
+ #### 通用错误码
277
+
278
+ <table>
279
+ <thead>
280
+ <tr><th>errNo</th><th>errMsg</th><th>说明</th><th>平台</th></tr>
281
+ </thead>
282
+ <tbody>
283
+ <tr><td><code>102</code></td><td><code>internal error</code></td><td>内部错误</td><td>Android、iOS</td></tr>
284
+ </tbody>
285
+ </table>
286
+
287
+ ## 相关类型
288
+
289
+ <a id="getclipboarddataresult"></a>
290
+ ### GetClipboardDataResult
291
+
292
+ 剪贴板读取结果。
293
+
294
+ #### Properties
295
+
296
+ • **data**: `string` - 当前剪贴板内容
297
+
298
+ <a id="setclipboarddataparams"></a>
299
+ ### SetClipboardDataParams
300
+
301
+ #### Properties
302
+
303
+ • **data**: `string` - 需要设置的剪贴板内容
@@ -0,0 +1,126 @@
1
+ # 豆包应用插件的端能力 API: 加密
2
+
3
+ 安全随机数能力。
4
+
5
+ [返回目录](./groups.md) | [返回速查](./quick-reference.md)
6
+
7
+ ## 速查
8
+
9
+ | API | 说明 |
10
+ | --- | --- |
11
+ | [getRandomValues](#getrandomvalues) | 获取安全随机数。 |
12
+
13
+ ## API 详情
14
+
15
+ <a id="getrandomvalues"></a>
16
+ ### getRandomValues()
17
+
18
+ # getRandomValues
19
+
20
+ 获取安全随机数。
21
+
22
+ ## 扫码预览
23
+ ![扫码预览 getRandomValues](https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=doubao%3A%2F%2Fdoubao_apps%3Fapp_id%3Ddb_1McM5Ni%26path%3D%252Fpages%252Fapi%252Fdevice%252Fget-random-values%252Findex)
24
+
25
+ ## 支持版本
26
+
27
+ 前端库版本不低于 `0.0.25`。
28
+
29
+ ## 支持平台
30
+
31
+ <table>
32
+ <thead>
33
+ <tr><th>平台</th><th>支持情况</th></tr>
34
+ </thead>
35
+ <tbody>
36
+ <tr><td>Android</td><td>支持</td></tr>
37
+ <tr><td>iOS</td><td>支持</td></tr>
38
+ <tr><td>PC</td><td>支持</td></tr>
39
+ <tr><td>HarmonyOS</td><td>支持</td></tr>
40
+ </tbody>
41
+ </table>
42
+
43
+ ## 支持场景
44
+
45
+ <table>
46
+ <thead>
47
+ <tr><th>场景</th><th>支持情况</th></tr>
48
+ </thead>
49
+ <tbody>
50
+ <tr><td>页面</td><td>支持</td></tr>
51
+ <tr><td>卡片</td><td>不支持</td></tr>
52
+ </tbody>
53
+ </table>
54
+
55
+ ## 使用说明
56
+
57
+ - 生成的字节数越大耗时越长,建议按实际需要申请长度
58
+
59
+ ## 调用方式
60
+
61
+ ### 异步 API
62
+
63
+ ```typescript
64
+ getRandomValues(params: GetRandomValuesParams): Promise<GetRandomValuesResult>
65
+ ```
66
+
67
+ ## 入参
68
+
69
+ <table>
70
+ <thead>
71
+ <tr><th>名称</th><th>类型</th><th>必填</th><th>默认值</th><th>约束</th><th>说明</th></tr>
72
+ </thead>
73
+ <tbody>
74
+ <tr><td><code>length</code></td><td><code>number</code></td><td>是</td><td>-</td><td>取值范围 0 到 1048576 的整数,超出范围会抛出 RangeError</td><td>需要生成的字节数。</td></tr>
75
+ </tbody>
76
+ </table>
77
+
78
+ ## 调用示例
79
+
80
+ ```typescript
81
+ import { getRandomValues } from '@doubao-dev/framework/api';
82
+
83
+ const { randomValues } = await getRandomValues({ length: 16 });
84
+ const bytes = new Uint8Array(randomValues);
85
+
86
+ console.log(bytes);
87
+ ```
88
+
89
+ ## 成功返回
90
+
91
+ <table>
92
+ <thead>
93
+ <tr><th>名称</th><th>类型</th><th>必返</th><th>说明</th></tr>
94
+ </thead>
95
+ <tbody>
96
+ <tr><td><code>randomValues</code></td><td><code>ArrayBuffer</code></td><td>是</td><td>生成的随机字节。</td></tr>
97
+ </tbody>
98
+ </table>
99
+
100
+ ### 返回示例
101
+
102
+ ```json
103
+ {
104
+ "randomValues": {}
105
+ }
106
+ ```
107
+
108
+ ## 相关类型
109
+
110
+ <a id="getrandomvaluesparams"></a>
111
+ ### GetRandomValuesParams
112
+
113
+ 获取安全随机数的请求参数。
114
+
115
+ #### Properties
116
+
117
+ • **length**: `number` - 需要生成的字节数
118
+
119
+ <a id="getrandomvaluesresult"></a>
120
+ ### GetRandomValuesResult
121
+
122
+ 获取安全随机数的返回结果。
123
+
124
+ #### Properties
125
+
126
+ • **randomValues**: `ArrayBuffer` - 生成的随机字节