1e41f4b71Sopenharmony_ci# @ohos.bundle (Bundle模块)(系统接口) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci本模块提供应用信息查询能力,支持[包信息](js-apis-bundle-BundleInfo.md)、[应用信息](js-apis-bundle-ApplicationInfo.md)、[Ability组件信息](js-apis-bundle-AbilityInfo.md)等信息的查询,以及应用禁用状态的查询、设置等。 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **说明:** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8e41f4b71Sopenharmony_ci> 9e41f4b71Sopenharmony_ci> 从API Version 9开始,该模块不再维护,系统接口建议使用[`@ohos.bundle.bundleManager`](js-apis-bundleManager-sys.md)替代。 10e41f4b71Sopenharmony_ci> 11e41f4b71Sopenharmony_ci> 当前页面仅包含本模块的系统接口,其他公开接口参见[`@ohos.bundle`](js-apis-Bundle.md)。 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci## 导入模块 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ci```ts 16e41f4b71Sopenharmony_ciimport bundle from '@ohos.bundle'; 17e41f4b71Sopenharmony_ci``` 18e41f4b71Sopenharmony_ci 19e41f4b71Sopenharmony_ci## 权限列表 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci| 权限 | 权限等级 | 描述 | 22e41f4b71Sopenharmony_ci|--------------------------------------------|--------------|---------------| 23e41f4b71Sopenharmony_ci| ohos.permission.CHANGE_ABILITY_ENABLED_STATE | system_basic | 设置禁用使能所需的权限。 | 24e41f4b71Sopenharmony_ci| ohos.permission.GET_BUNDLE_INFO | normal | 查询指定应用信息。 | 25e41f4b71Sopenharmony_ci| ohos.permission.GET_BUNDLE_INFO_PRIVILEGED | system_basic | 可查询所有应用信息。 | 26e41f4b71Sopenharmony_ci| ohos.permission.INSTALL_BUNDLE | system_core | 可安装、卸载应用。 | 27e41f4b71Sopenharmony_ci| ohos.permission.REMOVE_CACHE_FILES | system_basic | 清理应用缓存。 | 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci权限等级参考[权限APL等级说明](../../security/AccessToken/app-permission-mgmt-overview.md#权限机制中的基本概念)。 30e41f4b71Sopenharmony_ci 31e41f4b71Sopenharmony_ci## bundle.getBundleInstaller<sup>deprecated<sup> 32e41f4b71Sopenharmony_ci 33e41f4b71Sopenharmony_ci> 从API version 9开始不再维护,建议使用[installer.getBundleInstaller](js-apis-installer-sys.md#bundleinstallergetbundleinstaller)替代。 34e41f4b71Sopenharmony_ci 35e41f4b71Sopenharmony_cigetBundleInstaller(): Promise<BundleInstaller> 36e41f4b71Sopenharmony_ci 37e41f4b71Sopenharmony_ci获取用于安装包的接口,使用Promise异步回调,返回安装接口对象。 38e41f4b71Sopenharmony_ci 39e41f4b71Sopenharmony_ci**需要权限:** 40e41f4b71Sopenharmony_ci 41e41f4b71Sopenharmony_ciohos.permission.INSTALL_BUNDLE 42e41f4b71Sopenharmony_ci 43e41f4b71Sopenharmony_ci**系统能力:** 44e41f4b71Sopenharmony_ci 45e41f4b71Sopenharmony_ciSystemCapability.BundleManager.BundleFramework 46e41f4b71Sopenharmony_ci 47e41f4b71Sopenharmony_ci**系统接口:** 48e41f4b71Sopenharmony_ci 49e41f4b71Sopenharmony_ci此接口为系统接口。 50e41f4b71Sopenharmony_ci 51e41f4b71Sopenharmony_ci**返回值:** 52e41f4b71Sopenharmony_ci 53e41f4b71Sopenharmony_ci| 类型 | 说明 | 54e41f4b71Sopenharmony_ci| ------------------------------------------------------------ | -------------------------------------------- | 55e41f4b71Sopenharmony_ci| Promise<[BundleInstaller](js-apis-bundle-BundleInstaller-sys.md)> | Promise对象,返回安装接口对象。 | 56e41f4b71Sopenharmony_ci 57e41f4b71Sopenharmony_ci**示例:** 58e41f4b71Sopenharmony_ci 59e41f4b71Sopenharmony_ci```ts 60e41f4b71Sopenharmony_ciimport bundle from '@ohos.bundle'; 61e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 62e41f4b71Sopenharmony_ci 63e41f4b71Sopenharmony_cibundle.getBundleInstaller().then((data) => { 64e41f4b71Sopenharmony_ci console.info('getBundleInstaller successfully.'); 65e41f4b71Sopenharmony_ci}).catch((error: BusinessError) => { 66e41f4b71Sopenharmony_ci console.error('getBundleInstaller failed.'); 67e41f4b71Sopenharmony_ci}); 68e41f4b71Sopenharmony_ci``` 69e41f4b71Sopenharmony_ci 70e41f4b71Sopenharmony_ci## bundle.getBundleInstaller<sup>deprecated<sup> 71e41f4b71Sopenharmony_ci 72e41f4b71Sopenharmony_ci> 从API version 9开始不再维护,建议使用[installer.getBundleInstaller](js-apis-installer-sys.md#bundleinstallergetbundleinstaller)替代。 73e41f4b71Sopenharmony_ci 74e41f4b71Sopenharmony_cigetBundleInstaller(callback: AsyncCallback<BundleInstaller>): void 75e41f4b71Sopenharmony_ci 76e41f4b71Sopenharmony_ci获取用于安装包的接口,使用callback异步回调。 77e41f4b71Sopenharmony_ci 78e41f4b71Sopenharmony_ci**需要权限:** 79e41f4b71Sopenharmony_ci 80e41f4b71Sopenharmony_ciohos.permission.INSTALL_BUNDLE 81e41f4b71Sopenharmony_ci 82e41f4b71Sopenharmony_ci**系统能力:** 83e41f4b71Sopenharmony_ci 84e41f4b71Sopenharmony_ciSystemCapability.BundleManager.BundleFramework 85e41f4b71Sopenharmony_ci 86e41f4b71Sopenharmony_ci**系统接口:** 87e41f4b71Sopenharmony_ci 88e41f4b71Sopenharmony_ci此接口为系统接口。 89e41f4b71Sopenharmony_ci 90e41f4b71Sopenharmony_ci**参数:** 91e41f4b71Sopenharmony_ci 92e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 93e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------ | ---- | ---------------- | 94e41f4b71Sopenharmony_ci| callback | AsyncCallback<[BundleInstaller](js-apis-bundle-BundleInstaller-sys.md)> | 是 | 回调函数,返回安装接口对象。 | 95e41f4b71Sopenharmony_ci 96e41f4b71Sopenharmony_ci**示例:** 97e41f4b71Sopenharmony_ci 98e41f4b71Sopenharmony_ci```ts 99e41f4b71Sopenharmony_ciimport bundle from '@ohos.bundle'; 100e41f4b71Sopenharmony_ci 101e41f4b71Sopenharmony_cibundle.getBundleInstaller((err, data) => { 102e41f4b71Sopenharmony_ci if (err.code == 0) { 103e41f4b71Sopenharmony_ci console.error('getBundleInstaller failed.'); 104e41f4b71Sopenharmony_ci } else { 105e41f4b71Sopenharmony_ci console.info('getBundleInstaller successfully'); 106e41f4b71Sopenharmony_ci } 107e41f4b71Sopenharmony_ci}); 108e41f4b71Sopenharmony_ci``` 109e41f4b71Sopenharmony_ci## bundle.cleanBundleCacheFiles<sup>8+</sup> <sup>deprecated<sup> 110e41f4b71Sopenharmony_ci 111e41f4b71Sopenharmony_ci> 从API version 9开始不再维护,建议使用[bundleManager.cleanBundleCacheFiles](js-apis-bundleManager-sys.md#bundlemanagercleanbundlecachefiles)替代。 112e41f4b71Sopenharmony_ci 113e41f4b71Sopenharmony_cicleanBundleCacheFiles(bundleName: string, callback: AsyncCallback<void>): void 114e41f4b71Sopenharmony_ci 115e41f4b71Sopenharmony_ci清除指定应用程序的缓存数据,使用callback异步回调。 116e41f4b71Sopenharmony_ci 117e41f4b71Sopenharmony_ci**需要权限:** 118e41f4b71Sopenharmony_ci 119e41f4b71Sopenharmony_ciohos.permission.REMOVE_CACHE_FILES 120e41f4b71Sopenharmony_ci 121e41f4b71Sopenharmony_ci**系统能力:** 122e41f4b71Sopenharmony_ci 123e41f4b71Sopenharmony_ciSystemCapability.BundleManager.BundleFramework 124e41f4b71Sopenharmony_ci 125e41f4b71Sopenharmony_ci**系统接口:** 126e41f4b71Sopenharmony_ci 127e41f4b71Sopenharmony_ci此接口为系统接口。 128e41f4b71Sopenharmony_ci 129e41f4b71Sopenharmony_ci**参数:** 130e41f4b71Sopenharmony_ci 131e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 132e41f4b71Sopenharmony_ci| ---------- | ------------------- | ---- | ------------------------------------- | 133e41f4b71Sopenharmony_ci| bundleName | string | 是 | 指示要清除其缓存数据的应用Bundle名称。 | 134e41f4b71Sopenharmony_ci| callback | AsyncCallback\<void> | 是 | 回调函数。 | 135e41f4b71Sopenharmony_ci 136e41f4b71Sopenharmony_ci**示例:** 137e41f4b71Sopenharmony_ci 138e41f4b71Sopenharmony_ci```ts 139e41f4b71Sopenharmony_ciimport bundle from '@ohos.bundle'; 140e41f4b71Sopenharmony_ci 141e41f4b71Sopenharmony_cilet bundleName: string = "com.example.myapplication"; 142e41f4b71Sopenharmony_ci 143e41f4b71Sopenharmony_cibundle.cleanBundleCacheFiles(bundleName, err => { 144e41f4b71Sopenharmony_ci if (err) { 145e41f4b71Sopenharmony_ci console.error('cleanBundleCacheFiles failed.'); 146e41f4b71Sopenharmony_ci } else { 147e41f4b71Sopenharmony_ci console.info('cleanBundleCacheFiles successfully.'); 148e41f4b71Sopenharmony_ci } 149e41f4b71Sopenharmony_ci}); 150e41f4b71Sopenharmony_ci``` 151e41f4b71Sopenharmony_ci 152e41f4b71Sopenharmony_ci## bundle.cleanBundleCacheFiles<sup>8+</sup> <sup>deprecated<sup> 153e41f4b71Sopenharmony_ci 154e41f4b71Sopenharmony_ci> 从API version 9开始不再维护,建议使用[bundleManager.cleanBundleCacheFiles](js-apis-bundleManager-sys.md#bundlemanagercleanbundlecachefiles)替代。 155e41f4b71Sopenharmony_ci 156e41f4b71Sopenharmony_cicleanBundleCacheFiles(bundleName: string): Promise<void> 157e41f4b71Sopenharmony_ci 158e41f4b71Sopenharmony_ci清除指定应用程序的缓存数据,使用Promise异步回调。 159e41f4b71Sopenharmony_ci 160e41f4b71Sopenharmony_ci**需要权限:** 161e41f4b71Sopenharmony_ci 162e41f4b71Sopenharmony_ciohos.permission.REMOVE_CACHE_FILES 163e41f4b71Sopenharmony_ci 164e41f4b71Sopenharmony_ci**系统能力:** 165e41f4b71Sopenharmony_ci 166e41f4b71Sopenharmony_ciSystemCapability.BundleManager.BundleFramework 167e41f4b71Sopenharmony_ci 168e41f4b71Sopenharmony_ci**系统接口:** 169e41f4b71Sopenharmony_ci 170e41f4b71Sopenharmony_ci此接口为系统接口。 171e41f4b71Sopenharmony_ci 172e41f4b71Sopenharmony_ci**参数:** 173e41f4b71Sopenharmony_ci 174e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 175e41f4b71Sopenharmony_ci| ---------- | ------ | ---- | ------------------------------------- | 176e41f4b71Sopenharmony_ci| bundleName | string | 是 | 指示要清除其缓存数据的应用Bundle名称。 | 177e41f4b71Sopenharmony_ci 178e41f4b71Sopenharmony_ci**返回值:** 179e41f4b71Sopenharmony_ci 180e41f4b71Sopenharmony_ci| 类型 | 说明 | 181e41f4b71Sopenharmony_ci| ------------- | ------------------------------------ | 182e41f4b71Sopenharmony_ci| Promise\<void> | Promise对象,无返回结果的Promise对象。 | 183e41f4b71Sopenharmony_ci 184e41f4b71Sopenharmony_ci**示例:** 185e41f4b71Sopenharmony_ci 186e41f4b71Sopenharmony_ci```ts 187e41f4b71Sopenharmony_ciimport bundle from '@ohos.bundle'; 188e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 189e41f4b71Sopenharmony_ci 190e41f4b71Sopenharmony_cilet bundleName: string = "com.example.myapplication"; 191e41f4b71Sopenharmony_ci 192e41f4b71Sopenharmony_cibundle.cleanBundleCacheFiles(bundleName).then(() => { 193e41f4b71Sopenharmony_ci console.info('cleanBundleCacheFiles successfully.'); 194e41f4b71Sopenharmony_ci}).catch((error: BusinessError) => { 195e41f4b71Sopenharmony_ci console.error('cleanBundleCacheFiles failed.'); 196e41f4b71Sopenharmony_ci}); 197e41f4b71Sopenharmony_ci``` 198e41f4b71Sopenharmony_ci 199e41f4b71Sopenharmony_ci## bundle.setApplicationEnabled<sup>8+</sup> <sup>deprecated<sup> 200e41f4b71Sopenharmony_ci 201e41f4b71Sopenharmony_ci> 从API version 9开始不再维护,建议使用[bundleManager.setApplicationEnabled](js-apis-bundleManager-sys.md#bundlemanagersetapplicationenabled)替代。 202e41f4b71Sopenharmony_ci 203e41f4b71Sopenharmony_cisetApplicationEnabled(bundleName: string, isEnable: boolean, callback: AsyncCallback<void>): void 204e41f4b71Sopenharmony_ci 205e41f4b71Sopenharmony_ci设置是否启用指定的应用程序,使用callback异步回调。 206e41f4b71Sopenharmony_ci 207e41f4b71Sopenharmony_ci**需要权限:** 208e41f4b71Sopenharmony_ci 209e41f4b71Sopenharmony_ciohos.permission.CHANGE_ABILITY_ENABLED_STATE 210e41f4b71Sopenharmony_ci 211e41f4b71Sopenharmony_ci**系统能力:** 212e41f4b71Sopenharmony_ci 213e41f4b71Sopenharmony_ciSystemCapability.BundleManager.BundleFramework 214e41f4b71Sopenharmony_ci 215e41f4b71Sopenharmony_ci**系统接口:** 216e41f4b71Sopenharmony_ci 217e41f4b71Sopenharmony_ci此接口为系统接口。 218e41f4b71Sopenharmony_ci 219e41f4b71Sopenharmony_ci**参数:** 220e41f4b71Sopenharmony_ci 221e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 222e41f4b71Sopenharmony_ci| ---------- | ------------------- | ---- |--------------------------------| 223e41f4b71Sopenharmony_ci| bundleName | string | 是 | 指示需要启用或禁用的应用Bundle名称。 | 224e41f4b71Sopenharmony_ci| isEnable | boolean | 是 | 指定是否启用应用程序。true表示启用,false表示禁用。 | 225e41f4b71Sopenharmony_ci| callback | AsyncCallback\<void> | 是 | 回调函数。 | 226e41f4b71Sopenharmony_ci 227e41f4b71Sopenharmony_ci**示例:** 228e41f4b71Sopenharmony_ci 229e41f4b71Sopenharmony_ci```ts 230e41f4b71Sopenharmony_ciimport bundle from '@ohos.bundle'; 231e41f4b71Sopenharmony_ci 232e41f4b71Sopenharmony_cilet bundleName: string = "com.example.myapplication"; 233e41f4b71Sopenharmony_ci 234e41f4b71Sopenharmony_cibundle.setApplicationEnabled(bundleName, false, err => { 235e41f4b71Sopenharmony_ci if (err) { 236e41f4b71Sopenharmony_ci console.error('setApplicationEnabled failed.'); 237e41f4b71Sopenharmony_ci } else { 238e41f4b71Sopenharmony_ci console.info('setApplicationEnabled successfully.'); 239e41f4b71Sopenharmony_ci } 240e41f4b71Sopenharmony_ci}); 241e41f4b71Sopenharmony_ci``` 242e41f4b71Sopenharmony_ci 243e41f4b71Sopenharmony_ci## bundle.setApplicationEnabled<sup>8+</sup> <sup>deprecated<sup> 244e41f4b71Sopenharmony_ci 245e41f4b71Sopenharmony_ci> 从API version 9开始不再维护,建议使用[bundleManager.setApplicationEnabled](js-apis-bundleManager-sys.md#bundlemanagersetapplicationenabled)替代。 246e41f4b71Sopenharmony_ci 247e41f4b71Sopenharmony_cisetApplicationEnabled(bundleName: string, isEnable: boolean): Promise<void> 248e41f4b71Sopenharmony_ci 249e41f4b71Sopenharmony_ci设置是否启用指定的应用程序,使用Promise异步回调。 250e41f4b71Sopenharmony_ci 251e41f4b71Sopenharmony_ci**需要权限:** 252e41f4b71Sopenharmony_ci 253e41f4b71Sopenharmony_ciohos.permission.CHANGE_ABILITY_ENABLED_STATE 254e41f4b71Sopenharmony_ci 255e41f4b71Sopenharmony_ci**系统能力:** 256e41f4b71Sopenharmony_ci 257e41f4b71Sopenharmony_ciSystemCapability.BundleManager.BundleFramework 258e41f4b71Sopenharmony_ci 259e41f4b71Sopenharmony_ci**系统接口:** 260e41f4b71Sopenharmony_ci 261e41f4b71Sopenharmony_ci此接口为系统接口。 262e41f4b71Sopenharmony_ci 263e41f4b71Sopenharmony_ci**参数:** 264e41f4b71Sopenharmony_ci 265e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 266e41f4b71Sopenharmony_ci| ---------- | ------- | ---- | ----------------------------------------------- | 267e41f4b71Sopenharmony_ci| bundleName | string | 是 | 指示需要启用或禁用的应用Bundle名称。 | 268e41f4b71Sopenharmony_ci| isEnable | boolean | 是 | 指定是否启用应用程序。true表示启用,false禁用。 | 269e41f4b71Sopenharmony_ci 270e41f4b71Sopenharmony_ci**返回值:** 271e41f4b71Sopenharmony_ci 272e41f4b71Sopenharmony_ci| 类型 | 说明 | 273e41f4b71Sopenharmony_ci| ------------- | ------------------------------------ | 274e41f4b71Sopenharmony_ci| Promise\<void> | Promise对象,无返回结果的Promise对象。 | 275e41f4b71Sopenharmony_ci 276e41f4b71Sopenharmony_ci**示例:** 277e41f4b71Sopenharmony_ci 278e41f4b71Sopenharmony_ci```ts 279e41f4b71Sopenharmony_ciimport bundle from '@ohos.bundle'; 280e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 281e41f4b71Sopenharmony_ci 282e41f4b71Sopenharmony_cilet bundleName: string = "com.example.myapplication"; 283e41f4b71Sopenharmony_ci 284e41f4b71Sopenharmony_cibundle.setApplicationEnabled(bundleName, false).then(() => { 285e41f4b71Sopenharmony_ci console.info('setApplicationEnabled successfully.'); 286e41f4b71Sopenharmony_ci}).catch((error: BusinessError) => { 287e41f4b71Sopenharmony_ci console.error('setApplicationEnabled failed.'); 288e41f4b71Sopenharmony_ci}); 289e41f4b71Sopenharmony_ci``` 290e41f4b71Sopenharmony_ci 291e41f4b71Sopenharmony_ci## bundle.setAbilityEnabled<sup>8+</sup> <sup>deprecated<sup> 292e41f4b71Sopenharmony_ci 293e41f4b71Sopenharmony_ci> 从API version 9开始不再维护,建议使用[bundleManager.setAbilityEnabled](js-apis-bundleManager-sys.md#bundlemanagersetabilityenabled)替代。 294e41f4b71Sopenharmony_ci 295e41f4b71Sopenharmony_cisetAbilityEnabled(info: AbilityInfo, isEnable: boolean, callback: AsyncCallback<void>): void 296e41f4b71Sopenharmony_ci 297e41f4b71Sopenharmony_ci设置是否启用指定的Ability组件,使用callback异步回调。 298e41f4b71Sopenharmony_ci 299e41f4b71Sopenharmony_ci**需要权限:** 300e41f4b71Sopenharmony_ci 301e41f4b71Sopenharmony_ciohos.permission.CHANGE_ABILITY_ENABLED_STATE 302e41f4b71Sopenharmony_ci 303e41f4b71Sopenharmony_ci**系统能力:** 304e41f4b71Sopenharmony_ci 305e41f4b71Sopenharmony_ciSystemCapability.BundleManager.BundleFramework 306e41f4b71Sopenharmony_ci 307e41f4b71Sopenharmony_ci**系统接口:** 308e41f4b71Sopenharmony_ci 309e41f4b71Sopenharmony_ci此接口为系统接口。 310e41f4b71Sopenharmony_ci 311e41f4b71Sopenharmony_ci**参数:** 312e41f4b71Sopenharmony_ci 313e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 314e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- | ---- | ----------------------------------------------- | 315e41f4b71Sopenharmony_ci| info | [AbilityInfo](js-apis-bundle-AbilityInfo.md) | 是 | Ability信息,指示需要设置启用状态的Ability。 | 316e41f4b71Sopenharmony_ci| isEnable | boolean | 是 | 指定是否启用应用程序。true表示启用,false禁用。 | 317e41f4b71Sopenharmony_ci| callback | AsyncCallback\<void> | 是 | 为返回操作结果而调用的回调。 | 318e41f4b71Sopenharmony_ci 319e41f4b71Sopenharmony_ci## bundle.setAbilityEnabled<sup>8+</sup> <sup>deprecated<sup> 320e41f4b71Sopenharmony_ci 321e41f4b71Sopenharmony_ci> 从API version 9开始不再维护,建议使用[bundleManager.setAbilityEnabled](js-apis-bundleManager-sys.md#bundlemanagersetabilityenabled)替代。 322e41f4b71Sopenharmony_ci 323e41f4b71Sopenharmony_cisetAbilityEnabled(info: AbilityInfo, isEnable: boolean): Promise<void> 324e41f4b71Sopenharmony_ci 325e41f4b71Sopenharmony_ci设置是否启用指定的Ability组件,使用Promise异步回调。 326e41f4b71Sopenharmony_ci 327e41f4b71Sopenharmony_ci**需要权限:** 328e41f4b71Sopenharmony_ci 329e41f4b71Sopenharmony_ciohos.permission.CHANGE_ABILITY_ENABLED_STATE 330e41f4b71Sopenharmony_ci 331e41f4b71Sopenharmony_ci**系统能力:** 332e41f4b71Sopenharmony_ci 333e41f4b71Sopenharmony_ciSystemCapability.BundleManager.BundleFramework 334e41f4b71Sopenharmony_ci 335e41f4b71Sopenharmony_ci**系统接口:** 336e41f4b71Sopenharmony_ci 337e41f4b71Sopenharmony_ci此接口为系统接口。 338e41f4b71Sopenharmony_ci 339e41f4b71Sopenharmony_ci**参数:** 340e41f4b71Sopenharmony_ci 341e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 342e41f4b71Sopenharmony_ci| -------- | -------------------------------------------- | ---- | ----------------------------------------------- | 343e41f4b71Sopenharmony_ci| info | [AbilityInfo](js-apis-bundle-AbilityInfo.md) | 是 | Ability信息,指示需要设置启用状态的Ability。 | 344e41f4b71Sopenharmony_ci| isEnable | boolean | 是 | 指定是否启用应用程序。true表示启用,false禁用。 | 345e41f4b71Sopenharmony_ci 346e41f4b71Sopenharmony_ci**返回值:** 347e41f4b71Sopenharmony_ci 348e41f4b71Sopenharmony_ci| 类型 | 说明 | 349e41f4b71Sopenharmony_ci| ------------- | ------------------------------------ | 350e41f4b71Sopenharmony_ci| Promise\<void> | Promise对象,无返回结果的Promise对象。 | 351e41f4b71Sopenharmony_ci 352e41f4b71Sopenharmony_ci**示例:** 353e41f4b71Sopenharmony_ci 354e41f4b71Sopenharmony_ci```ts 355e41f4b71Sopenharmony_ciimport bundle from '@ohos.bundle'; 356e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 357e41f4b71Sopenharmony_ci 358e41f4b71Sopenharmony_cilet bundleName: string = "com.example.myapplication"; 359e41f4b71Sopenharmony_cilet abilityName: string = "EntryAbility"; 360e41f4b71Sopenharmony_ci 361e41f4b71Sopenharmony_cibundle.getAbilityInfo(bundleName, abilityName).then((abilityInfo) => { 362e41f4b71Sopenharmony_ci console.info('getAbilityInfo successfully. Data: ' + JSON.stringify(abilityInfo)); 363e41f4b71Sopenharmony_ci 364e41f4b71Sopenharmony_ci bundle.setAbilityEnabled(abilityInfo, false).then(data => { 365e41f4b71Sopenharmony_ci console.info('setAbilityEnabled successfully.'); 366e41f4b71Sopenharmony_ci }).catch((error: BusinessError) => { 367e41f4b71Sopenharmony_ci console.error('setAbilityEnabled failed:' + JSON.stringify(error)); 368e41f4b71Sopenharmony_ci }) 369e41f4b71Sopenharmony_ci}).catch((error: BusinessError) => { 370e41f4b71Sopenharmony_ci console.error('getAbilityInfo failed. Cause: ' + JSON.stringify(error)); 371e41f4b71Sopenharmony_ci}); 372e41f4b71Sopenharmony_ci``` 373e41f4b71Sopenharmony_ci## bundle.getPermissionDef<sup>8+</sup> <sup>deprecated<sup> 374e41f4b71Sopenharmony_ci 375e41f4b71Sopenharmony_ci> 从API version 9开始不再维护,建议使用[bundleManager.getPermissionDef](js-apis-bundleManager-sys.md#bundlemanagergetpermissiondef)替代。 376e41f4b71Sopenharmony_ci 377e41f4b71Sopenharmony_cigetPermissionDef(permissionName: string, callback: AsyncCallback<PermissionDef>): void 378e41f4b71Sopenharmony_ci 379e41f4b71Sopenharmony_ci按权限名称获取权限的详细信息,使用callback异步回调。 380e41f4b71Sopenharmony_ci 381e41f4b71Sopenharmony_ci**需要权限:** 382e41f4b71Sopenharmony_ci 383e41f4b71Sopenharmony_ciohos.permission.GET_BUNDLE_INFO_PRIVILEGED 384e41f4b71Sopenharmony_ci 385e41f4b71Sopenharmony_ci**系统能力:** 386e41f4b71Sopenharmony_ci 387e41f4b71Sopenharmony_ciSystemCapability.BundleManager.BundleFramework 388e41f4b71Sopenharmony_ci 389e41f4b71Sopenharmony_ci**系统接口:** 390e41f4b71Sopenharmony_ci 391e41f4b71Sopenharmony_ci此接口为系统接口。 392e41f4b71Sopenharmony_ci 393e41f4b71Sopenharmony_ci**参数:** 394e41f4b71Sopenharmony_ci 395e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 396e41f4b71Sopenharmony_ci| -------------- | ------------------------------------------------------------ | ---- | ------------------------------------------------ | 397e41f4b71Sopenharmony_ci| permissionName | string | 是 | 需要查询的权限的名称。 | 398e41f4b71Sopenharmony_ci| callback | AsyncCallback<[PermissionDef](js-apis-bundle-PermissionDef-sys.md)> | 是 | 程序启动作为入参的回调函数,返回定义的权限信息。 | 399e41f4b71Sopenharmony_ci 400e41f4b71Sopenharmony_ci**示例:** 401e41f4b71Sopenharmony_ci 402e41f4b71Sopenharmony_ci```ts 403e41f4b71Sopenharmony_ciimport bundle from '@ohos.bundle'; 404e41f4b71Sopenharmony_ci 405e41f4b71Sopenharmony_cilet permission: string = "ohos.permission.GET_BUNDLE_INFO"; 406e41f4b71Sopenharmony_cibundle.getPermissionDef(permission, (err, data) => { 407e41f4b71Sopenharmony_ci if (err) { 408e41f4b71Sopenharmony_ci console.error('getPermissionDef failed:' + err.message); 409e41f4b71Sopenharmony_ci } else { 410e41f4b71Sopenharmony_ci console.info('getPermissionDef successfully:' + JSON.stringify(data)); 411e41f4b71Sopenharmony_ci } 412e41f4b71Sopenharmony_ci}); 413e41f4b71Sopenharmony_ci``` 414e41f4b71Sopenharmony_ci 415e41f4b71Sopenharmony_ci## bundle.getPermissionDef<sup>8+</sup> <sup>deprecated<sup> 416e41f4b71Sopenharmony_ci 417e41f4b71Sopenharmony_ci> 从API version 9开始不再维护,建议使用[bundleManager.getPermissionDef](js-apis-bundleManager-sys.md#bundlemanagergetpermissiondef)替代。 418e41f4b71Sopenharmony_ci 419e41f4b71Sopenharmony_cigetPermissionDef(permissionName: string): Promise<PermissionDef> 420e41f4b71Sopenharmony_ci 421e41f4b71Sopenharmony_ci按权限名称获取权限的详细信息,使用promise异步回调。。 422e41f4b71Sopenharmony_ci 423e41f4b71Sopenharmony_ci**需要权限:** 424e41f4b71Sopenharmony_ci 425e41f4b71Sopenharmony_ciohos.permission.GET_BUNDLE_INFO_PRIVILEGED 426e41f4b71Sopenharmony_ci 427e41f4b71Sopenharmony_ci**系统能力:** 428e41f4b71Sopenharmony_ci 429e41f4b71Sopenharmony_ciSystemCapability.BundleManager.BundleFramework 430e41f4b71Sopenharmony_ci 431e41f4b71Sopenharmony_ci**系统接口:** 432e41f4b71Sopenharmony_ci 433e41f4b71Sopenharmony_ci此接口为系统接口。 434e41f4b71Sopenharmony_ci 435e41f4b71Sopenharmony_ci**参数:** 436e41f4b71Sopenharmony_ci 437e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 438e41f4b71Sopenharmony_ci| -------------- | ------ | ---- | ---------------- | 439e41f4b71Sopenharmony_ci| permissionName | string | 是 | 需要查询的权限的名称。 | 440e41f4b71Sopenharmony_ci 441e41f4b71Sopenharmony_ci**返回值:** 442e41f4b71Sopenharmony_ci 443e41f4b71Sopenharmony_ci| 类型 | 说明 | 444e41f4b71Sopenharmony_ci| ------------------------------------------------------ | ------------------------------------------------------ | 445e41f4b71Sopenharmony_ci| Promise<[PermissionDef](js-apis-bundle-PermissionDef-sys.md)> | Promise对象,获取成功时返回权限详细信息。 | 446e41f4b71Sopenharmony_ci 447e41f4b71Sopenharmony_ci**示例:** 448e41f4b71Sopenharmony_ci 449e41f4b71Sopenharmony_ci```ts 450e41f4b71Sopenharmony_ciimport bundle from '@ohos.bundle'; 451e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 452e41f4b71Sopenharmony_ci 453e41f4b71Sopenharmony_cilet permissionName: string = "ohos.permission.GET_BUNDLE_INFO"; 454e41f4b71Sopenharmony_cibundle.getPermissionDef(permissionName).then((data) => { 455e41f4b71Sopenharmony_ci console.info('getPermissionDef successfully. Data: ' + JSON.stringify(data)); 456e41f4b71Sopenharmony_ci}).catch((error: BusinessError) => { 457e41f4b71Sopenharmony_ci console.error('getPermissionDef failed. Cause: ' + error.message); 458e41f4b71Sopenharmony_ci}); 459e41f4b71Sopenharmony_ci```