1# @ohos.bundle.bundleManager (bundleManager模块)
2
3本模块提供应用信息查询能力,支持[BundleInfo](js-apis-bundleManager-bundleInfo.md)、[ApplicationInfo](js-apis-bundleManager-applicationInfo.md)、[AbilityInfo](js-apis-bundleManager-abilityInfo.md)、[ExtensionAbilityInfo](js-apis-bundleManager-extensionAbilityInfo.md)等信息的查询。
4
5> **说明:**
6> 本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
7
8## 导入模块
9
10```ts
11import { bundleManager } from '@kit.AbilityKit';
12```
13
14## 权限列表
15
16| 权限                                       | 权限等级     | 描述            |
17| ------------------------------------------ | ------------ | ------------------|
18| ohos.permission.GET_BUNDLE_INFO_PRIVILEGED | system_basic | 允许查询应用的基本信息和其他敏感信息。 |
19
20权限等级参考[权限APL等级说明](../../security/AccessToken/app-permission-mgmt-overview.md#权限机制中的基本概念)。
21
22## 枚举
23
24### BundleFlag
25
26包信息标志,指示需要获取的包信息的内容。
27
28 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core29
30| 名称                                          | 值         | 说明                                                         |
31| --------------------------------------------- | ---------- | ------------------------------------------------------------ |
32| GET_BUNDLE_INFO_DEFAULT                       | 0x00000000 | 用于获取默认bundleInfo,获取的bundleInfo不包含signatureInfo、applicationInfo、hapModuleInfo、ability、extensionAbility和permission的信息。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
33| GET_BUNDLE_INFO_WITH_APPLICATION              | 0x00000001 | 用于获取包含applicationInfo的bundleInfo,获取的bundleInfo不包含signatureInfo、hapModuleInfo、ability、extensionAbility和permission的信息。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
34| GET_BUNDLE_INFO_WITH_HAP_MODULE               | 0x00000002 | 用于获取包含hapModuleInfo的bundleInfo,获取的bundleInfo不包含signatureInfo、applicationInfo、ability、extensionAbility和permission的信息。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
35| GET_BUNDLE_INFO_WITH_ABILITY                  | 0x00000004 | 用于获取包含ability的bundleInfo,获取的bundleInfo不包含signatureInfo、applicationInfo、extensionAbility和permission的信息。它不能单独使用,需要与GET_BUNDLE_INFO_WITH_HAP_MODULE一起使用。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
36| GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY        | 0x00000008 | 用于获取包含extensionAbility的bundleInfo,获取的bundleInfo不包含signatureInfo、applicationInfo、ability 和permission的信息。它不能单独使用,需要与GET_BUNDLE_INFO_WITH_HAP_MODULE一起使用。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
37| GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION     | 0x00000010 | 用于获取包含permission的bundleInfo。获取的bundleInfo不包含signatureInfo、applicationInfo、hapModuleInfo、extensionAbility和ability的信息。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
38| GET_BUNDLE_INFO_WITH_METADATA                 | 0x00000020 | 用于获取applicationInfo、moduleInfo和abilityInfo中包含的metadata。它不能单独使用,它需要与GET_BUNDLE_INFO_WITH_APPLICATION、GET_BUNDLE_INFO_WITH_HAP_MODULE、GET_BUNDLE_INFO_WITH_ABILITY、GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY一起使用。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
39| GET_BUNDLE_INFO_WITH_DISABLE                  | 0x00000040 | 用于获取application被禁用的BundleInfo和被禁用的Ability信息。获取的bundleInfo不包含signatureInfo、applicationInfo、hapModuleInfo、ability、extensionAbility和permission的信息。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
40| GET_BUNDLE_INFO_WITH_SIGNATURE_INFO           | 0x00000080 | 用于获取包含signatureInfo的bundleInfo。获取的bundleInfo不包含applicationInfo、hapModuleInfo、extensionAbility、ability和permission的信息。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
41| GET_BUNDLE_INFO_WITH_MENU<sup>11+</sup>       | 0x00000100 | 用于获取包含fileContextMenuConfig的bundleInfo。它不能单独使用,需要与GET_BUNDLE_INFO_WITH_HAP_MODULE一起使用。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
42| GET_BUNDLE_INFO_WITH_ROUTER_MAP<sup>12+</sup> | 0x00000200 | 用于获取包含routerMap的bundleInfo。它不能单独使用,需要与GET_BUNDLE_INFO_WITH_HAP_MODULE一起使用。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 |
43| GET_BUNDLE_INFO_WITH_SKILL<sup>12+</sup>      | 0x00000800 | 用于获取包含skills的bundleInfo。它不能单独使用,需要与GET_BUNDLE_INFO_WITH_HAP_MODULE、GET_BUNDLE_INFO_WITH_ABILITY、GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY一起使用。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 |
44
45### ExtensionAbilityType
46
47指示扩展组件的类型。
48
49 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core50
51| 名称 | 值 | 说明 |
52|:----------------:|:---:|-----|
53| FORM             | 0   | [FormExtensionAbility](../apis-form-kit/js-apis-app-form-formExtensionAbility.md):卡片扩展能力,提供卡片开发能力。<br>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
54| WORK_SCHEDULER   | 1   | [WorkSchedulerExtensionAbility](../apis-backgroundtasks-kit/js-apis-WorkSchedulerExtensionAbility.md):延时任务扩展能力,允许应用在系统闲时执行实时性不高的任务。 |
55| INPUT_METHOD     | 2   | [InputMethodExtensionAbility](../apis-ime-kit/js-apis-inputmethod-extension-ability.md):输入法扩展能力,用于开发输入法应用。 |
56| SERVICE          | 3   | <!--Del-->[<!--DelEnd-->ServiceExtensionAbility<!--Del-->](js-apis-app-ability-serviceExtensionAbility-sys.md)<!--DelEnd-->:后台服务扩展能力,提供后台运行并对外提供相应能力。 |
57| ACCESSIBILITY    | 4   | <!--RP1-->[AccessibilityExtensionAbility](../apis-accessibility-kit/js-apis-application-accessibilityExtensionAbility.md)<!--RP1End-->:无障碍服务扩展能力,支持访问与操作前台界面。 |
58| DATA_SHARE       | 5   | <!--Del-->[<!--DelEnd-->DataShareExtensionAbility <!--Del-->](../apis-arkdata/js-apis-application-dataShareExtensionAbility-sys.md)<!--DelEnd-->:数据共享扩展能力,用于对外提供数据读写服务。 |
59| FILE_SHARE       | 6   | FileShareExtensionAbility:文件共享扩展能力,用于应用间的文件分享。预留能力,仅系统应用支持。 |
60| STATIC_SUBSCRIBER| 7   | <!--Del-->[<!--DelEnd-->StaticSubscriberExtensionAbility <!--Del-->](../apis-basic-services-kit/js-apis-application-staticSubscriberExtensionAbility-sys.md)<!--DelEnd-->:静态广播扩展能力,用于处理静态事件,比如开机事件。 |
61| WALLPAPER        | 8   | WallpaperExtensionAbility:壁纸扩展能力,用于实现桌面壁纸。预留能力,仅系统应用支持。 |
62| BACKUP           |  9  | [BackupExtensionAbility](../apis-core-file-kit/js-apis-application-backupExtensionAbility.md):数据备份扩展能力,提供应用数据的备份恢复能力。 |
63| WINDOW           |  10 | <!--Del-->[<!--DelEnd-->WindowExtensionAbility<!--Del-->](../apis-arkui/js-apis-application-windowExtensionAbility-sys.md)<!--DelEnd-->:界面组合扩展能力,允许系统应用进行跨应用的界面拉起和嵌入。 |
64| ENTERPRISE_ADMIN |  11 | [EnterpriseAdminExtensionAbility](../apis-mdm-kit/js-apis-EnterpriseAdminExtensionAbility.md):企业设备管理扩展能力,提供企业管理时处理管理事件的能力,比如设备上应用安装事件、锁屏密码输入错误次数过多事件等。 |
65| THUMBNAIL        | 13  | ThumbnailExtensionAbility:文件缩略图扩展能力,用于为文件提供图标缩略图的能力。预留能力,仅系统应用支持。 |
66| PREVIEW          | 14  | PreviewExtensionAbility:文件预览扩展能力,提供文件预览的能力,其他应用可以直接在应用中嵌入显示。预留能力,仅系统应用支持。 |
67| PRINT<sup>10+</sup> | 15 | PrintExtensionAbility:文件打印扩展能力,提供应用打印照片、文档等办公场景。仅系统应用支持。 |
68| SHARE<sup>10+</sup> | 16 | [ShareExtensionAbility](js-apis-app-ability-shareExtensionAbility.md):提供分享业务能力,为开发者提供基于UIExtension的分享业务模板。 |
69| PUSH<sup>10+</sup> | 17 | PushExtensionAbility:推送扩展能力,提供推送场景化消息能力。预留能力,仅系统应用支持。 |
70| DRIVER<sup>10+</sup> | 18 | [DriverExtensionAbility](../apis-driverdevelopment-kit/js-apis-app-ability-driverExtensionAbility.md):驱动扩展能力,提供外设驱动扩展能力,仅系统应用支持。 |
71| ACTION<sup>10+</sup> | 19 | [ActionExtensionAbility](js-apis-app-ability-actionExtensionAbility.md):自定义服务扩展能力,为开发者提供基于UIExtension的自定义操作业务模板。 |
72| ADS_SERVICE<sup>11+</sup> | 20 | AdsServiceExtensionAbility:广告服务扩展能力,对外提供后台自定义广告业务服务,仅系统应用支持。 |
73| EMBEDDED_UI<sup>12+</sup> | 21 | [EmbeddedUIExtensionAbility](js-apis-app-ability-embeddedUIExtensionAbility.md):嵌入式UI扩展能力,提供跨进程界面嵌入的能力。 |
74| INSIGHT_INTENT_UI<sup>12+</sup> | 22 | InsightIntentUIExtensionAbility:为开发者提供能被小艺意图调用,以窗口形态呈现内容的扩展能力。 |
75| UNSPECIFIED      | 255 | 不指定类型,配合queryExtensionAbilityInfo接口可以查询所有类型的ExtensionAbility。 |
76
77
78### PermissionGrantState
79
80指示权限授予状态。
81
82 **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
83
84 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core85
86| 名称 | 值 | 说明 |
87|:----------------:|:---:|:---:|
88| PERMISSION_DENIED|  -1 | 拒绝授予权限。 |
89| PERMISSION_GRANTED |  0  |  授予权限。  |
90
91### SupportWindowMode
92
93标识该组件所支持的窗口模式。
94
95 **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
96
97 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core98
99| 名称 | 值 | 说明 |
100|:----------------:|:---:|:---:|
101| FULL_SCREEN      | 0   | 窗口支持全屏显示。 |
102| SPLIT            | 1   | 窗口支持分屏显示。 |
103| FLOATING         | 2   | 支持窗口化显示。   |
104
105### LaunchType
106
107指示组件的启动方式。
108
109 **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
110
111 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core112
113| 名称 | 值 | 说明 |
114|:----------------:|:---:|:---:|
115| SINGLETON        | 0   | ability的启动模式,表示单实例。 |
116| MULTITON         | 1   | ability的启动模式,表示普通多实例。 |
117| SPECIFIED        | 2   | ability的启动模式,表示该ability内部根据业务自己指定多实例。 |
118
119### AbilityType
120
121指示Ability组件的类型。
122
123 **模型约束:** 仅可在FA模型下使用
124
125 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core126
127|  名称   | 值   |                            说明                            |
128| :-----: | ---- | :--------------------------------------------------------: |
129| PAGE    | 1    | UI界面类型的Ability。表示基于Page模板开发的FA,用于提供与用户交互的能力。        |
130| SERVICE | 2    | 后台服务类型的Ability,无UI界面。表示基于Service模板开发的PA,用于提供后台运行任务的能力。  |
131|  DATA   | 3    | 表示基于Data模板开发的PA,用于对外部提供统一的数据访问对象。 |
132
133### DisplayOrientation
134
135标识该Ability的显示模式。该标签仅适用于page类型的Ability。
136
137 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core138
139| 名称                               |值 |说明 |
140|:----------------------------------|---|---|
141| UNSPECIFIED                        |0 |表示未定义方向模式,由系统判定。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
142| LANDSCAPE                          |1 |表示横屏显示模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
143| PORTRAIT                           |2 |表示竖屏显示模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
144| FOLLOW_RECENT                      |3 |表示跟随上一个显示模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
145| LANDSCAPE_INVERTED                 |4 |表示反向横屏显示模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
146| PORTRAIT_INVERTED                  |5 |表示反向竖屏显示模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
147| AUTO_ROTATION                      |6 |表示传感器自动旋转模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
148| AUTO_ROTATION_LANDSCAPE            |7 |表示传感器自动横向旋转模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
149| AUTO_ROTATION_PORTRAIT             |8 |表示传感器自动竖向旋转模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
150| AUTO_ROTATION_RESTRICTED           |9 |表示受开关控制的自动旋转模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
151| AUTO_ROTATION_LANDSCAPE_RESTRICTED |10|表述受开关控制的自动横向旋转模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。|
152| AUTO_ROTATION_PORTRAIT_RESTRICTED  |11|表示受开关控制的自动竖向旋转模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。|
153| LOCKED                             |12|表示锁定模式。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。|
154| AUTO_ROTATION_UNSPECIFIED<sup>12+</sup> |13|受开关控制和由系统判定的自动旋转模式。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。|
155| FOLLOW_DESKTOP<sup>12+</sup> |14|跟随桌面的旋转模式。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。|
156
157### CompatiblePolicy<sup>10+</sup>
158
159标识共享库的版本兼容类型。
160
161 **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
162
163 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core
164
165| 名称                   | 值   | 说明                             |
166| ---------------------- | ---- | -------------------------------- |
167| BACKWARD_COMPATIBILITY | 1    | 该字段表明共享库是向后兼容类型。 |
168
169### ModuleType
170
171标识模块类型。
172
173 **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
174
175 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core
176
177| 名称    | 值   | 说明                 |
178| ------- | ---- | -------------------- |
179| ENTRY   | 1    | 应用的主模块。   |
180| FEATURE | 2    | 应用的动态特性模块。 |
181| SHARED  | 3    | 应用的动态共享库模块。  |
182
183### BundleType
184
185标识应用的类型。
186
187 **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
188
189 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core
190
191| 名称           | 值   | 说明            |
192| -------------- | ---- | --------------- |
193| APP            | 0    | 该Bundle是应用。    |
194| ATOMIC_SERVICE | 1    | 该Bundle是原子化服务。 |
195
196### MultiAppModeType<sup>12+</sup>
197标识应用多开的模式类型。
198
199 **系统能力:** SystemCapability.BundleManager.BundleFramework.Core200
201| 名称 | 值 | 说明 |
202|:----------------:|:---:|:---:|
203| UNSPECIFIED|  0 | 未指定类型。 |
204| MULTI_INSTANCE |  1  | 多实例模式。常驻进程不支持该字段。  |
205| APP_CLONE |  2  |  分身模式。  |
206
207## 接口
208
209### bundleManager.getBundleInfoForSelf
210
211getBundleInfoForSelf(bundleFlags: number): Promise\<BundleInfo>
212
213以异步方法根据给定的bundleFlags获取当前应用的BundleInfo,使用Promise形式返回结果。
214
215**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
216
217**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
218
219**参数:**
220
221| 参数名     | 类型   | 必填 | 说明                |
222| ----------- | ------ | ---- | --------------------- |
223| [bundleFlags](js-apis-bundleManager.md#bundleflag) | number | 是   | 指定返回的BundleInfo所包含的信息。 |
224
225**返回值:**
226
227| 类型                                                        | 说明                                  |
228| ----------------------------------------------------------- | ------------------------------------- |
229| Promise\<[BundleInfo](js-apis-bundleManager-bundleInfo.md)> | Promise对象,返回当前应用的BundleInfo。|
230
231**错误码:**
232
233以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
234
235| 错误码ID | 错误信息                                                     |
236| -------- | ------------------------------------------------------------ |
237| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
238
239**示例:**
240
241```ts
242// 额外获取带有metadataArray信息的appInfo
243import { bundleManager } from '@kit.AbilityKit';
244import { BusinessError } from '@kit.BasicServicesKit';
245import { hilog } from '@kit.PerformanceAnalysisKit';
246
247let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION | bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_METADATA;
248
249try {
250  bundleManager.getBundleInfoForSelf(bundleFlags).then((data) => {
251    hilog.info(0x0000, 'testTag', 'getBundleInfoForSelf successfully. Data: %{public}s', JSON.stringify(data));
252  }).catch((err: BusinessError) => {
253    hilog.error(0x0000, 'testTag', 'getBundleInfoForSelf failed. Cause: %{public}s', err.message);
254  });
255} catch (err) {
256  let message = (err as BusinessError).message;
257  hilog.error(0x0000, 'testTag', 'getBundleInfoForSelf failed: %{public}s', message);
258}
259```
260
261### bundleManager.getBundleInfoForSelf
262
263getBundleInfoForSelf(bundleFlags: number, callback: AsyncCallback\<BundleInfo>): void
264
265以异步方法根据给定的bundleFlags获取当前应用的BundleInfo,使用callback形式返回结果。
266
267**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
268
269**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
270
271**参数:**
272
273| 参数名     | 类型   | 必填 | 说明                |
274| ----------- | ------ | ---- | --------------------- |
275| [bundleFlags](js-apis-bundleManager.md#bundleflag) | number | 是   | 指定返回的BundleInfo所包含的信息。 |
276| callback | AsyncCallback\<[BundleInfo](js-apis-bundleManager-bundleInfo.md)> | 是 | 回调函数,当获取成功时,err为null,data为获取到的当前应用的BundleInfo;否则为错误对象。 |
277
278**错误码:**
279
280以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
281
282| 错误码ID | 错误信息                                                     |
283| -------- | ------------------------------------------------------------ |
284| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
285
286**示例:**
287
288```ts
289// 额外获取带有permissions信息的abilitiesInfo
290import { bundleManager } from '@kit.AbilityKit';
291import { BusinessError } from '@kit.BasicServicesKit';
292import { hilog } from '@kit.PerformanceAnalysisKit';
293
294let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_HAP_MODULE | bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_ABILITY | bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION;
295
296try {
297  bundleManager.getBundleInfoForSelf(bundleFlags, (err, data) => {
298    if (err) {
299      hilog.error(0x0000, 'testTag', 'getBundleInfoForSelf failed: %{public}s', err.message);
300    } else {
301      hilog.info(0x0000, 'testTag', 'getBundleInfoForSelf successfully: %{public}s', JSON.stringify(data));
302    }
303  });
304} catch (err) {
305  let message = (err as BusinessError).message;
306  hilog.error(0x0000, 'testTag', 'getBundleInfoForSelf failed: %{public}s', message);
307}
308```
309
310### bundleManager.getProfileByAbility
311
312getProfileByAbility(moduleName: string, abilityName: string, metadataName: string, callback: AsyncCallback\<Array\<string\>\>): void
313
314以异步方法根据给定的moduleName、abilityName和metadataName(module.json中[metadata标签](../../quick-start/module-configuration-file.md#metadata标签)下的name)获取相应配置文件的json格式字符串,使用callback形式返回结果。
315
316>如果配置文件信息采用了资源引用格式,则返回值将保持资源引用格式(例如 $string:res_id),开发者可以通过资源管理模块的相关接口,来获取引用的资源。
317
318**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
319
320**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
321
322**参数:**
323
324| 参数名       | 类型                          | 必填 | 说明                                                         |
325| ------------ | ----------------------------- | ---- | ------------------------------------------------------------ |
326| moduleName   | string                        | 是   | 表示Module名称。                                     |
327| abilityName  | string                        | 是   | 表示UIAbility组件的名称。                                    |
328| metadataName | string                        | 是   | 表示UIAbility组件的元信息名称,即module.json5配置文件中abilities标签下的metadata标签的name。                                  |
329| callback     | AsyncCallback<Array\<string>> | 是   | 回调函数,当获取成功时,err为null,data为获取到的Array\<string>;否则为错误对象。 |
330
331**错误码:**
332
333以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
334
335| 错误码ID | 错误信息                                                     |
336| -------- | ------------------------------------------------------------ |
337| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
338| 17700002 | The specified moduleName is not existed.                      |
339| 17700003 | The specified abilityName is not existed.                     |
340| 17700024 | Failed to get the profile because there is no profile in the HAP. |
341| 17700026 | The specified bundle is disabled.                             |
342| 17700029 | The specified ability is disabled.                            |
343
344**示例:**
345
346```ts
347import { bundleManager } from '@kit.AbilityKit';
348import { BusinessError } from '@kit.BasicServicesKit';
349import { hilog } from '@kit.PerformanceAnalysisKit';
350
351let moduleName = 'entry';
352let abilityName = 'EntryAbility';
353let metadataName = 'ability_metadata';
354
355try {
356  bundleManager.getProfileByAbility(moduleName, abilityName, metadataName, (err, data) => {
357    if (err) {
358      hilog.error(0x0000, 'testTag', 'getProfileByAbility failed. Cause: %{public}s', err.message);
359    } else {
360      hilog.info(0x0000, 'testTag', 'getProfileByAbility successfully: %{public}s', JSON.stringify(data));
361    }
362  });
363} catch (err) {
364  let message = (err as BusinessError).message;
365  hilog.error(0x0000, 'testTag', 'getProfileByAbility failed. Cause: %{public}s', message);
366}
367```
368
369### bundleManager.getProfileByAbility
370
371getProfileByAbility(moduleName: string, abilityName: string, metadataName?: string): Promise\<Array\<string\>\>
372
373以异步方法根据给定的moduleName、abilityName和metadataName(module.json中[metadata标签](../../quick-start/module-configuration-file.md#metadata标签)下的name)获取相应配置文件的json格式字符串,使用Promise形式返回结果。
374
375>如果配置文件信息采用了资源引用格式,则返回值将保持资源引用格式(例如 $string:res_id),开发者可以通过资源管理模块的相关接口,来获取引用的资源。
376
377**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
378
379**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
380
381**参数:**
382
383| 参数名       | 类型   | 必填 | 说明                       |
384| ------------ | ------ | ---- | -------------------------- |
385| moduleName   | string | 是   | 表示Module名称。   |
386| abilityName  | string | 是   | 表示UIAbility组件的名称。  |
387| metadataName | string | 否   | 表示UIAbility组件的元信息名称,即module.json5配置文件中abilities标签下的metadata标签的name,默认值为空。 |
388
389**返回值:**
390
391| 类型                    | 说明                            |
392| ----------------------- | ------------------------------- |
393| Promise<Array\<string>> | Promise对象,返回Array\<string>。 |
394
395**错误码:**
396
397以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
398
399| 错误码ID | 错误信息                                                     |
400| -------- | ------------------------------------------------------------ |
401| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
402| 17700002 | The specified moduleName is not existed.                      |
403| 17700003 | The specified abilityName is not existed.                     |
404| 17700024 | Failed to get the profile because there is no profile in the HAP. |
405| 17700026 | The specified bundle is disabled.                             |
406| 17700029 | The specified ability is disabled.                            |
407
408**示例:**
409
410```ts
411import { bundleManager } from '@kit.AbilityKit';
412import { BusinessError } from '@kit.BasicServicesKit';
413import { hilog } from '@kit.PerformanceAnalysisKit';
414
415let moduleName = 'entry';
416let abilityName = 'EntryAbility';
417
418try {
419  bundleManager.getProfileByAbility(moduleName, abilityName).then((data) => {
420    hilog.info(0x0000, 'testTag', 'getProfileByAbility successfully. Data: %{public}s', JSON.stringify(data));
421  }).catch((err: BusinessError) => {
422    hilog.error(0x0000, 'testTag', 'getProfileByAbility failed. Cause: %{public}s', err.message);
423  });
424} catch (err) {
425  let message = (err as BusinessError).message;
426  hilog.error(0x0000, 'testTag', 'getProfileByAbility failed. Cause: %{public}s', message);
427}
428```
429
430```ts
431import { bundleManager } from '@kit.AbilityKit';
432import { BusinessError } from '@kit.BasicServicesKit';
433import { hilog } from '@kit.PerformanceAnalysisKit';
434
435let moduleName = 'entry';
436let abilityName = 'EntryAbility';
437let metadataName = 'ability_metadata';
438
439try {
440  bundleManager.getProfileByAbility(moduleName, abilityName, metadataName).then((data) => {
441    hilog.info(0x0000, 'testTag', 'getProfileByAbility successfully. Data: %{public}s', JSON.stringify(data));
442  }).catch((err: BusinessError) => {
443    hilog.error(0x0000, 'testTag', 'getProfileByAbility failed. Cause: %{public}s', err.message);
444  });
445} catch (err) {
446  let message = (err as BusinessError).message;
447  hilog.error(0x0000, 'testTag', 'getProfileByAbility failed. Cause: %{public}s', message);
448}
449```
450
451### bundleManager.getProfileByAbilitySync<sup>10+</sup>
452
453getProfileByAbilitySync(moduleName: string, abilityName: string, metadataName?: string): Array\<string\>
454
455以同步方法根据给定的moduleName、abilityName和metadataName(module.json中[metadata标签](../../quick-start/module-configuration-file.md#metadata标签)下的name)获取相应配置文件的json格式字符串,返回对象为string数组。
456
457>如果配置文件信息采用了资源引用格式,则返回值将保持资源引用格式(例如 $string:res_id),开发者可以通过资源管理模块的相关接口,来获取引用的资源。
458
459**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
460
461**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
462
463**参数:**
464
465| 参数名       | 类型   | 必填 | 说明                       |
466| ------------ | ------ | ---- | -------------------------- |
467| moduleName   | string | 是   | 表示Module名称。   |
468| abilityName  | string | 是   | 表示UIAbility组件的名称。  |
469| metadataName | string | 否   | 表示UIAbility组件的元信息名称,即module.json5配置文件中abilities标签下的metadata标签的name,默认值为空。 |
470
471**返回值:**
472
473| 类型                    | 说明                            |
474| ----------------------- | ------------------------------- |
475| Array\<string> | 数组对象,返回Array\<string>。 |
476
477**错误码:**
478
479以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
480
481| 错误码ID | 错误信息                                                     |
482| -------- | ------------------------------------------------------------ |
483| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
484| 17700002 | The specified moduleName is not existed.                      |
485| 17700003 | The specified abilityName is not existed.                     |
486| 17700024 | Failed to get the profile because there is no profile in the HAP. |
487| 17700026 | The specified bundle is disabled.                             |
488| 17700029 | The specified ability is disabled.                            |
489
490**示例:**
491
492```ts
493import { bundleManager } from '@kit.AbilityKit';
494import { BusinessError } from '@kit.BasicServicesKit';
495import { hilog } from '@kit.PerformanceAnalysisKit';
496
497let moduleName = 'entry';
498let abilityName = 'EntryAbility';
499
500try {
501  let data = bundleManager.getProfileByAbilitySync(moduleName, abilityName);
502  hilog.info(0x0000, 'testTag', 'getProfileByAbilitySync successfully. Data: %{public}s', JSON.stringify(data));
503} catch (err) {
504  let message = (err as BusinessError).message;
505  hilog.error(0x0000, 'testTag', 'getProfileByAbilitySync failed. Cause: %{public}s', message);
506}
507```
508
509```ts
510import { bundleManager } from '@kit.AbilityKit';
511import { BusinessError } from '@kit.BasicServicesKit';
512import { hilog } from '@kit.PerformanceAnalysisKit';
513
514let moduleName: string = 'entry';
515let abilityName: string = 'EntryAbility';
516let metadataName: string = 'ability_metadata';
517
518try {
519  let data = bundleManager.getProfileByAbilitySync(moduleName, abilityName, metadataName);
520  hilog.info(0x0000, 'testTag', 'getProfileByAbilitySync successfully. Data: %{public}s', JSON.stringify(data));
521} catch (err) {
522  let message = (err as BusinessError).message;
523  hilog.error(0x0000, 'testTag', 'getProfileByAbilitySync failed. Cause: %{public}s', message);
524}
525```
526
527### bundleManager.getProfileByExtensionAbility
528
529getProfileByExtensionAbility(moduleName: string, extensionAbilityName: string, metadataName: string, callback: AsyncCallback\<Array\<string\>\>): void
530
531以异步方法根据给定的moduleName、extensionAbilityName和metadataName(module.json中[metadata标签](../../quick-start/module-configuration-file.md#metadata标签)下的name)获取相应配置文件的json格式字符串,使用callback形式返回结果。
532
533>如果配置文件信息采用了资源引用格式,则返回值将保持资源引用格式(例如 $string:res_id),开发者可以通过资源管理模块的相关接口,来获取引用的资源。
534
535**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
536
537**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
538
539**参数:**
540
541| 参数名                 | 类型                          | 必填 | 说明                                                         |
542| -------------------- | ----------------------------- | ---- | ------------------------------------------------------------ |
543| moduleName           | string                        | 是   | 表示Module名称。                                   |
544| extensionAbilityName | string                        | 是   | 表示ExtensionAbility组件的名称。                         |
545| metadataName         | string                        | 是   | 表示ExtensionAbility组件的名称。组件的元信息名称,即module.json5配置文件中extensionAbilities标签下的metadata标签的name。                                 |
546| callback             | AsyncCallback<Array\<string>> | 是   | 回调函数,当获取成功时,err为null,data为获取到的Array\<string>;否则为错误对象。 |
547
548**错误码:**
549
550以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
551
552| 错误码ID | 错误信息                                                     |
553| -------- | ------------------------------------------------------------ |
554| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
555| 17700002 | The specified moduleName is not existed.                      |
556| 17700003 | The specified extensionAbilityName not existed.            |
557| 17700024 | Failed to get the profile because there is no profile in the HAP. |
558| 17700026 | The specified bundle is disabled.                             |
559
560**示例:**
561
562```ts
563import { bundleManager } from '@kit.AbilityKit';
564import { BusinessError } from '@kit.BasicServicesKit';
565import { hilog } from '@kit.PerformanceAnalysisKit';
566
567let moduleName = 'entry';
568let extensionAbilityName = 'com.example.myapplication.extension';
569let metadataName = 'ability_metadata';
570
571try {
572  bundleManager.getProfileByExtensionAbility(moduleName, extensionAbilityName, metadataName, (err, data) => {
573    if (err) {
574      hilog.error(0x0000, 'testTag', 'getProfileByExtensionAbility failed: %{public}s', err.message);
575    } else {
576      hilog.info(0x0000, 'testTag', 'getProfileByExtensionAbility successfully: %{public}s', JSON.stringify(data));
577    }
578  });
579} catch (err) {
580  let message = (err as BusinessError).message;
581  hilog.error(0x0000, 'testTag', 'getProfileByExtensionAbility failed: %{public}s', message);
582}
583```
584
585### bundleManager.getProfileByExtensionAbility
586
587getProfileByExtensionAbility(moduleName: string, extensionAbilityName: string, metadataName?: string): Promise\<Array\<string\>\>
588
589以异步方法根据给定的moduleName、extensionAbilityName和metadataName(module.json中[metadata标签](../../quick-start/module-configuration-file.md#metadata标签)下的name)获取相应配置文件的json格式字符串,使用Promise形式返回结果。
590
591>如果配置文件信息采用了资源引用格式,则返回值将保持资源引用格式(例如 $string:res_id),开发者可以通过资源管理模块的相关接口,来获取引用的资源。
592
593**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
594
595**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
596
597**参数:**
598
599| 参数名                 | 类型   | 必填 | 说明                               |
600| -------------------- | ------ | ---- | ---------------------------------- |
601| moduleName           | string | 是   | 表示Module名称。           |
602| extensionAbilityName | string | 是   | 表示ExtensionAbility组件的名称。 |
603| metadataName         | string | 否   | 表示ExtensionAbility组件的名称。组件的元信息名称,即module.json5配置文件中extensionAbilities标签下的metadata标签的name,默认值为空。         |
604
605**返回值:**
606
607| 类型                    | 说明                                |
608| ----------------------- | ----------------------------------- |
609| Promise<Array\<string>> | Promise对象,返回Array\<string>对象。 |
610
611**错误码:**
612
613以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
614
615| 错误码ID | 错误信息                                                     |
616| -------- | ------------------------------------------------------------ |
617| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
618| 17700002 | The specified moduleName is not existed.                      |
619| 17700003 | The specified extensionAbilityName not existed.            |
620| 17700024 | Failed to get the profile because there is no profile in the HAP. |
621| 17700026 | The specified bundle is disabled.                             |
622
623**示例:**
624
625```ts
626import { bundleManager } from '@kit.AbilityKit';
627import { BusinessError } from '@kit.BasicServicesKit';
628import { hilog } from '@kit.PerformanceAnalysisKit';
629
630let moduleName = 'entry';
631let extensionAbilityName = 'com.example.myapplication.extension';
632let metadataName = 'ability_metadata';
633
634try {
635  bundleManager.getProfileByExtensionAbility(moduleName, extensionAbilityName).then((data) => {
636    hilog.info(0x0000, 'testTag', 'getProfileByExtensionAbility successfully. Data: %{public}s', JSON.stringify(data));
637  }).catch((err: BusinessError) => {
638    hilog.error(0x0000, 'testTag', 'getProfileByExtensionAbility failed. Cause: %{public}s', err.message);
639  });
640} catch (err) {
641  let message = (err as BusinessError).message;
642  hilog.error(0x0000, 'testTag', 'getProfileByExtensionAbility failed. Cause: %{public}s', message);
643}
644
645try {
646  bundleManager.getProfileByExtensionAbility(moduleName, extensionAbilityName, metadataName).then((data) => {
647    hilog.info(0x0000, 'testTag', 'getProfileByExtensionAbility successfully. Data: %{public}s', JSON.stringify(data));
648  }).catch((err: BusinessError) => {
649    hilog.error(0x0000, 'testTag', 'getProfileByExtensionAbility failed. Cause: %{public}s', err.message);
650  });
651} catch (err) {
652  let message = (err as BusinessError).message;
653  hilog.error(0x0000, 'testTag', 'getProfileByExtensionAbility failed. Cause: %{public}s', message);
654}
655```
656
657### bundleManager.getProfileByExtensionAbilitySync<sup>10+</sup>
658
659getProfileByExtensionAbilitySync(moduleName: string, extensionAbilityName: string, metadataName?: string): Array\<string\>
660
661以同步方法根据给定的moduleName、extensionAbilityName和metadataName(module.json中[metadata标签](../../quick-start/module-configuration-file.md#metadata标签)下的name)获取相应配置文件的json格式字符串,返回对象为string数组。
662
663>如果配置文件信息采用了资源引用格式,则返回值将保持资源引用格式(例如 $string:res_id),开发者可以通过资源管理模块的相关接口,来获取引用的资源。
664
665**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
666
667**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
668
669**参数:**
670
671| 参数名                 | 类型   | 必填 | 说明                               |
672| -------------------- | ------ | ---- | ---------------------------------- |
673| moduleName           | string | 是   | 表示Module名称。           |
674| extensionAbilityName | string | 是   | 表示ExtensionAbility组件的名称。 |
675| metadataName         | string | 否   | 表示ExtensionAbility组件的名称。组件的元信息名称,即module.json5配置文件中extensionAbilities标签下的metadata标签的name,默认值为空。         |
676
677**返回值:**
678
679| 类型                    | 说明                                |
680| ----------------------- | ----------------------------------- |
681| Array\<string> | 返回Array\<string>对象。 |
682
683**错误码:**
684
685以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
686
687| 错误码ID | 错误信息                                                     |
688| -------- | ------------------------------------------------------------ |
689| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
690| 17700002 | The specified moduleName is not existed.                      |
691| 17700003 | The specified extensionAbilityName not existed.            |
692| 17700024 | Failed to get the profile because there is no profile in the HAP. |
693| 17700026 | The specified bundle is disabled.                             |
694
695**示例:**
696
697```ts
698import { bundleManager } from '@kit.AbilityKit';
699import { BusinessError } from '@kit.BasicServicesKit';
700import { hilog } from '@kit.PerformanceAnalysisKit';
701
702let moduleName = 'entry';
703let extensionAbilityName = 'com.example.myapplication.extension';
704let metadataName = 'ability_metadata';
705
706try {
707  let data = bundleManager.getProfileByExtensionAbilitySync(moduleName, extensionAbilityName);
708  hilog.info(0x0000, 'testTag', 'getProfileByExtensionAbilitySync successfully. Data: %{public}s', JSON.stringify(data));
709} catch (err) {
710  let message = (err as BusinessError).message;
711  hilog.error(0x0000, 'testTag', 'getProfileByExtensionAbilitySync failed. Cause: %{public}s', message);
712}
713
714try {
715  let data = bundleManager.getProfileByExtensionAbilitySync(moduleName, extensionAbilityName, metadataName);
716  hilog.info(0x0000, 'testTag', 'getProfileByExtensionAbilitySync successfully. Data: %{public}s', JSON.stringify(data));
717} catch (err) {
718  let message = (err as BusinessError).message;
719  hilog.error(0x0000, 'testTag', 'getProfileByExtensionAbilitySync failed. Cause: %{public}s', message);
720}
721```
722
723### bundleManager.getBundleInfoForSelfSync<sup>10+</sup>
724
725getBundleInfoForSelfSync(bundleFlags: number): BundleInfo
726
727以同步方法根据给定的bundleFlags获取当前应用的BundleInfo。
728
729**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
730
731**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
732
733**参数:**
734
735| 参数名     | 类型   | 必填 | 说明                |
736| ----------- | ------ | ---- | --------------------- |
737| [bundleFlags](js-apis-bundleManager.md#bundleflag) | number | 是   | 指定返回的BundleInfo所包含的信息。 |
738
739**返回值:**
740
741| 类型                                              | 说明                 |
742| ------------------------------------------------- | -------------------- |
743| [BundleInfo](js-apis-bundleManager-bundleInfo.md) | 返回BundleInfo对象。 |
744
745**错误码:**
746
747以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
748
749| 错误码ID | 错误信息                                                     |
750| -------- | ------------------------------------------------------------ |
751| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
752
753**示例:**
754
755```ts
756import { bundleManager } from '@kit.AbilityKit';
757import { BusinessError } from '@kit.BasicServicesKit';
758import { hilog } from '@kit.PerformanceAnalysisKit';
759
760let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION;
761
762try {
763  let data = bundleManager.getBundleInfoForSelfSync(bundleFlags);
764  hilog.info(0x0000, 'testTag', 'getBundleInfoForSelfSync successfully: %{public}s', JSON.stringify(data));
765} catch (err) {
766  let message = (err as BusinessError).message;
767  hilog.error(0x0000, 'testTag', 'getBundleInfoForSelfSync failed: %{public}s', message);
768}
769```
770
771### bundleManager.canOpenLink<sup>12+</sup>
772
773canOpenLink(link: string): boolean
774
775查询给定的链接是否可以打开。指定链接的scheme需要在module.json文件的querySchemes字段下配置。
776
777**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
778
779**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
780
781**参数:**
782
783| 参数名     | 类型   | 必填 | 说明                |
784| ----------- | ------ | ---- | --------------------- |
785| link | string | 是   | 表示需要查询的链接。 |
786
787**返回值:**
788
789| 类型                                              | 说明                 |
790| ------------------------------------------------- | -------------------- |
791| boolean | 返回true表示给定的链接可以打开,返回false表示给定的链接不能打开。 |
792
793**错误码:**
794
795以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
796
797| 错误码ID | 错误信息                                                     |
798| -------- | ------------------------------------------------------------ |
799| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
800| 17700055 | The specified link is invalid.                      |
801| 17700056 | The scheme of the specified link is not in the querySchemes.        |
802
803**示例:**
804
805```ts
806import { bundleManager } from '@kit.AbilityKit';
807import { BusinessError } from '@kit.BasicServicesKit';
808import { hilog } from '@kit.PerformanceAnalysisKit';
809
810try {
811  let link = 'welink://';
812  let data = bundleManager.canOpenLink(link);
813  hilog.info(0x0000, 'testTag', 'canOpenLink successfully: %{public}s', JSON.stringify(data));
814} catch (err) {
815  let message = (err as BusinessError).message;
816  hilog.error(0x0000, 'testTag', 'canOpenLink failed: %{public}s', message);
817}
818```
819
820### bundleManager.getLaunchWant<sup>13+</sup>
821
822getLaunchWant(): Want
823
824获取自身用于启动应用程序的Want参数。
825
826**原子化服务API:** 从API version 13开始,该接口支持在原子化服务中使用。
827
828**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
829
830**返回值:**
831
832| 类型                                | 说明                                        |
833| ----------------------------------- | ------------------------------------------- |
834| [Want](js-apis-app-ability-want.md) | 返回包含Bundle名称和Ability名称的Want对象。 |
835
836**错误码:**
837
838以下错误码的详细介绍请参见[ohos.bundle错误码](errorcode-bundle.md)。
839
840| 错误码ID | 错误信息                      |
841| -------- | ----------------------------- |
842| 17700072 | The launch want is not found. |
843
844**示例:**
845
846```ts
847import { BusinessError } from '@kit.BasicServicesKit';
848import { bundleManager } from '@kit.AbilityKit';
849import { hilog } from '@kit.PerformanceAnalysisKit';
850
851try {
852  let want = bundleManager.getLaunchWant();
853  hilog.info(0x0000, 'testTag', 'getLaunchWant ability name: %{public}s', want.abilityName);
854  hilog.info(0x0000, 'testTag', 'getLaunchWant bundle name: %{public}s', want.bundleName);
855} catch (error) {
856  let message = (error as BusinessError).message;
857  hilog.error(0x0000, 'testTag', 'getLaunchWant failed: %{public}s', message);
858}
859```
860
861### bundleManager.getBundleInfo<sup>14+</sup>
862
863getBundleInfo(bundleName: string, bundleFlags: number, userId: number, callback: AsyncCallback\<BundleInfo>): void
864
865以异步方法根据给定的bundleName、bundleFlags和userId获取BundleInfo,使用callback形式返回结果。
866
867获取调用方自己的信息时不需要权限。
868
869**需要权限:** ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
870
871**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
872
873**参数:**
874
875| 参数名  | 类型   | 必填 | 说明                       |
876| ----------- | ------ | ---- | ---------------------------- |
877| bundleName  | string | 是   | 表示要查询的应用Bundle名称。 |
878| [bundleFlags](js-apis-bundleManager.md#bundleflag) | number | 是   | 指定返回的BundleInfo所包含的信息。|
879| userId      | number | 是   | 表示用户ID。  |
880| callback | AsyncCallback\<[BundleInfo](js-apis-bundleManager-bundleInfo.md)> | 是 | 回调函数,当获取成功时,err为null,data为获取到的bundleInfo;否则为错误对象。 |
881
882**错误码:**
883
884以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
885
886| 错误码ID | 错误信息                              |
887| -------- | ------------------------------------- |
888| 201 | Permission denied. |
889| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
890| 17700001 | The specified bundleName is not found. |
891| 17700004 | The specified user ID is not found.     |
892| 17700026 | The specified bundle is disabled.      |
893
894**示例:**
895
896```ts
897// 额外获取AbilityInfo
898import { bundleManager } from '@kit.AbilityKit';
899import { BusinessError } from '@kit.BasicServicesKit';
900import { hilog } from '@kit.PerformanceAnalysisKit';
901let bundleName = 'com.example.myapplication';
902let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_HAP_MODULE | bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_ABILITY;
903let userId = 100;
904
905try {
906    bundleManager.getBundleInfo(bundleName, bundleFlags, userId, (err, data) => {
907        if (err) {
908            hilog.error(0x0000, 'testTag', 'getBundleInfo failed: %{public}s', err.message);
909        } else {
910            hilog.info(0x0000, 'testTag', 'getBundleInfo successfully: %{public}s', JSON.stringify(data));
911        }
912    });
913} catch (err) {
914    let message = (err as BusinessError).message;
915    hilog.error(0x0000, 'testTag', 'getBundleInfo failed: %{public}s', message);
916}
917```
918
919```ts
920// 额外获取ApplicationInfo中的metadata
921import { bundleManager } from '@kit.AbilityKit';
922import { BusinessError } from '@kit.BasicServicesKit';
923import { hilog } from '@kit.PerformanceAnalysisKit';
924let bundleName = 'com.example.myapplication';
925let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION | bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_METADATA;
926let userId = 100;
927
928try {
929    bundleManager.getBundleInfo(bundleName, bundleFlags, userId, (err, data) => {
930        if (err) {
931            hilog.error(0x0000, 'testTag', 'getBundleInfo failed: %{public}s', err.message);
932        } else {
933            hilog.info(0x0000, 'testTag', 'getBundleInfo successfully: %{public}s', JSON.stringify(data));
934        }
935    });
936} catch (err) {
937    let message = (err as BusinessError).message;
938    hilog.error(0x0000, 'testTag', 'getBundleInfo failed: %{public}s', message);
939}
940```
941
942### bundleManager.getBundleInfo<sup>14+</sup>
943
944getBundleInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback\<BundleInfo>): void
945
946以异步方法根据给定的bundleName和bundleFlags获取BundleInfo,使用callback形式返回结果。
947
948获取调用方自己的信息时不需要权限。
949
950**需要权限:** ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
951
952**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
953
954**参数:**
955
956| 参数名     | 类型   | 必填 | 说明                       |
957| ----------- | ------ | ---- | ---------------------------- |
958| bundleName  | string | 是   | 表示要查询的应用Bundle名称。 |
959| [bundleFlags](js-apis-bundleManager.md#bundleflag) | number | 是   | 指定返回的BundleInfo所包含的信息。|
960| callback | AsyncCallback\<[BundleInfo](js-apis-bundleManager-bundleInfo.md)> | 是 | 回调函数,当获取成功时,err为null,data为获取到的BundleInfo;否则为错误对象。 |
961
962**错误码:**
963
964以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
965
966| 错误码ID | 错误信息                              |
967| -------- | ------------------------------------- |
968| 201 | Permission denied. |
969| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
970| 17700001 | The specified bundleName is not found. |
971| 17700026 | The specified bundle is disabled.      |
972
973**示例:**
974
975```ts
976// 额外获取extensionAbility
977import { bundleManager } from '@kit.AbilityKit';
978import { BusinessError } from '@kit.BasicServicesKit';
979import { hilog } from '@kit.PerformanceAnalysisKit';
980let bundleName = 'com.example.myapplication';
981let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_HAP_MODULE | bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY;
982
983try {
984    bundleManager.getBundleInfo(bundleName, bundleFlags, (err, data) => {
985        if (err) {
986            hilog.error(0x0000, 'testTag', 'getBundleInfo failed: %{public}s', err.message);
987        } else {
988            hilog.info(0x0000, 'testTag', 'getBundleInfo successfully: %{public}s', JSON.stringify(data));
989        }
990    });
991} catch (err) {
992    let message = (err as BusinessError).message;
993    hilog.error(0x0000, 'testTag', 'getBundleInfo failed: %{public}s', message);
994}
995```
996
997### bundleManager.getBundleInfo<sup>14+</sup>
998
999getBundleInfo(bundleName: string, bundleFlags: number, userId?: number): Promise\<BundleInfo>
1000
1001以异步方法根据给定的bundleName、bundleFlags和userId获取BundleInfo,使用Promise形式返回结果。
1002
1003获取调用方自己的信息时不需要权限。
1004
1005**需要权限:** ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
1006
1007**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1008
1009**参数:**
1010
1011| 参数名     | 类型   | 必填 | 说明                       |
1012| ----------- | ------ | ---- | ---------------------------- |
1013| bundleName  | string | 是   | 表示要查询的应用Bundle名称。 |
1014| [bundleFlags](js-apis-bundleManager.md#bundleflag) | number | 是   | 指定返回的BundleInfo所包含的信息。       |
1015| userId      | number | 否   | 表示用户ID,默认值:调用方所在用户,取值范围:大于等于0。  |
1016
1017**返回值:**
1018
1019| 类型                                                        | 说明                        |
1020| ----------------------------------------------------------- | --------------------------- |
1021| Promise\<[BundleInfo](js-apis-bundleManager-bundleInfo.md)> | Promise对象,返回BundleInfo。 |
1022
1023**错误码:**
1024
1025以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
1026
1027| 错误码ID | 错误信息                            |
1028| -------- | --------------------------------------|
1029| 201 | Permission denied. |
1030| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
1031| 17700001 | The specified bundleName is not found. |
1032| 17700004 | The specified user ID is not found.     |
1033| 17700026 | The specified bundle is disabled.      |
1034
1035**示例:**
1036
1037```ts
1038// 额外获取ApplicationInfo和SignatureInfo
1039import { bundleManager } from '@kit.AbilityKit';
1040import { BusinessError } from '@kit.BasicServicesKit';
1041import { hilog } from '@kit.PerformanceAnalysisKit';
1042let bundleName = 'com.example.myapplication';
1043let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION | bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_SIGNATURE_INFO;
1044let userId = 100;
1045
1046try {
1047    bundleManager.getBundleInfo(bundleName, bundleFlags, userId).then((data) => {
1048        hilog.info(0x0000, 'testTag', 'getBundleInfo successfully. Data: %{public}s', JSON.stringify(data));
1049    }).catch((err: BusinessError) => {
1050        hilog.error(0x0000, 'testTag', 'getBundleInfo failed. Cause: %{public}s', err.message);
1051    });
1052} catch (err) {
1053    let message = (err as BusinessError).message;
1054    hilog.error(0x0000, 'testTag', 'getBundleInfo failed. Cause: %{public}s', message);
1055}
1056```
1057
1058```ts
1059import { bundleManager } from '@kit.AbilityKit';
1060import { BusinessError } from '@kit.BasicServicesKit';
1061import { hilog } from '@kit.PerformanceAnalysisKit';
1062let bundleName = 'com.example.myapplication';
1063let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_DEFAULT;
1064
1065try {
1066    bundleManager.getBundleInfo(bundleName, bundleFlags).then((data) => {
1067        hilog.info(0x0000, 'testTag', 'getBundleInfo successfully. Data: %{public}s', JSON.stringify(data));
1068    }).catch((err: BusinessError) => {
1069        hilog.error(0x0000, 'testTag', 'getBundleInfo failed. Cause: %{public}s', err.message);
1070    });
1071} catch (err) {
1072    let message = (err as BusinessError).message;
1073    hilog.error(0x0000, 'testTag', 'getBundleInfo failed. Cause: %{public}s', message);
1074}
1075
1076```
1077
1078### bundleManager.getBundleInfoSync<sup>14+</sup>
1079
1080getBundleInfoSync(bundleName: string, bundleFlags: number, userId: number): BundleInfo
1081
1082以同步方法根据给定的bundleName、bundleFlags和userId获取BundleInfo。
1083
1084获取调用方自己的信息时不需要权限。
1085
1086**需要权限:** ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
1087
1088**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1089
1090**参数:**
1091
1092| 参数名       | 类型   | 必填 | 说明                                                     |
1093| ----------- | ------ | ---- | -------------------------------------------------------- |
1094| bundleName  | string | 是   | 表示应用程序的bundleName。                                 |
1095| [bundleFlags](js-apis-bundleManager.md#bundleflag) | number | 是   | 表示用于指定将返回的BundleInfo对象中包含的信息的标志。 |
1096| userId      | number | 是   | 表示用户ID。                                             |
1097
1098**返回值:**
1099
1100| 类型       | 说明                 |
1101| ---------- | -------------------- |
1102| [BundleInfo](js-apis-bundleManager-bundleInfo.md) | 返回BundleInfo对象。 |
1103
1104**错误码:**
1105
1106以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
1107
1108| 错误码ID | 错误信息                             |
1109| -------- | ------------------------------------- |
1110| 201 | Permission denied. |
1111| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
1112| 17700001 | The specified bundleName is not found. |
1113| 17700004 | The specified user ID is not found.     |
1114| 17700026 | The specified bundle is disabled.      |
1115
1116**示例:**
1117
1118```ts
1119import { bundleManager } from '@kit.AbilityKit';
1120import { BusinessError } from '@kit.BasicServicesKit';
1121import { hilog } from '@kit.PerformanceAnalysisKit';
1122let bundleName = 'com.example.myapplication';
1123let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION;
1124let userId = 100;
1125
1126try {
1127    let data = bundleManager.getBundleInfoSync(bundleName, bundleFlags, userId);
1128    hilog.info(0x0000, 'testTag', 'getBundleInfoSync successfully: %{public}s', JSON.stringify(data));
1129} catch (err) {
1130    let message = (err as BusinessError).message;
1131    hilog.error(0x0000, 'testTag', 'getBundleInfoSync failed: %{public}s', message);
1132}
1133```
1134
1135### bundleManager.getBundleInfoSync<sup>14+</sup>
1136
1137getBundleInfoSync(bundleName: string, bundleFlags: number): BundleInfo
1138
1139以同步方法根据给定的bundleName、bundleFlags获取BundleInfo。
1140
1141获取调用方自己的信息时不需要权限。
1142
1143**需要权限:** ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
1144
1145**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1146
1147**参数:**
1148
1149| 参数名      | 类型                  | 必填 | 说明                                                   |
1150| ----------- | --------------------- | ---- | ------------------------------------------------------ |
1151| bundleName  | string                | 是   | 表示应用程序的bundleName。                             |
1152| [bundleFlags](js-apis-bundleManager.md#bundleflag) | number | 是   | 表示用于指定将返回的BundleInfo对象中包含的信息的标志。 |
1153
1154**返回值:**
1155
1156| 类型                                              | 说明                 |
1157| ------------------------------------------------- | -------------------- |
1158| [BundleInfo](js-apis-bundleManager-bundleInfo.md) | 返回BundleInfo对象。 |
1159
1160**错误码:**
1161
1162以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
1163
1164| 错误码ID | 错误信息                               |
1165| -------- | -------------------------------------- |
1166| 201 | Permission denied. |
1167| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
1168| 17700001 | The specified bundleName is not found. |
1169| 17700026 | The specified bundle is disabled.      |
1170
1171**示例:**
1172
1173```ts
1174import { bundleManager } from '@kit.AbilityKit';
1175import { BusinessError } from '@kit.BasicServicesKit';
1176import { hilog } from '@kit.PerformanceAnalysisKit';
1177let bundleName = 'com.example.myapplication';
1178let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION;
1179try {
1180    let data = bundleManager.getBundleInfoSync(bundleName, bundleFlags);
1181    hilog.info(0x0000, 'testTag', 'getBundleInfoSync successfully: %{public}s', JSON.stringify(data));
1182} catch (err) {
1183    let message = (err as BusinessError).message;
1184    hilog.error(0x0000, 'testTag', 'getBundleInfoSync failed: %{public}s', message);
1185}
1186```
1187
1188### bundleManager.getBundleNameByUid<sup>14+</sup>
1189
1190getBundleNameByUid(uid: number, callback: AsyncCallback\<string>): void
1191
1192以异步方法根据给定的uid获取对应的bundleName,使用callback形式返回结果。
1193
1194**需要权限:** ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
1195
1196**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1197
1198**参数:**
1199
1200| 参数名   | 类型                   | 必填 | 说明                                                         |
1201| -------- | ---------------------- | ---- | ------------------------------------------------------------ |
1202| uid      | number                 | 是   | 表示应用程序的UID。                                            |
1203| callback | AsyncCallback\<string> | 是   | 回调函数,当获取成功时,err为null,data为获取到的BundleName;否则为错误对象。 |
1204
1205**错误码:**
1206
1207以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
1208
1209| 错误码ID | 错误信息            |
1210| -------- | --------------------- |
1211| 201 | Permission denied. |
1212| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
1213| 17700021 | The uid is not found. |
1214
1215**示例:**
1216
1217```ts
1218import { bundleManager } from '@kit.AbilityKit';
1219import { BusinessError } from '@kit.BasicServicesKit';
1220import { hilog } from '@kit.PerformanceAnalysisKit';
1221let uid = 20010005;
1222try {
1223    bundleManager.getBundleNameByUid(uid, (err, data) => {
1224        if (err) {
1225            hilog.error(0x0000, 'testTag', 'getBundleNameByUid failed: %{public}s', err.message);
1226        } else {
1227            hilog.info(0x0000, 'testTag', 'getBundleNameByUid successfully: %{public}s', JSON.stringify(data));
1228        }
1229    });
1230} catch (err) {
1231    let message = (err as BusinessError).message;
1232    hilog.error(0x0000, 'testTag', 'getBundleNameByUid failed: %{public}s', message);
1233}
1234```
1235
1236### bundleManager.getBundleNameByUid<sup>14+</sup>
1237
1238getBundleNameByUid(uid: number): Promise\<string>
1239
1240以异步方法根据给定的uid获取对应的bundleName,使用Promise形式返回结果。
1241
1242**需要权限:** ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
1243
1244**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1245
1246**参数:**
1247
1248| 参数名 | 类型   | 必填 | 说明                |
1249| ---- | ------ | ---- | ------------------ |
1250| uid  | number | 是   | 表示应用程序的UID。 |
1251
1252**返回值:**
1253
1254| 类型             | 说明                        |
1255| ---------------- | --------------------------- |
1256| Promise\<string> | Promise对象,返回bundleName。 |
1257
1258**错误码:**
1259
1260以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
1261
1262| 错误码ID | 错误信息            |
1263| -------- | ---------------------|
1264| 201 | Permission denied. |
1265| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
1266| 17700021 | The uid is not found. |
1267
1268**示例:**
1269
1270```ts
1271import { bundleManager } from '@kit.AbilityKit';
1272import { BusinessError } from '@kit.BasicServicesKit';
1273import { hilog } from '@kit.PerformanceAnalysisKit';
1274let uid = 20010005;
1275try {
1276    bundleManager.getBundleNameByUid(uid).then((data) => {
1277        hilog.info(0x0000, 'testTag', 'getBundleNameByUid successfully. Data: %{public}s', JSON.stringify(data));
1278    }).catch((err: BusinessError) => {
1279        hilog.error(0x0000, 'testTag', 'getBundleNameByUid failed. Cause: %{public}s', err.message);
1280    });
1281} catch (err) {
1282    let message = (err as BusinessError).message;
1283    hilog.error(0x0000, 'testTag', 'getBundleNameByUid failed. Cause: %{public}s', message);
1284}
1285```
1286
1287### bundleManager.getBundleNameByUidSync<sup>14+</sup>
1288
1289getBundleNameByUidSync(uid: number): string
1290
1291以同步方法根据给定的uid获取对应的bundleName。
1292
1293**需要权限:** ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
1294
1295**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1296
1297**参数:**
1298
1299| 参数名 | 类型   | 必填 | 说明                |
1300| ---- | ------ | ---- | ------------------ |
1301| uid  | number | 是   | 表示应用程序的UID。 |
1302
1303**返回值:**
1304
1305| 类型             | 说明                        |
1306| ---------------- | --------------------------- |
1307| string | 返回获取到的bundleName。 |
1308
1309**错误码:**
1310
1311以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
1312
1313| 错误码ID | 错误信息            |
1314| -------- | ---------------------|
1315| 201 | Permission denied. |
1316| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
1317| 17700021 | The uid is not found. |
1318
1319**示例:**
1320
1321```ts
1322import { bundleManager } from '@kit.AbilityKit';
1323import { BusinessError } from '@kit.BasicServicesKit';
1324import { hilog } from '@kit.PerformanceAnalysisKit';
1325let uid = 20010005;
1326try {
1327    let data = bundleManager.getBundleNameByUidSync(uid);
1328    hilog.info(0x0000, 'testTag', 'getBundleNameByUidSync successfully. Data: %{public}s', JSON.stringify(data));
1329} catch (err) {
1330    let message = (err as BusinessError).message;
1331    hilog.error(0x0000, 'testTag', 'getBundleNameByUidSync failed. Cause: %{public}s', message);
1332}
1333```
1334
1335### bundleManager.getAppCloneIdentity<sup>14+</sup>
1336
1337getAppCloneIdentity(uid: number): Promise\<AppCloneIdentity>;
1338
1339根据uid查询分身应用的bundleName和appIndex。使用Promise异步回调。
1340
1341**需要权限:** ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
1342
1343**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1344
1345**参数:**
1346
1347| 参数名     | 类型   | 必填 | 说明                       |
1348| ---------- | ------ | ---- | ---------------------------|
1349|    uid     | number |  是  |     表示应用程序的UID。      |
1350
1351**返回值:**
1352
1353| 类型                                                        | 说明                        |
1354| ----------------------------------------------------------- | --------------------------- |
1355| Promise\<AppCloneIdentity> | 以Promise方式返回\<AppCloneIdentity>。 |
1356
1357**错误码:**
1358
1359以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[ohos.bundle错误码](errorcode-bundle.md)。
1360
1361| 错误码ID | 错误信息                            |
1362| -------- | --------------------------------------|
1363| 201 | Permission denied. |
1364| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.|
1365| 17700021 | The uid is not found. |
1366
1367**示例:**
1368
1369```ts
1370import { bundleManager } from '@kit.AbilityKit';
1371import { BusinessError } from '@kit.BasicServicesKit';
1372import { hilog } from '@kit.PerformanceAnalysisKit';
1373let uid = 20010005;
1374
1375try {
1376    bundleManager.getAppCloneIdentity(uid).then((res) => {
1377        hilog.info(0x0000, 'testTag', 'getAppCloneIdentity res = %{public}s', JSON.stringify(res));
1378    }).catch((err: BusinessError) => {
1379        hilog.error(0x0000, 'testTag', 'getAppCloneIdentity failed. Cause: %{public}s', err.message);
1380    });
1381} catch (err) {
1382    let message = (err as BusinessError).message;
1383    hilog.error(0x0000, 'testTag', 'getAppCloneIdentity failed. Cause: %{public}s', message);
1384}
1385```
1386
1387### ApplicationInfo
1388
1389type ApplicationInfo = _ApplicationInfo
1390
1391应用程序信息。
1392
1393**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1394
1395**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1396
1397| 类型                                                         | 说明           |
1398| ------------------------------------------------------------ | -------------- |
1399| [_ApplicationInfo](js-apis-bundleManager-applicationInfo.md#applicationinfo-1) | 应用程序信息。 |
1400
1401### ModuleMetadata<sup>10+</sup>
1402
1403type ModuleMetadata = _ModuleMetadata
1404
1405模块的元数据信息。
1406
1407**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1408
1409**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1410
1411| 类型                                                         | 说明           |
1412| ------------------------------------------------------------ | -------------- |
1413| [_ModuleMetadata](js-apis-bundleManager-applicationInfo.md#ModuleMetadata10) | 模块的元数据信息。 |
1414
1415### Metadata
1416
1417type Metadata = _Metadata
1418
1419元数据信息。
1420
1421**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1422
1423**系统能力**: SystemCapability.BundleManager.BundleFramework.Core
1424
1425| 类型                                                         | 说明           |
1426| ------------------------------------------------------------ | -------------- |
1427| [_Metadata](js-apis-bundleManager-metadata.md#metadata) | 元数据信息。 |
1428
1429### BundleInfo
1430
1431type BundleInfo = _BundleInfo.BundleInfo
1432
1433应用包信息。
1434
1435**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1436
1437**系统能力**: SystemCapability.BundleManager.BundleFramework.Core
1438
1439| 类型                                                         | 说明           |
1440| ------------------------------------------------------------ | -------------- |
1441| [_BundleInfo.BundleInfo](js-apis-bundleManager-bundleInfo.md#bundleinfo) | 应用包信息。 |
1442
1443
1444### UsedScene
1445
1446type UsedScene = _BundleInfo.UsedScene
1447
1448权限使用的场景和时机。
1449
1450**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1451
1452**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1453
1454| 类型                                                         | 说明           |
1455| ------------------------------------------------------------ | -------------- |
1456| [_BundleInfo.UsedScene](js-apis-bundleManager-bundleInfo.md#usedscene) | 权限使用的场景和时机。 |
1457
1458### ReqPermissionDetail
1459
1460type ReqPermissionDetail = _BundleInfo.ReqPermissionDetail
1461
1462应用运行时需向系统申请的权限集合的详细信息。
1463
1464**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1465
1466**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1467
1468| 类型                                                         | 说明           |
1469| ------------------------------------------------------------ | -------------- |
1470| [_BundleInfo.ReqPermissionDetail](js-apis-bundleManager-bundleInfo.md#reqpermissiondetail) | 应用运行时需向系统申请的权限集合的详细信息。 |
1471
1472### SignatureInfo
1473
1474type SignatureInfo = _BundleInfo.SignatureInfo
1475
1476应用包的签名信息。
1477
1478**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1479
1480**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1481
1482| 类型                                                         | 说明           |
1483| ------------------------------------------------------------ | -------------- |
1484| [_BundleInfo.SignatureInfo](js-apis-bundleManager-bundleInfo.md#signatureinfo) | 应用包的签名信息。 |
1485
1486### HapModuleInfo
1487
1488type HapModuleInfo = _HapModuleInfo.HapModuleInfo
1489
1490HAP信息。
1491
1492**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1493
1494**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1495
1496| 类型                                                         | 说明           |
1497| ------------------------------------------------------------ | -------------- |
1498| [_HapModuleInfo.HapModuleInfo](js-apis-bundleManager-hapModuleInfo.md#hapmoduleinfo-1) | HAP信息。 |
1499
1500### PreloadItem
1501
1502type PreloadItem = _HapModuleInfo.PreloadItem
1503
1504原子化服务中模块的预加载模块信息。
1505
1506**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1507
1508**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1509
1510| 类型                                                         | 说明           |
1511| ------------------------------------------------------------ | -------------- |
1512| [_HapModuleInfo.PreloadItem](js-apis-bundleManager-hapModuleInfo.md#preloaditem) | 原子化服务中模块的预加载模块信息。 |
1513
1514### Dependency
1515
1516type Dependency = _HapModuleInfo.Dependency
1517
1518模块所依赖的动态共享库信息。
1519
1520**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1521
1522**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1523
1524| 类型                                                         | 说明           |
1525| ------------------------------------------------------------ | -------------- |
1526| [_HapModuleInfo.Dependency](js-apis-bundleManager-hapModuleInfo.md#dependency) | 模块所依赖的动态共享库信息。 |
1527
1528### RouterItem<sup>12+</sup>
1529
1530type RouterItem = _HapModuleInfo.RouterItem
1531
1532模块配置的路由表信息。
1533
1534**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
1535
1536**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1537
1538| 类型                                                         | 说明           |
1539| ------------------------------------------------------------ | -------------- |
1540| [_HapModuleInfo.RouterItem](js-apis-bundleManager-hapModuleInfo.md#routeritem12) | 模块配置的路由表信息。 |
1541
1542### DataItem<sup>12+</sup>
1543
1544type DataItem = _HapModuleInfo.DataItem
1545
1546模块配置的路由表中的自定义数据。
1547
1548**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
1549
1550**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1551
1552| 类型                                                         | 说明           |
1553| ------------------------------------------------------------ | -------------- |
1554| [_HapModuleInfo.DataItem](js-apis-bundleManager-hapModuleInfo.md#dataitem12) | 模块配置的路由表中的自定义数据。 |
1555
1556### AbilityInfo
1557
1558type AbilityInfo = _AbilityInfo.AbilityInfo
1559
1560Ability信息。
1561
1562**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1563
1564**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1565
1566| 类型                                                         | 说明           |
1567| ------------------------------------------------------------ | -------------- |
1568| [_AbilityInfo.AbilityInfo](js-apis-bundleManager-abilityInfo.md#abilityinfo-1) |Ability信息。 |
1569
1570### WindowSize
1571
1572type WindowSize = _AbilityInfo.WindowSize
1573
1574窗口尺寸。
1575
1576**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1577
1578**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1579
1580| 类型                                                         | 说明           |
1581| ------------------------------------------------------------ | -------------- |
1582| [_AbilityInfo.WindowSize](js-apis-bundleManager-abilityInfo.md#windowsize) |窗口尺寸。 |
1583
1584
1585### ExtensionAbilityInfo
1586
1587type ExtensionAbilityInfo = _ExtensionAbilityInfo.ExtensionAbilityInfo
1588
1589ExtensionAbility信息。
1590
1591**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1592
1593**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1594
1595| 类型                                                         | 说明           |
1596| ------------------------------------------------------------ | -------------- |
1597| [_ExtensionAbilityInfo.ExtensionAbilityInfo](js-apis-bundleManager-extensionAbilityInfo.md#extensionabilityinfo-1) |ExtensionAbility信息。 |
1598
1599### ElementName
1600
1601type ElementName = _ElementName
1602
1603ElementName信息。
1604
1605**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
1606
1607**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1608
1609| 类型                                                         | 说明           |
1610| ------------------------------------------------------------ | -------------- |
1611| [_ElementName](js-apis-bundleManager-elementName.md#elementname-1) |ElementName信息。 |
1612
1613### Skill<sup>12+</sup>
1614
1615type Skill = _Skill.Skill
1616
1617skill信息。
1618
1619**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
1620
1621**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1622
1623| 类型                                                         | 说明           |
1624| ------------------------------------------------------------ | -------------- |
1625| [_Skill.Skill](js-apis-bundleManager-skill.md#skill-1) |skill信息。 |
1626
1627### SkillUrl<sup>12+</sup>
1628
1629type SkillUrl = _Skill.SkillUri
1630
1631SkillUri信息。
1632
1633**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
1634
1635**系统能力:** SystemCapability.BundleManager.BundleFramework.Core
1636
1637| 类型                                                         | 说明           |
1638| ------------------------------------------------------------ | -------------- |
1639| [_Skill.SkillUri](js-apis-bundleManager-skill.md#skilluri) |SkillUri信息。 |
1640