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.Core。 29 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.Core。 50 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.Core。 85 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.Core。 98 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.Core。 112 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.Core。 126 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.Core。 138 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.Core。 200 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