@doubao-apps/ai 0.0.34 → 0.0.35

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 (118) hide show
  1. package/README.md +2 -0
  2. package/dist/cli.js +1 -1
  3. package/dist/index.d.ts +4 -1
  4. package/dist/index.js +33 -1
  5. package/dist/{manifest.json → public/manifest.json} +7 -2
  6. package/dist/{skills → public/skills}/doubao-apps-dev/SKILL.md +11 -10
  7. package/dist/{skills → public/skills}/doubao-apps-dev/references/examples/common-patterns.md +2 -2
  8. package/dist/{skills/doubao-apps-dev/references/examples/component-basics.md → public/skills/doubao-apps-dev/references/examples/page-widget-basics.md} +1 -1
  9. package/dist/{skills/doubao-apps-dev/references/examples/component-recipes.md → public/skills/doubao-apps-dev/references/examples/page-widget-recipes.md} +2 -3
  10. package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/component-development.md +2 -2
  11. package/dist/public/skills/doubao-apps-dev/references/reference/open-api/01-/345/237/272/347/241/200.md +270 -0
  12. package/dist/public/skills/doubao-apps-dev/references/reference/open-api/02-/347/263/273/347/273/237.md +438 -0
  13. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/03-/345/256/232/344/275/215.md +32 -55
  14. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/04-/345/255/230/345/202/250.md +18 -0
  15. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/05-/350/267/257/347/224/261.md +8 -0
  16. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/06-/344/272/244/344/272/222.md +49 -3
  17. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/07-/350/276/223/345/205/245.md +47 -0
  18. package/dist/public/skills/doubao-apps-dev/references/reference/open-api/08-/347/275/221/347/273/234.md +238 -0
  19. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/09-/345/252/222/344/275/223.md +81 -1
  20. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/10-/344/270/232/345/212/241/350/203/275/345/212/233.md +143 -13
  21. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/11-/347/231/273/345/275/225.md +11 -0
  22. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/14-/350/223/235/347/211/231.md +212 -1
  23. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/15-wi-fi.md +104 -27
  24. package/dist/public/skills/doubao-apps-dev/references/reference/open-api/16-/345/212/240/351/200/237/345/272/246/350/256/241.md +122 -0
  25. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/17-ibeacon.md +38 -0
  26. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/18-/347/275/227/347/233/230.md +45 -22
  27. package/dist/public/skills/doubao-apps-dev/references/reference/open-api/19-/350/256/276/345/244/207/346/226/271/345/220/221.md +120 -0
  28. package/dist/public/skills/doubao-apps-dev/references/reference/open-api/20-/351/231/200/350/236/272/344/273/252.md +122 -0
  29. package/dist/public/skills/doubao-apps-dev/references/reference/open-api/21-/350/256/276/345/244/207-/347/275/221/347/273/234.md +153 -0
  30. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/23-/346/227/240/351/232/234/347/242/215.md +11 -0
  31. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/24-/345/237/272/347/241/200/344/277/241/346/201/257.md +19 -0
  32. package/dist/public/skills/doubao-apps-dev/references/reference/open-api/25-/347/224/265/346/261/240.md +92 -0
  33. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/26-/346/227/245/345/216/206.md +11 -0
  34. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/27-/345/211/252/350/264/264/346/235/277.md +11 -0
  35. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/28-/350/201/224/347/263/273/344/272/272.md +13 -0
  36. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/29-/345/212/240/345/257/206.md +11 -0
  37. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/31-/346/211/253/347/240/201.md +51 -0
  38. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/32-/345/261/217/345/271/225.md +60 -20
  39. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/33-/351/234/207/345/212/250.md +11 -0
  40. package/dist/public/skills/doubao-apps-dev/references/reference/open-api/34-/346/226/207/344/273/266/347/263/273/347/273/237.md +334 -0
  41. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/README.md +4 -4
  42. package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api.md +14 -12
  43. package/dist/public/skills/doubao-components-api/SKILL.md +50 -0
  44. package/dist/public/skills/doubao-components-api/references/reference/form.md +146 -0
  45. package/dist/public/skills/doubao-components-api/references/reference/interactive.md +120 -0
  46. package/dist/public/skills/doubao-components-api/references/reference/layout-overlay.md +131 -0
  47. package/dist/public/skills/doubao-components-api/references/reference/layout-scroll.md +149 -0
  48. package/dist/public/skills/doubao-components-api/references/reference/map-canvas.md +107 -0
  49. package/dist/public/skills/doubao-components-api/references/reference/media.md +195 -0
  50. package/dist/{skills → public/skills}/douyin-to-doubao/SKILL.md +1 -1
  51. package/dist/{skills → public/skills}/h5-to-doubao/SKILL.md +2 -2
  52. package/dist/{skills → public/skills}/quality-gate/scripts/collect-doubao-page-data.js +3 -3
  53. package/dist/{skills → public/skills}/uniapp-to-doubao/SKILL.md +1 -1
  54. package/dist/{skills → public/skills}/weixin-to-doubao/SKILL.md +1 -1
  55. package/package.json +5 -5
  56. package/dist/733.js +0 -33
  57. package/dist/skills/doubao-apps-dev/references/reference/components-quick-ref.md +0 -114
  58. package/dist/skills/doubao-apps-dev/references/reference/open-api/01-/345/237/272/347/241/200.md +0 -136
  59. package/dist/skills/doubao-apps-dev/references/reference/open-api/02-/347/263/273/347/273/237.md +0 -257
  60. package/dist/skills/doubao-apps-dev/references/reference/open-api/08-/347/275/221/347/273/234.md +0 -124
  61. package/dist/skills/doubao-apps-dev/references/reference/open-api/16-/345/212/240/351/200/237/345/272/246/350/256/241.md +0 -87
  62. package/dist/skills/doubao-apps-dev/references/reference/open-api/19-/350/256/276/345/244/207/346/226/271/345/220/221.md +0 -86
  63. package/dist/skills/doubao-apps-dev/references/reference/open-api/20-/351/231/200/350/236/272/344/273/252.md +0 -87
  64. package/dist/skills/doubao-apps-dev/references/reference/open-api/21-/350/256/276/345/244/207-/347/275/221/347/273/234.md +0 -102
  65. package/dist/skills/doubao-apps-dev/references/reference/open-api/25-/347/224/265/346/261/240.md +0 -63
  66. package/dist/skills/doubao-apps-dev/references/reference/open-api/34-/346/226/207/344/273/266/347/263/273/347/273/237.md +0 -73
  67. /package/dist/{skills → public/skills}/doubao-apps-dev/references/examples/open-api-recipes.md +0 -0
  68. /package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/best-practices.md +0 -0
  69. /package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/expired-widget.md +0 -0
  70. /package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/mcp-ui.md +0 -0
  71. /package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/performance-optimization.md +0 -0
  72. /package/dist/{skills → public/skills}/doubao-apps-dev/references/guides/troubleshooting.md +0 -0
  73. /package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/framework-api-quick-ref.md +0 -0
  74. /package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/12-/346/224/257/344/273/230.md" +0 -0
  75. /package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/13-/346/225/260/346/215/256/345/210/206/346/236/220.md" +0 -0
  76. /package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/22-/347/237/255/344/277/241.md" +0 -0
  77. /package/dist/{skills → public/skills}/doubao-apps-dev/references/reference/open-api/30-/347/224/265/350/257/235.md" +0 -0
  78. /package/dist/{skills → public/skills}/doubao-apps-dev/references/rules/dos-and-donts.md +0 -0
  79. /package/dist/{skills → public/skills}/douyin-to-doubao/assets/migration-checklist-template.md +0 -0
  80. /package/dist/{skills → public/skills}/douyin-to-doubao/references/mapping/component-mapping.md +0 -0
  81. /package/dist/{skills → public/skills}/douyin-to-doubao/references/mapping/core-api-mapping.md +0 -0
  82. /package/dist/{skills → public/skills}/douyin-to-doubao/references/mapping/event-mapping.md +0 -0
  83. /package/dist/{skills → public/skills}/douyin-to-doubao/references/mapping/lifecycle-mapping.md +0 -0
  84. /package/dist/{skills → public/skills}/douyin-to-doubao/references/mapping/style-mapping.md +0 -0
  85. /package/dist/{skills → public/skills}/douyin-to-doubao/references/source-framework/api-reference.md +0 -0
  86. /package/dist/{skills → public/skills}/douyin-to-doubao/references/source-framework/components.md +0 -0
  87. /package/dist/{skills → public/skills}/h5-to-doubao/references/common/troubleshooting.md +0 -0
  88. /package/dist/{skills → public/skills}/h5-to-doubao/references/source-framework/react-to-doubao.md +0 -0
  89. /package/dist/{skills → public/skills}/h5-to-doubao/references/source-framework/vue-to-doubao.md +0 -0
  90. /package/dist/{skills → public/skills}/quality-gate/SKILL.md +0 -0
  91. /package/dist/{skills → public/skills}/quality-gate/gates/bronze.md +0 -0
  92. /package/dist/{skills → public/skills}/quality-gate/gates/gold-phase1.md +0 -0
  93. /package/dist/{skills → public/skills}/quality-gate/gates/gold-phase2.md +0 -0
  94. /package/dist/{skills → public/skills}/quality-gate/gates/gold-phase3.md +0 -0
  95. /package/dist/{skills → public/skills}/quality-gate/gates/silver.md +0 -0
  96. /package/dist/{skills → public/skills}/quality-gate/runtime-fix.md +0 -0
  97. /package/dist/{skills → public/skills}/quality-gate/screenshots/doubao-faq.md +0 -0
  98. /package/dist/{skills → public/skills}/quality-gate/screenshots/doubao.md +0 -0
  99. /package/dist/{skills → public/skills}/quality-gate/screenshots/h5-react.md +0 -0
  100. /package/dist/{skills → public/skills}/quality-gate/screenshots/weixin.md +0 -0
  101. /package/dist/{skills → public/skills}/quality-gate/scripts/phase2-normalized-compare.py +0 -0
  102. /package/dist/{skills → public/skills}/quality-gate/scripts/run-doubao-screenshots.sh +0 -0
  103. /package/dist/{skills → public/skills}/uniapp-to-doubao/assets/migration-checklist-template.md +0 -0
  104. /package/dist/{skills → public/skills}/uniapp-to-doubao/references/mapping/component-mapping.md +0 -0
  105. /package/dist/{skills → public/skills}/uniapp-to-doubao/references/mapping/core-api-mapping.md +0 -0
  106. /package/dist/{skills → public/skills}/uniapp-to-doubao/references/mapping/event-mapping.md +0 -0
  107. /package/dist/{skills → public/skills}/uniapp-to-doubao/references/mapping/lifecycle-mapping.md +0 -0
  108. /package/dist/{skills → public/skills}/uniapp-to-doubao/references/mapping/style-mapping.md +0 -0
  109. /package/dist/{skills → public/skills}/uniapp-to-doubao/references/source-framework/api-reference.md +0 -0
  110. /package/dist/{skills → public/skills}/uniapp-to-doubao/references/source-framework/components.md +0 -0
  111. /package/dist/{skills → public/skills}/weixin-to-doubao/assets/migration-checklist-template.md +0 -0
  112. /package/dist/{skills → public/skills}/weixin-to-doubao/references/mapping/component-mapping.md +0 -0
  113. /package/dist/{skills → public/skills}/weixin-to-doubao/references/mapping/core-api-mapping.md +0 -0
  114. /package/dist/{skills → public/skills}/weixin-to-doubao/references/mapping/event-mapping.md +0 -0
  115. /package/dist/{skills → public/skills}/weixin-to-doubao/references/mapping/lifecycle-mapping.md +0 -0
  116. /package/dist/{skills → public/skills}/weixin-to-doubao/references/mapping/style-mapping.md +0 -0
  117. /package/dist/{skills → public/skills}/weixin-to-doubao/references/source-framework/api-reference.md +0 -0
  118. /package/dist/{skills → public/skills}/weixin-to-doubao/references/source-framework/components.md +0 -0
@@ -0,0 +1,438 @@
1
+ # Open API: 系统
2
+
3
+ 宿主基础信息、窗口信息和系统设置。
4
+
5
+ [返回目录](./README.md) | [返回速查](../open-api.md)
6
+
7
+ ## 速查
8
+
9
+ | API | 说明 |
10
+ | --- | --- |
11
+ | [getWindowInfoSync](#getwindowinfosync) | 获取窗口信息。<br><br>同步 API。 |
12
+ | [getSystemSetting](#getsystemsetting) | 获取设备设置。 |
13
+ | [getAppBaseInfoSync](#getappbaseinfosync) | 获取应用基础信息。<br><br>同步 API。 |
14
+ | [getWindowInfo](#getwindowinfo) | 获取窗口信息。 |
15
+ | [getAppBaseInfo](#getappbaseinfo) | 获取应用基础信息。 |
16
+ | [onThemeChange](#onthemechange) | 监听应用主题变化。 |
17
+ | [getSystemInfo](#getsysteminfo) | 获取系统信息。 |
18
+ | [getSystemInfoSync](#getsysteminfosync) | 同步获取系统信息。<br><br>同步 API。 |
19
+
20
+ ## API 详情
21
+
22
+ <a id="getwindowinfosync"></a>
23
+ ### getWindowInfoSync()
24
+
25
+ 获取窗口信息。
26
+
27
+ ## 代码示例
28
+
29
+ ```typescript
30
+ import { getWindowInfoSync } from '@doubao-apps/framework/api';
31
+
32
+ const result = getWindowInfoSync();
33
+
34
+ console.log(result.windowWidth, result.windowHeight);
35
+ console.log(result.safeArea?.top, result.screenTop);
36
+ ```
37
+
38
+ ## 入参
39
+
40
+ 无入参。
41
+
42
+ ## 返回值
43
+
44
+ 返回窗口尺寸、状态栏高度和安全区域等信息,字段见 GetWindowInfoResult。
45
+
46
+ |字段名|类型|说明|
47
+ |---|---|---|
48
+ |pixelRatio|`number`|设备像素比|
49
+ |safeArea|`WindowSafeArea`|安全区域|
50
+ |safeArea.bottom|`number`|安全区域右下角纵坐标|
51
+ |safeArea.height|`number`|安全区域高度|
52
+ |safeArea.left|`number`|安全区域左上角横坐标|
53
+ |safeArea.right|`number`|安全区域右下角横坐标|
54
+ |safeArea.top|`number`|安全区域左上角纵坐标|
55
+ |safeArea.width|`number`|安全区域宽度|
56
+ |screenHeight|`number`|屏幕高度|
57
+ |screenTop|`number`|窗口上边缘的 y 值|
58
+ |screenWidth|`number`|屏幕宽度|
59
+ |statusBarHeight|`number`|状态栏高度|
60
+ |windowHeight|`number`|可使用窗口高度|
61
+ |windowWidth|`number`|可使用窗口宽度|
62
+
63
+ <a id="getsystemsetting"></a>
64
+ ### getSystemSetting()
65
+
66
+ 获取设备设置。
67
+
68
+ ## 代码示例
69
+
70
+ ```typescript
71
+ import { getSystemSetting } from '@doubao-apps/framework/api';
72
+
73
+ const result = getSystemSetting();
74
+
75
+ console.log(result.bluetoothEnabled, result.locationEnabled);
76
+ console.log(result.wifiEnabled, result.deviceOrientation);
77
+ ```
78
+
79
+ ## 入参
80
+
81
+ 无入参。
82
+
83
+ ## 返回值
84
+
85
+ 返回蓝牙、定位、Wi-Fi 系统开关和设备方向等字段,见 GetSystemSettingResult。
86
+
87
+ |字段名|类型|说明|
88
+ |---|---|---|
89
+ |bluetoothEnabled|`boolean`|蓝牙的系统开关|
90
+ |deviceOrientation|`DeviceOrientation`|设备方向|
91
+ |locationEnabled|`boolean`|地理位置的系统开关|
92
+ |wifiEnabled|`boolean`|Wi-Fi 的系统开关|
93
+
94
+ **类型说明**
95
+
96
+ - `DeviceOrientation`: `"portrait" | "landscape"`
97
+
98
+ <a id="getappbaseinfosync"></a>
99
+ ### getAppBaseInfoSync()
100
+
101
+ 获取应用基础信息。
102
+
103
+ ## 代码示例
104
+
105
+ ```typescript
106
+ import { getAppBaseInfoSync } from '@doubao-apps/framework/api';
107
+
108
+ const result = getAppBaseInfoSync();
109
+
110
+ console.log(result.language, result.SDKVersion, result.theme);
111
+ console.log(result.host?.appId, result.enableDebug);
112
+ ```
113
+
114
+ ## 入参
115
+
116
+ 无入参。
117
+
118
+ ## 返回值
119
+
120
+ 返回 SDK 版本、调试开关、宿主信息、语言和主题等字段,见 GetAppBaseInfoResult。
121
+
122
+ |字段名|类型|说明|
123
+ |---|---|---|
124
+ |enableDebug|`boolean`|是否已打开调试|
125
+ |host|`AppBaseInfoHost`|当前豆包 App运行的宿主环境|
126
+ |host.appId|`string`|宿主 app 对应的 appId|
127
+ |language|`string`|当前语言|
128
+ |SDKVersion|`string`|客户端基础库版本|
129
+ |theme|`"light" | "dark"`|当前主题|
130
+ |version|`string`|宿主版本号|
131
+
132
+ <a id="getwindowinfo"></a>
133
+ ### getWindowInfo()
134
+
135
+ 获取窗口信息。
136
+
137
+ ## 代码示例
138
+
139
+ ```typescript
140
+ import { getWindowInfo } from '@doubao-apps/framework/api';
141
+
142
+ const result = await getWindowInfo();
143
+
144
+ console.log(result.windowWidth, result.windowHeight);
145
+ console.log(result.safeArea?.top, result.screenTop);
146
+ ```
147
+
148
+ ## 入参
149
+
150
+ 无入参。
151
+
152
+ ## 返回值
153
+
154
+ 返回窗口尺寸、状态栏高度和安全区域等信息,字段见 GetWindowInfoResult。
155
+
156
+ |字段名|类型|说明|
157
+ |---|---|---|
158
+ |pixelRatio|`number`|设备像素比|
159
+ |safeArea|`WindowSafeArea`|安全区域|
160
+ |safeArea.bottom|`number`|安全区域右下角纵坐标|
161
+ |safeArea.height|`number`|安全区域高度|
162
+ |safeArea.left|`number`|安全区域左上角横坐标|
163
+ |safeArea.right|`number`|安全区域右下角横坐标|
164
+ |safeArea.top|`number`|安全区域左上角纵坐标|
165
+ |safeArea.width|`number`|安全区域宽度|
166
+ |screenHeight|`number`|屏幕高度|
167
+ |screenTop|`number`|窗口上边缘的 y 值|
168
+ |screenWidth|`number`|屏幕宽度|
169
+ |statusBarHeight|`number`|状态栏高度|
170
+ |windowHeight|`number`|可使用窗口高度|
171
+ |windowWidth|`number`|可使用窗口宽度|
172
+
173
+ <a id="getappbaseinfo"></a>
174
+ ### getAppBaseInfo()
175
+
176
+ 获取应用基础信息。
177
+
178
+ ## 代码示例
179
+
180
+ ```typescript
181
+ import { getAppBaseInfo } from '@doubao-apps/framework/api';
182
+
183
+ const result = await getAppBaseInfo();
184
+
185
+ console.log(result.language, result.SDKVersion, result.theme);
186
+ console.log(result.host?.appId, result.enableDebug);
187
+ ```
188
+
189
+ ## 入参
190
+
191
+ 无入参。
192
+
193
+ ## 返回值
194
+
195
+ 返回 SDK 版本、调试开关、宿主信息、语言和主题等字段,见 GetAppBaseInfoResult。
196
+
197
+ |字段名|类型|说明|
198
+ |---|---|---|
199
+ |enableDebug|`boolean`|是否已打开调试|
200
+ |host|`AppBaseInfoHost`|当前豆包 App运行的宿主环境|
201
+ |host.appId|`string`|宿主 app 对应的 appId|
202
+ |language|`string`|当前语言|
203
+ |SDKVersion|`string`|客户端基础库版本|
204
+ |theme|`"light" | "dark"`|当前主题|
205
+ |version|`string`|宿主版本号|
206
+
207
+ <a id="onthemechange"></a>
208
+ ### onThemeChange()
209
+
210
+ 监听应用主题变化。
211
+
212
+ 当用户在系统设置或宿主内切换浅色、深色主题时触发。回调参数中的 `theme` 表示切换后的主题,可与
213
+ getAppBaseInfo 返回的 `theme` 字段配合使用。
214
+
215
+ ## 代码示例
216
+
217
+ ```typescript
218
+ import { onThemeChange } from '@doubao-apps/framework/api';
219
+
220
+ const offThemeChange = onThemeChange(({ theme }) => {
221
+ console.log('当前主题:', theme);
222
+ });
223
+
224
+ offThemeChange();
225
+ ```
226
+
227
+ ## 入参
228
+
229
+ 无入参。
230
+
231
+ ## 返回值
232
+
233
+ 返回取消当前监听函数的函数。
234
+
235
+ <a id="getsysteminfo"></a>
236
+ ### getSystemInfo()
237
+
238
+ 获取系统信息。
239
+
240
+ ## 代码示例
241
+
242
+ ```typescript
243
+ import { getSystemInfo } from '@doubao-apps/framework/api';
244
+
245
+ const result = await getSystemInfo();
246
+
247
+ console.log(result.brand, result.model, result.system);
248
+ console.log(result.screenWidth, result.screenHeight);
249
+ ```
250
+
251
+ ## 入参
252
+
253
+ 无入参。
254
+
255
+ ## 返回值
256
+
257
+ 返回设备品牌、型号、屏幕尺寸、宿主信息和安全区域等字段,见 GetSystemInfoResult。
258
+
259
+ |字段名|类型|说明|
260
+ |---|---|---|
261
+ |abi|`string`|宿主 App 二进制接口类型(如 arm64-v8a),仅 Android 返回|
262
+ |benchmarkLevel|`number`|设备性能等级,-1 表示未知|
263
+ |brand|`string`|设备品牌|
264
+ |deviceOrientation|`"portrait" | "landscape"`|设备方向|
265
+ |enableDebug|`boolean`|是否已打开调试|
266
+ |language|`string`|系统语言,格式为 language_region,如 zh_CN、en_US|
267
+ |model|`string`|设备型号|
268
+ |pixelRatio|`number`|设备像素比,物理像素 = 逻辑像素 × pixelRatio|
269
+ |platform|`string`|客户端平台,取值为 "ios" 或 "android"|
270
+ |safeArea|`SystemInfoSafeArea`|在竖屏正方向下的安全区域,单位为逻辑像素|
271
+ |safeArea.bottom|`number`|安全区域右下角纵坐标|
272
+ |safeArea.height|`number`|安全区域高度|
273
+ |safeArea.left|`number`|安全区域左上角横坐标|
274
+ |safeArea.right|`number`|安全区域右下角横坐标|
275
+ |safeArea.top|`number`|安全区域左上角纵坐标|
276
+ |safeArea.width|`number`|安全区域宽度|
277
+ |screenHeight|`number`|屏幕高度,单位为逻辑像素|
278
+ |screenWidth|`number`|屏幕宽度,单位为逻辑像素|
279
+ |SDKVersion|`string`|客户端基础库版本|
280
+ |statusBarHeight|`number`|状态栏高度,单位为逻辑像素|
281
+ |system|`string`|操作系统及版本,如 "Android 14"、"iOS 17.5"|
282
+ |theme|`"light" | "dark"`|系统当前主题|
283
+ |version|`string`|宿主版本号|
284
+ |windowHeight|`number`|可使用窗口高度,单位为逻辑像素|
285
+ |windowWidth|`number`|可使用窗口宽度,单位为逻辑像素|
286
+
287
+ <a id="getsysteminfosync"></a>
288
+ ### getSystemInfoSync()
289
+
290
+ 同步获取系统信息。
291
+
292
+ ## 代码示例
293
+
294
+ ```typescript
295
+ import { getSystemInfoSync } from '@doubao-apps/framework/api';
296
+
297
+ const result = getSystemInfoSync();
298
+
299
+ console.log(result.brand, result.model, result.system);
300
+ console.log(result.screenWidth, result.screenHeight);
301
+ ```
302
+
303
+ ## 入参
304
+
305
+ 无入参。
306
+
307
+ ## 返回值
308
+
309
+ 返回设备品牌、型号、屏幕尺寸、宿主信息和安全区域等字段,见 GetSystemInfoResult。
310
+
311
+ |字段名|类型|说明|
312
+ |---|---|---|
313
+ |abi|`string`|宿主 App 二进制接口类型(如 arm64-v8a),仅 Android 返回|
314
+ |benchmarkLevel|`number`|设备性能等级,-1 表示未知|
315
+ |brand|`string`|设备品牌|
316
+ |deviceOrientation|`"portrait" | "landscape"`|设备方向|
317
+ |enableDebug|`boolean`|是否已打开调试|
318
+ |language|`string`|系统语言,格式为 language_region,如 zh_CN、en_US|
319
+ |model|`string`|设备型号|
320
+ |pixelRatio|`number`|设备像素比,物理像素 = 逻辑像素 × pixelRatio|
321
+ |platform|`string`|客户端平台,取值为 "ios" 或 "android"|
322
+ |safeArea|`SystemInfoSafeArea`|在竖屏正方向下的安全区域,单位为逻辑像素|
323
+ |safeArea.bottom|`number`|安全区域右下角纵坐标|
324
+ |safeArea.height|`number`|安全区域高度|
325
+ |safeArea.left|`number`|安全区域左上角横坐标|
326
+ |safeArea.right|`number`|安全区域右下角横坐标|
327
+ |safeArea.top|`number`|安全区域左上角纵坐标|
328
+ |safeArea.width|`number`|安全区域宽度|
329
+ |screenHeight|`number`|屏幕高度,单位为逻辑像素|
330
+ |screenWidth|`number`|屏幕宽度,单位为逻辑像素|
331
+ |SDKVersion|`string`|客户端基础库版本|
332
+ |statusBarHeight|`number`|状态栏高度,单位为逻辑像素|
333
+ |system|`string`|操作系统及版本,如 "Android 14"、"iOS 17.5"|
334
+ |theme|`"light" | "dark"`|系统当前主题|
335
+ |version|`string`|宿主版本号|
336
+ |windowHeight|`number`|可使用窗口高度,单位为逻辑像素|
337
+ |windowWidth|`number`|可使用窗口宽度,单位为逻辑像素|
338
+
339
+ ## 相关类型
340
+
341
+ <a id="windowsafearea"></a>
342
+ ### WindowSafeArea
343
+
344
+ #### Properties
345
+
346
+ • **left**: `number` - 安全区域左上角横坐标
347
+ • **right**: `number` - 安全区域右下角横坐标
348
+ • **top**: `number` - 安全区域左上角纵坐标
349
+ • **bottom**: `number` - 安全区域右下角纵坐标
350
+ • **width**: `number` - 安全区域宽度
351
+ • **height**: `number` - 安全区域高度
352
+
353
+ <a id="getwindowinforesult"></a>
354
+ ### GetWindowInfoResult
355
+
356
+ #### Properties
357
+
358
+ • **pixelRatio**: `number` - 设备像素比
359
+ • **screenWidth**: `number` - 屏幕宽度
360
+ • **screenHeight**: `number` - 屏幕高度
361
+ • **windowWidth**: `number` - 可使用窗口宽度
362
+ • **windowHeight**: `number` - 可使用窗口高度
363
+ • **statusBarHeight**: `number` - 状态栏高度
364
+ • **safeArea?**: `WindowSafeArea` - 安全区域
365
+ • **screenTop**: `number` - 窗口上边缘的 y 值
366
+
367
+ <a id="deviceorientation"></a>
368
+ ### DeviceOrientation
369
+
370
+ #### Type
371
+
372
+ `'portrait' | 'landscape'`
373
+
374
+ <a id="getsystemsettingresult"></a>
375
+ ### GetSystemSettingResult
376
+
377
+ #### Properties
378
+
379
+ • **bluetoothEnabled**: `boolean` - 蓝牙的系统开关
380
+ • **locationEnabled**: `boolean` - 地理位置的系统开关
381
+ • **wifiEnabled**: `boolean` - Wi-Fi 的系统开关
382
+ • **deviceOrientation**: `DeviceOrientation` - 设备方向
383
+
384
+ <a id="appbaseinfohost"></a>
385
+ ### AppBaseInfoHost
386
+
387
+ #### Properties
388
+
389
+ • **appId**: `string` - 宿主 app 对应的 appId
390
+
391
+ <a id="getappbaseinforesult"></a>
392
+ ### GetAppBaseInfoResult
393
+
394
+ #### Properties
395
+
396
+ • **SDKVersion?**: `string` - 客户端基础库版本
397
+ • **enableDebug?**: `boolean` - 是否已打开调试
398
+ • **host?**: `AppBaseInfoHost` - 当前豆包 App运行的宿主环境
399
+ • **language**: `string` - 当前语言
400
+ • **version?**: `string` - 宿主版本号
401
+ • **theme?**: `'light' | 'dark'` - 当前主题
402
+
403
+ <a id="systeminfosafearea"></a>
404
+ ### SystemInfoSafeArea
405
+
406
+ #### Properties
407
+
408
+ • **left**: `number` - 安全区域左上角横坐标
409
+ • **right**: `number` - 安全区域右下角横坐标
410
+ • **top**: `number` - 安全区域左上角纵坐标
411
+ • **bottom**: `number` - 安全区域右下角纵坐标
412
+ • **width**: `number` - 安全区域宽度
413
+ • **height**: `number` - 安全区域高度
414
+
415
+ <a id="getsysteminforesult"></a>
416
+ ### GetSystemInfoResult
417
+
418
+ #### Properties
419
+
420
+ • **brand**: `string` - 设备品牌
421
+ • **model**: `string` - 设备型号
422
+ • **pixelRatio**: `number` - 设备像素比,物理像素 = 逻辑像素 × pixelRatio
423
+ • **screenWidth**: `number` - 屏幕宽度,单位为逻辑像素
424
+ • **screenHeight**: `number` - 屏幕高度,单位为逻辑像素
425
+ • **windowWidth**: `number` - 可使用窗口宽度,单位为逻辑像素
426
+ • **windowHeight**: `number` - 可使用窗口高度,单位为逻辑像素
427
+ • **statusBarHeight**: `number` - 状态栏高度,单位为逻辑像素
428
+ • **language**: `string` - 系统语言,格式为 language_region,如 zh_CN、en_US
429
+ • **version?**: `string` - 宿主版本号
430
+ • **system**: `string` - 操作系统及版本,如 "Android 14"、"iOS 17.5"
431
+ • **platform**: `string` - 客户端平台,取值为 "ios" 或 "android"
432
+ • **SDKVersion?**: `string` - 客户端基础库版本
433
+ • **theme?**: `'light' | 'dark'` - 系统当前主题
434
+ • **benchmarkLevel?**: `number` - 设备性能等级,-1 表示未知
435
+ • **safeArea?**: `SystemInfoSafeArea` - 在竖屏正方向下的安全区域,单位为逻辑像素
436
+ • **enableDebug?**: `boolean` - 是否已打开调试
437
+ • **deviceOrientation?**: `'portrait' | 'landscape'` - 设备方向
438
+ • **abi?**: `string` - 宿主 App 二进制接口类型(如 arm64-v8a),仅 Android 返回
@@ -8,8 +8,6 @@
8
8
 
9
9
  | API | 说明 |
10
10
  | --- | --- |
11
- | [LocationChangeListener](#locationchangelistener) | LocationChangeListener API。<br><br>返回 void,不是 Promise。 |
12
- | [LocationChangeErrorListener](#locationchangeerrorlistener) | LocationChangeErrorListener API。<br><br>返回 void,不是 Promise。 |
13
11
  | [getLocation](#getlocation) | 获取设备当前的地理位置信息。 |
14
12
  | [chooseLocation](#chooselocation) | 打开地图选择位置。 |
15
13
  | [openLocation](#openlocation) | 使用地图查看位置。 |
@@ -22,58 +20,6 @@
22
20
 
23
21
  ## API 详情
24
22
 
25
- <a id="locationchangelistener"></a>
26
- ### LocationChangeListener()
27
-
28
- LocationChangeListener API。
29
-
30
- ## 代码示例
31
-
32
- ```typescript
33
- // 暂无代码示例
34
- ```
35
-
36
- ## 入参
37
-
38
- |参数名|类型|必填|说明|
39
- |---|---|---|---|
40
- |accuracy|`number`|否|位置精确度,单位 m|
41
- |altitude|`number`|否|高度,单位 m|
42
- |city|`string`|否|城市信息|
43
- |district|`string`|否|区县信息|
44
- |horizontalAccuracy|`number`|否|水平精度,单位 m|
45
- |latitude|`number`|是|纬度|
46
- |longitude|`number`|是|经度|
47
- |province|`string`|否|省份信息|
48
- |speed|`number`|否|速度,单位 m/s|
49
- |verticalAccuracy|`number`|否|垂直精度,单位 m|
50
-
51
- ## 返回值
52
-
53
- 返回 `void`。
54
-
55
- <a id="locationchangeerrorlistener"></a>
56
- ### LocationChangeErrorListener()
57
-
58
- LocationChangeErrorListener API。
59
-
60
- ## 代码示例
61
-
62
- ```typescript
63
- // 暂无代码示例
64
- ```
65
-
66
- ## 入参
67
-
68
- |参数名|类型|必填|说明|
69
- |---|---|---|---|
70
- |errCode|`number`|否|错误码|
71
- |errMsg|`string`|是|错误信息|
72
-
73
- ## 返回值
74
-
75
- 返回 `void`。
76
-
77
23
  <a id="getlocation"></a>
78
24
  ### getLocation()
79
25
 
@@ -101,6 +47,10 @@ async function fetchLocation() {
101
47
  fetchLocation();
102
48
  ```
103
49
 
50
+ ## 注意事项
51
+
52
+ 可能涉及定位授权。
53
+
104
54
  ## 入参
105
55
 
106
56
  |参数名|类型|必填|说明|
@@ -206,11 +156,15 @@ import { startLocationUpdate } from '@doubao-apps/framework/api';
206
156
  await startLocationUpdate({ type: 'gcj02' });
207
157
  ```
208
158
 
159
+ ## 注意事项
160
+
161
+ 需配对调用 stopLocationUpdate。
162
+
209
163
  ## 入参
210
164
 
211
165
  |参数名|类型|必填|说明|
212
166
  |---|---|---|---|
213
- |type|`"wgs84" \| "gcj02"`|否|坐标系类型,支持 wgs84 或 gcj02|
167
+ |type|`"wgs84" | "gcj02"`|否|坐标系类型,支持 wgs84 或 gcj02|
214
168
 
215
169
  ## 返回值
216
170
 
@@ -324,3 +278,26 @@ offLocationChangeError();
324
278
  ## 返回值
325
279
 
326
280
  返回 `void`。
281
+
282
+ ## 相关类型
283
+
284
+ <a id="getlocationresponse"></a>
285
+ ### GetLocationResponse
286
+
287
+ #### Properties
288
+
289
+ • **latitude**: `number` - 纬度
290
+ • **longitude**: `number` - 经度
291
+ • **timestamp**: `string` - 时间戳
292
+ • **speed**: `number` - 行进速度,单位:米/秒
293
+ • **accuracy**: `number` - 定位精度,单位:米
294
+
295
+ <a id="chooselocationresponse"></a>
296
+ ### ChooseLocationResponse
297
+
298
+ #### Properties
299
+
300
+ • **latitude**: `number` - 纬度,GCJ-02 坐标系
301
+ • **longitude**: `number` - 经度,GCJ-02 坐标系
302
+ • **name?**: `string` - 位置名称
303
+ • **address?**: `string` - 地址详情
@@ -282,3 +282,21 @@ console.log(result.keys, result.currentSize, result.limitSize);
282
282
  |currentSize|`number`|当前占用的空间大小,单位 KB|
283
283
  |keys|`string[]`|当前 storage 中所有的 key|
284
284
  |limitSize|`number`|限制的空间大小,单位 KB|
285
+
286
+ ## 相关类型
287
+
288
+ <a id="getstorageresult"></a>
289
+ ### GetStorageResult
290
+
291
+ #### Properties
292
+
293
+ • **data**: `TData` - key 对应的数据
294
+
295
+ <a id="getstorageinforesult"></a>
296
+ ### GetStorageInfoResult
297
+
298
+ #### Properties
299
+
300
+ • **keys**: `string[]` - 当前 storage 中所有的 key
301
+ • **currentSize**: `number` - 当前占用的空间大小,单位 KB
302
+ • **limitSize**: `number` - 限制的空间大小,单位 KB
@@ -122,6 +122,10 @@ import { exitApp } from '@doubao-apps/framework/api';
122
122
  await exitApp();
123
123
  ```
124
124
 
125
+ ## 注意事项
126
+
127
+ 会退出当前所有页面。
128
+
125
129
  ## 入参
126
130
 
127
131
  无入参。
@@ -135,6 +139,10 @@ await exitApp();
135
139
 
136
140
  关闭栈顶页面。
137
141
 
142
+ ::: warning
143
+ 已废弃:使用 navigateBack
144
+ :::
145
+
138
146
  ## 代码示例
139
147
 
140
148
  ```typescript
@@ -59,7 +59,7 @@ if (result.action === 'confirm') {
59
59
 
60
60
  |字段名|类型|说明|
61
61
  |---|---|---|
62
- |action|`"confirm" \| "cancel" \| "mask"`|用户点击的动作。|
62
+ |action|`"confirm" | "cancel" | "mask"`|用户点击的动作。|
63
63
 
64
64
  <a id="showloading"></a>
65
65
  ### showLoading()
@@ -75,6 +75,10 @@ await showLoading();
75
75
  await hideLoading();
76
76
  ```
77
77
 
78
+ ## 注意事项
79
+
80
+ 需调用 hideLoading 关闭。
81
+
78
82
  ## 入参
79
83
 
80
84
  无入参。
@@ -207,6 +211,10 @@ import { enableAlertBeforeUnload } from '@doubao-apps/framework/api';
207
211
  await enableAlertBeforeUnload({ message: '确定离开当前页面吗?' });
208
212
  ```
209
213
 
214
+ ## 注意事项
215
+
216
+ 配合 disableAlertBeforeUnload 使用。
217
+
210
218
  ## 入参
211
219
 
212
220
  |参数名|类型|必填|说明|
@@ -275,16 +283,54 @@ showToast({
275
283
  });
276
284
  ```
277
285
 
286
+ ## 注意事项
287
+
288
+ duration 和 icon 可控制提示表现。
289
+
278
290
  ## 入参
279
291
 
280
292
  |参数名|类型|必填|说明|
281
293
  |---|---|---|---|
282
294
  |customIcon|`string`|否|-|
283
295
  |duration|`number`|否|-|
284
- |icon|`"success" \| "error" \| "warn"`|否|-|
296
+ |icon|`"success" | "error" | "warn"`|否|-|
285
297
  |message|`string`|是|-|
286
- |type|`"default" \| "success" \| "error" \| "warning"`|否|-|
298
+ |type|`"default" | "success" | "error" | "warning"`|否|-|
287
299
 
288
300
  ## 返回值
289
301
 
290
302
  返回一个 Promise,在 Toast 显示结束时 resolve。
303
+
304
+ ## 相关类型
305
+
306
+ <a id="showmodalresult"></a>
307
+ ### ShowModalResult
308
+
309
+ 显示模态对话框的返回结果。
310
+
311
+ #### Properties
312
+
313
+ • **action**: `'confirm' | 'cancel' | 'mask'` - 用户点击的动作
314
+
315
+ <a id="showactionsheetresult"></a>
316
+ ### ShowActionSheetResult
317
+
318
+ 显示操作菜单的返回结果。
319
+
320
+ #### Properties
321
+
322
+ • **tapIndex**: `number` - 用户点击的按钮序号,从 0 开始
323
+
324
+ <a id="menubuttonboundingclientrect"></a>
325
+ ### MenuButtonBoundingClientRect
326
+
327
+ 菜单按钮的布局位置信息。
328
+
329
+ #### Properties
330
+
331
+ • **width**: `number` - 宽度,单位 px
332
+ • **height**: `number` - 高度,单位 px
333
+ • **top**: `number` - 上边界坐标,单位 px
334
+ • **right**: `number` - 右边界坐标,单位 px
335
+ • **bottom**: `number` - 下边界坐标,单位 px
336
+ • **left**: `number` - 左边界坐标,单位 px