1# @ohos.bundle (Bundle模块) 2 3本模块提供应用信息查询能力,支持[包信息](js-apis-bundle-BundleInfo.md)、[应用信息](js-apis-bundle-ApplicationInfo.md)、[Ability组件信息](js-apis-bundle-AbilityInfo.md)等信息的查询,以及应用禁用状态的查询、设置等。 4 5> **说明:** 6> 7> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8## 导入模块 9 10```ts 11import bundle from '@ohos.bundle'; 12``` 13 14## 权限列表 15 16| 权限 | 权限等级 | 描述 | 17|--------------------------------------------|--------------|---------------| 18| ohos.permission.GET_BUNDLE_INFO | normal | 查询指定应用信息。 | 19| ohos.permission.GET_BUNDLE_INFO_PRIVILEGED | system_basic | 可查询所有应用信息。 | 20| ohos.permission.INSTALL_BUNDLE | system_core | 可安装、卸载应用。 | 21| ohos.permission.MANAGE_DISPOSED_APP_STATUS | system_core | 可设置和查询应用的处置状态。 | 22 23权限等级参考[权限等级说明](../../security/accesstoken-overview.md#权限等级说明)。 24 25## bundle.getApplicationInfo<sup>deprecated<sup> 26 27> 从API version 9开始不再维护,建议使用[bundleManager.getApplicationInfo](js-apis-bundleManager.md#bundlemanagergetapplicationinfo)替代。 28 29getApplicationInfo(bundleName: string, bundleFlags: number, userId?: number): Promise\<ApplicationInfo> 30 31以异步方法根据给定的包名获取ApplicationInfo。使用Promise异步回调。 32 33获取调用方自己的信息时不需要权限。 34 35**需要权限:** 36 37ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 38 39**系统能力:** 40 41SystemCapability.BundleManager.BundleFramework 42 43**参数:** 44 45| 参数名 | 类型 | 必填 | 说明 | 46| ----------- | ------ | ---- | ------------------------------------------------------------ | 47| bundleName | string | 是 | 要查询的应用程序包名称。 | 48| bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围请参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 | 49| userId | number | 否 | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 | 50 51**返回值:** 52 53| 类型 | 说明 | 54| ------------------------- | ------------------ | 55| Promise\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)> | Promise形式返回应用程序信息。 | 56 57**示例:** 58 59```ts 60let bundleName = "com.example.myapplication"; 61let bundleFlags = 0; 62let userId = 100; 63bundle.getApplicationInfo(bundleName, bundleFlags, userId) 64.then((data) => { 65 console.info('Operation successful. Data: ' + JSON.stringify(data)); 66}).catch((error) => { 67 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 68}) 69``` 70 71## bundle.getApplicationInfo<sup>deprecated<sup> 72 73> 从API version 9开始不再维护,建议使用[bundleManager.getApplicationInfo](js-apis-bundleManager.md#bundlemanagergetapplicationinfo)替代。 74 75getApplicationInfo(bundleName: string, bundleFlags: number, userId: number, callback: AsyncCallback\<ApplicationInfo>): void 76 77以异步方法根据给定的包名获取指定用户下的ApplicationInfo,使用callback形式返回结果。 78 79获取调用方自己的信息时不需要权限。 80 81**需要权限:** 82 83ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 84 85**系统能力:** 86 87SystemCapability.BundleManager.BundleFramework 88 89**参数:** 90 91| 参数名 | 类型 | 必填 | 说明 | 92| ----------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 93| bundleName | string | 是 | 要查询的应用程序包名称。 | 94| bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 | 95| userId | number | 是 | 用户ID。取值范围:大于等于0。 | 96| callback | AsyncCallback\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)> | 是 | 程序启动作为入参的回调函数,返回应用程序信息。 | 97 98**示例:** 99 100```ts 101let bundleName = "com.example.myapplication"; 102let bundleFlags = 0; 103let userId = 100; 104bundle.getApplicationInfo(bundleName, bundleFlags, userId, (err, data) => { 105 if (err) { 106 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 107 return; 108 } 109 console.info('Operation successful. Data:' + JSON.stringify(data)); 110 }) 111``` 112 113## bundle.getApplicationInfo<sup>deprecated<sup> 114 115> 从API version 9开始不再维护,建议使用[bundleManager.getApplicationInfo](js-apis-bundleManager.md#bundlemanagergetapplicationinfo)替代。 116 117 118getApplicationInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback\<ApplicationInfo>): void 119 120以异步方法根据给定的包名获取ApplicationInfo,使用callback形式返回结果。 121 122获取调用方自己的信息时不需要权限。 123 124**需要权限:** 125 126ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 127 128**系统能力:** 129 130SystemCapability.BundleManager.BundleFramework 131 132**参数:** 133 134| 参数名 | 类型 | 必填 | 说明 | 135| ----------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 136| bundleName | string | 是 | 要查询的应用程序包名称。 | 137| bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 | 138| callback | AsyncCallback\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)> | 是 | 程序启动作为入参的回调函数,返回应用程序信息。 | 139 140**示例:** 141 142```ts 143let bundleName = "com.example.myapplication"; 144let bundleFlags = 0; 145bundle.getApplicationInfo(bundleName, bundleFlags, (err, data) => { 146 if (err) { 147 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 148 return; 149 } 150 console.info('Operation successful. Data:' + JSON.stringify(data)); 151 }) 152``` 153 154 155## bundle.getAllBundleInfo<sup>deprecated<sup> 156 157> 从API version 9开始不再维护,建议使用[bundleManager.getAllBundleInfo](js-apis-bundleManager.md#bundlemanagergetallbundleinfo)替代。 158 159getAllBundleInfo(bundleFlag: BundleFlag, userId?: number): Promise\<Array\<BundleInfo\>\> 160 161以异步方法获取指定用户所有的BundleInfo,使用Promise形式异步回调, 162 163**需要权限:** 164 165ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 166 167**系统能力:** 168 169SystemCapability.BundleManager.BundleFramework 170 171**参数:** 172 173| 参数名 | 类型 | 必填 | 说明 | 174| ---------- | ---------- | ---- | ------------------------------------------------------------ | 175| bundleFlag | BundleFlag | 是 | 用于指定返回的包信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 | 176| userId | number | 否 | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 | 177 178**返回值:** 179 180| 类型 | 说明 | 181| --------------------------- | -------------------------- | 182| Promise<Array\<[BundleInfo](js-apis-bundle-BundleInfo.md)>> | Promise形式返回所有可用的BundleInfo | 183 184**示例:** 185 186```ts 187let bundleFlag = 0; 188let userId = 100; 189bundle.getAllBundleInfo(bundleFlag, userId) 190.then((data) => { 191 console.info('Operation successful. Data: ' + JSON.stringify(data)); 192}).catch((error) => { 193 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 194}) 195``` 196 197## bundle.getAllBundleInfo<sup>deprecated<sup> 198 199> 从API version 9开始不再维护,建议使用[bundleManager.getAllBundleInfo](js-apis-bundleManager.md#bundlemanagergetallbundleinfo)替代。 200 201 202getAllBundleInfo(bundleFlag: BundleFlag, callback: AsyncCallback\<Array\<BundleInfo\>\>): void 203 204以异步方法获取当前用户所有的BundleInfo,使用callback形式返回结果。 205 206**需要权限:** 207 208ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 209 210**系统能力:** 211 212SystemCapability.BundleManager.BundleFramework 213 214**参数:** 215 216| 参数名 | 类型 | 必填 | 说明 | 217| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 218| bundleFlag | BundleFlag | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 | 219| callback | AsyncCallback<Array\<[BundleInfo](js-apis-bundle-BundleInfo.md)>> | 是 | 程序启动作为入参的回调函数,返回所有可用的BundleInfo。 | 220 221**示例:** 222 223```ts 224let bundleFlag = 0; 225bundle.getAllBundleInfo(bundleFlag, (err, data) => { 226 if (err) { 227 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 228 return; 229 } 230 console.info('Operation successful. Data:' + JSON.stringify(data)); 231 }) 232``` 233 234## bundle.getAllBundleInfo<sup>deprecated<sup> 235 236> 从API version 9开始不再维护,建议使用[bundleManager.getAllBundleInfo](js-apis-bundleManager.md#bundlemanagergetallbundleinfo)替代。 237 238 239getAllBundleInfo(bundleFlag: BundleFlag, userId: number, callback: AsyncCallback\<Array\<BundleInfo\>\>): void 240 241以异步方法获取系统中指定用户下所有的BundleInfo,使用callback形式返回结果。 242 243**需要权限:** 244 245ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 246 247**系统能力:** 248 249SystemCapability.BundleManager.BundleFramework 250 251**参数:** 252 253| 参数名 | 类型 | 必填 | 说明 | 254|------------|-------------------------------------------------------------------|-----|---------------------------------------------------------------------| 255| bundleFlag | BundleFlag | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 | 256| userId | number | 是 | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 | 257| callback | AsyncCallback<Array\<[BundleInfo](js-apis-bundle-BundleInfo.md)>> | 是 | 程序启动作为入参的回调函数,返回指定用户下所有包的BundleInfo。 | 258| 259 260**示例:** 261 262```ts 263let bundleFlag = 0; 264let userId = 100; 265bundle.getAllBundleInfo(bundleFlag, userId, (err, data) => { 266 if (err) { 267 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 268 return; 269 } 270 console.info('Operation successful. Data:' + JSON.stringify(data)); 271 }) 272``` 273 274## bundle.getBundleInfo<sup>deprecated<sup> 275 276> 从API version 9开始不再维护,建议使用[bundleManager.getBundleInfo](js-apis-bundleManager.md#bundlemanagergetbundleinfo)替代。 277 278 279getBundleInfo(bundleName: string, bundleFlags: number, options?: BundleOptions): Promise\<BundleInfo> 280 281以异步方法根据给定的包名获取BundleInfo,使用Promise异步回调。 282 283获取调用方自己的信息时不需要权限。 284 285**需要权限:** 286 287ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 288 289**系统能力:** 290 291SystemCapability.BundleManager.BundleFramework 292 293**参数:** 294 295| 参数名 | 类型 | 必填 | 说明 | 296| ----------- | ------------- | ---- |---------------------------------------------------------------------| 297| bundleName | string | 是 | 要查询的应用程序包名称。 | 298| bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 | 299| options | [BundleOptions](#bundleoptionsdeprecated) | 否 | 包含userid的查询选项。 | 300 301**返回值:** 302 303| 类型 | 说明 | 304| -------------------- | ---------------------------- | 305| Promise\<[BundleInfo](js-apis-bundle-BundleInfo.md)> | Promise对象,获取成功时返回包信息。 | 306 307**示例:** 308 309```ts 310let bundleName = "com.example.myapplication"; 311let bundleFlags = 1; 312let options = { 313 "userId" : 100 314}; 315bundle.getBundleInfo(bundleName, bundleFlags, options) 316.then((data) => { 317 console.info('Operation successful. Data: ' + JSON.stringify(data)); 318}).catch((error) => { 319 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 320}) 321``` 322 323## bundle.getBundleInfo<sup>deprecated<sup> 324 325> 从API version 9开始不再维护,建议使用[bundleManager.getBundleInfo](js-apis-bundleManager.md#bundlemanagergetbundleinfo)替代。 326 327getBundleInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback\<BundleInfo>): void 328 329以异步方法根据给定的包名获取BundleInfo,使用callback异步回调。 330 331获取调用方自己的信息时不需要权限。 332 333**需要权限:** 334 335ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 336 337**系统能力:** 338 339SystemCapability.BundleManager.BundleFramework 340 341**参数:** 342 343| 参数名 | 类型 | 必填 | 说明 | 344| ----------- | ---------------------------------------------------------- | ---- |---------------------------------------------------------------------| 345| bundleName | string | 是 | 需要查询的应用程序包名称。 | 346| bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 | 347| callback | AsyncCallback\<[BundleInfo](js-apis-bundle-BundleInfo.md)> | 是 | 程序启动作为入参的回调函数,返回包信息。 | 348 349**示例:** 350 351```ts 352let bundleName = "com.example.myapplication"; 353let bundleFlags = 1; 354bundle.getBundleInfo(bundleName, bundleFlags, (err, data) => { 355 if (err) { 356 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 357 return; 358 } 359 console.info('Operation successful. Data:' + JSON.stringify(data)); 360}) 361``` 362 363 364## bundle.getBundleInfo<sup>deprecated<sup> 365 366> 从API version 9开始不再维护,建议使用[bundleManager.getBundleInfo](js-apis-bundleManager.md#bundlemanagergetbundleinfo)替代。 367 368getBundleInfo(bundleName: string, bundleFlags: number, options: BundleOptions, callback: AsyncCallback\<BundleInfo>): void 369 370以异步方法根据给定的包名获取BundleInfo,使用callback异步回调。 371 372获取调用方自己的信息时不需要权限。 373 374**需要权限:** 375 376ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 377 378**系统能力:** 379 380SystemCapability.BundleManager.BundleFramework 381 382**参数:** 383 384| 参数名 | 类型 | 必填 | 说明 | 385| ----------- | ---------------------------------------------------------- | ---- | ------------------------------------------------------------ | 386| bundleName | string | 是 | 要查询的应用包名。 | 387| bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 | 388| options | [BundleOptions](#bundleoptionsdeprecated) | 是 | 包含userid。 | 389| callback | AsyncCallback\<[BundleInfo](js-apis-bundle-BundleInfo.md)> | 是 | 程序启动作为入参的回调函数,返回包信息。 | 390 391**示例:** 392 393```ts 394let bundleName = "com.example.myapplication"; 395let bundleFlags = 1; 396let options = { 397 "userId" : 100 398}; 399bundle.getBundleInfo(bundleName, bundleFlags, options, (err, data) => { 400 if (err) { 401 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 402 return; 403 } 404 console.info('Operation successful. Data:' + JSON.stringify(data)); 405}) 406``` 407 408 409 410## bundle.getBundleInstaller<sup>deprecated<sup> 411 412> 从API version 9开始不再维护,建议使用[installer.getBundleInstaller](js-apis-installer.md#bundleinstallergetbundleinstaller)替代。 413 414getBundleInstaller(): Promise<BundleInstaller>; 415 416获取用于安装包的接口,使用Promise异步回调,返回安装接口对象。 417 418**需要权限:** 419 420ohos.permission.INSTALL_BUNDLE 421 422**系统能力:** 423 424SystemCapability.BundleManager.BundleFramework 425 426**系统API:** 427 428此接口为系统接口,三方应用不支持调用 429 430**返回值:** 431 432| 类型 | 说明 | 433| ------------------------------------------------------------ | -------------------------------------------- | 434| Promise<[BundleInstaller](js-apis-bundle-BundleInstaller.md)> | Promise对象,返回安装接口对象。 | 435 436**示例:** 437 438```ts 439bundle.getBundleInstaller().then((data) => { 440 console.info('getBundleInstaller successfully.'); 441}).catch((error) => { 442 console.error('getBundleInstaller failed.'); 443}); 444``` 445 446## bundle.getBundleInstaller<sup>deprecated<sup> 447 448> 从API version 9开始不再维护,建议使用[installer.getBundleInstaller](js-apis-installer.md#bundleinstallergetbundleinstaller)替代。 449 450getBundleInstaller(callback: AsyncCallback<BundleInstaller>): void; 451 452获取用于安装包的接口,使用callback异步回调。 453 454**需要权限:** 455 456ohos.permission.INSTALL_BUNDLE 457 458**系统能力:** 459 460SystemCapability.BundleManager.BundleFramework 461 462**系统API:** 463 464此接口为系统接口,三方应用不支持调用 465 466**参数:** 467 468| 参数名 | 类型 | 必填 | 说明 | 469| -------- | ------------------------------------------------------------ | ---- | ---------------- | 470| callback | AsyncCallback<[BundleInstaller](js-apis-bundle-BundleInstaller.md)> | 是 | 回调函数,返回安装接口对象。 | 471 472**示例:** 473 474```ts 475bundle.getBundleInstaller((err, data) => { 476 if (err.code == 0) { 477 console.error('getBundleInstaller failed.'); 478 } else { 479 console.info('getBundleInstaller successfully'); 480 } 481}); 482``` 483## bundle.cleanBundleCacheFiles<sup>8+</sup> <sup>deprecated<sup> 484 485> 从API version 9开始不再维护,建议使用[bundleManager.cleanBundleCacheFiles](js-apis-bundleManager.md#bundlemanagercleanbundlecachefiles)替代。 486 487cleanBundleCacheFiles(bundleName: string, callback: AsyncCallback<void>): void; 488 489清除指定应用程序的缓存数据,使用callback异步回调。 490 491**需要权限:** 492 493ohos.permission.REMOVE_CACHE_FILES 494 495**系统能力:** 496 497SystemCapability.BundleManager.BundleFramework 498 499**系统API:** 500 501此接口为系统接口,三方应用不支持调用 502 503**参数:** 504 505| 参数名 | 类型 | 必填 | 说明 | 506| ---------- | ------------------- | ---- | ------------------------------------- | 507| bundleName | string | 是 | 指示要清除其缓存数据的应用程序包名称。 | 508| callback | AsyncCallback\<void> | 是 | 回调函数。 | 509 510**示例:** 511 512```ts 513let bundleName = "com.example.myapplication"; 514 515bundle.cleanBundleCacheFiles(bundleName, err => { 516 if (err) { 517 console.error('cleanBundleCacheFiles failed.'); 518 } else { 519 console.info('cleanBundleCacheFiles successfully.'); 520 } 521}); 522``` 523 524## bundle.cleanBundleCacheFiles<sup>8+</sup> <sup>deprecated<sup> 525 526> 从API version 9开始不再维护,建议使用[bundleManager.cleanBundleCacheFiles](js-apis-bundleManager.md#bundlemanagercleanbundlecachefiles)替代。 527 528cleanBundleCacheFiles(bundleName: string): Promise<void> 529 530清除指定应用程序的缓存数据,使用Promise异步回调。 531 532**需要权限:** 533 534ohos.permission.REMOVE_CACHE_FILES 535 536**系统能力:** 537 538SystemCapability.BundleManager.BundleFramework 539 540**系统API:** 541 542此接口为系统接口,三方应用不支持调用 543 544**参数:** 545 546| 参数名 | 类型 | 必填 | 说明 | 547| ---------- | ------ | ---- | ------------------------------------- | 548| bundleName | string | 是 | 指示要清除其缓存数据的应用程序包名称。 | 549 550**返回值:** 551 552| 类型 | 说明 | 553| ------------- | ------------------------------------ | 554| Promise\<void> | Promise对象,无返回结果的Promise对象。 | 555 556**示例:** 557 558```ts 559let bundleName = "com.example.myapplication"; 560 561bundle.cleanBundleCacheFiles(bundleName).then(()=> { 562 console.info('cleanBundleCacheFiles successfully.'); 563}).catch(err=> { 564 console.error('cleanBundleCacheFiles failed.'); 565}); 566``` 567 568## bundle.setApplicationEnabled<sup>8+</sup> <sup>deprecated<sup> 569 570> 从API version 9开始不再维护,建议使用[bundleManager.setApplicationEnabled](js-apis-bundleManager.md#bundlemanagersetapplicationenabled)替代。 571 572setApplicationEnabled(bundleName: string, isEnable: boolean, callback: AsyncCallback<void>): void; 573 574设置是否启用指定的应用程序,使用callback异步回调。 575 576**需要权限:** 577 578ohos.permission.CHANGE_ABILITY_ENABLED_STATE 579 580**系统能力:** 581 582SystemCapability.BundleManager.BundleFramework 583 584**系统API:** 585 586此接口为系统接口,三方应用不支持调用 587 588**参数:** 589 590| 参数名 | 类型 | 必填 | 说明 | 591| ---------- | ------------------- | ---- |--------------------------------| 592| bundleName | string | 是 | 指示需要启用或禁用的应用程序包名称。 | 593| isEnable | boolean | 是 | 指定是否启用应用程序。true表示启用,false表示禁用。 | 594| callback | AsyncCallback\<void> | 是 | 回调函数。 | 595 596**示例:** 597 598```ts 599let bundleName = "com.example.myapplication"; 600 601bundle.setApplicationEnabled(bundleName, false, err => { 602 if (err) { 603 console.error('setApplicationEnabled failed.'); 604 } else { 605 console.info('setApplicationEnabled successfully.'); 606 } 607}); 608``` 609 610## bundle.setApplicationEnabled<sup>8+</sup> <sup>deprecated<sup> 611 612> 从API version 9开始不再维护,建议使用[bundleManager.setApplicationEnabled](js-apis-bundleManager.md#bundlemanagersetapplicationenabled)替代。 613 614setApplicationEnabled(bundleName: string, isEnable: boolean): Promise<void> 615 616设置是否启用指定的应用程序,使用Promise异步回调。 617 618**需要权限:** 619 620ohos.permission.CHANGE_ABILITY_ENABLED_STATE 621 622**系统能力:** 623 624SystemCapability.BundleManager.BundleFramework 625 626**系统API:** 627 628此接口为系统接口,三方应用不支持调用 629 630**参数:** 631 632| 参数名 | 类型 | 必填 | 说明 | 633| ---------- | ------- | ---- |------------------------------| 634| bundleName | string | 是 | 指示需要启用或禁用的应用程序包名称。 | 635| isEnable | boolean | 是 | 指定是否启用应用程序。true表示启用,false禁用。 | 636 637**返回值:** 638 639| 类型 | 说明 | 640| ------------- | ------------------------------------ | 641| Promise\<void> | Promise对象,无返回结果的Promise对象。 | 642 643**示例:** 644 645```ts 646let bundleName = "com.example.myapplication"; 647 648bundleManager.setApplicationEnabled(bundleName, false).then(()=> { 649 console.info('setApplicationEnabled successfully.'); 650}).catch(err=> { 651 console.error('setApplicationEnabled failed.'); 652}); 653``` 654 655## bundle.setAbilityEnabled<sup>8+</sup> <sup>deprecated<sup> 656 657> 从API version 9开始不再维护,建议使用[bundleManager.setAbilityEnabled](js-apis-bundleManager.md#bundlemanagersetabilityenabled)替代。 658 659setAbilityEnabled(info: AbilityInfo, isEnable: boolean, callback: AsyncCallback<void>): void; 660 661设置是否启用指定的Ability组件,使用callback异步回调。 662 663**需要权限:** 664 665ohos.permission.CHANGE_ABILITY_ENABLED_STATE 666 667**系统能力:** 668 669SystemCapability.BundleManager.BundleFramework 670 671**系统API:** 672 673此接口为系统接口,三方应用不支持调用 674 675**参数:** 676 677| 参数名 | 类型 | 必填 | 说明 | 678| -------- | -------------------------------------------- | ---- | ----------------------------------------------- | 679| info | [AbilityInfo](js-apis-bundle-AbilityInfo.md) | 是 | Ability信息,指示需要设置启用状态的Ability。 | 680| isEnable | boolean | 是 | 指定是否启用应用程序。true表示启用,false禁用。 | 681| callback | AsyncCallback\<void> | 是 | 为返回操作结果而调用的回调。 | 682 683## bundle.setAbilityEnabled<sup>8+</sup> <sup>deprecated<sup> 684 685> 从API version 9开始不再维护,建议使用[bundleManager.setAbilityEnabled](js-apis-bundleManager.md#bundlemanagersetabilityenabled)替代。 686 687setAbilityEnabled(info: AbilityInfo, isEnable: boolean): Promise<void> 688 689设置是否启用指定的Ability组件,使用Promise异步回调。 690 691**需要权限:** 692 693ohos.permission.CHANGE_ABILITY_ENABLED_STATE 694 695**系统能力:** 696 697SystemCapability.BundleManager.BundleFramework 698 699**系统API:** 700 701此接口为系统接口,三方应用不支持调用 702 703**参数:** 704 705| 参数名 | 类型 | 必填 | 说明 | 706| -------- | -------------------------------------------- | ---- | ----------------------------------------------- | 707| info | [AbilityInfo](js-apis-bundle-AbilityInfo.md) | 是 | Ability信息,指示需要设置启用状态的Ability。 | 708| isEnable | boolean | 是 | 指定是否启用应用程序。true表示启用,false禁用。 | 709 710**返回值:** 711 712| 类型 | 说明 | 713| ------------- | ------------------------------------ | 714| Promise\<void> | Promise对象,无返回结果的Promise对象。 | 715 716**示例:** 717 718```ts 719let flag = bundle.BundleFlag.GET_ABILITY_INFO_WITH_PERMISSION; 720let userId = 100; 721let want = { 722 bundleName : "com.example.myapplication", 723 abilityName : "com.example.myapplication.MainAbility" 724}; 725 726bundle.getAbilityInfo(want, flag, userId).then((abilityInfo) => { 727 console.info('getAbilityInfo successfully. Data: ' + JSON.stringify(abilityInfo)); 728 729 bundle.setAbilityEnabled(abilityInfo, false).then(data => { 730 console.info('setAbilityEnabled successfully.'); 731 }).catch(err => { 732 console.error('setAbilityEnabled failed:' + JSON.stringify(err)); 733 }) 734}).catch(error => { 735 console.error('getAbilityInfo failed. Cause: ' + JSON.stringify(error)); 736}); 737``` 738## bundle.getPermissionDef<sup>8+</sup> <sup>deprecated<sup> 739 740> 从API version 9开始不再维护,建议使用[bundleManager.getPermissionDef](js-apis-bundleManager.md#bundlemanagergetpermissiondef)替代。 741 742getPermissionDef(permissionName: string, callback: AsyncCallback<PermissionDef>): void; 743 744按权限名称获取权限的详细信息,使用callback异步回调。 745 746**需要权限:** 747 748ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 749 750**系统能力:** 751 752SystemCapability.BundleManager.BundleFramework 753 754**系统API:** 755 756此接口为系统接口,三方应用不支持调用 757 758**参数:** 759 760| 参数名 | 类型 | 必填 | 说明 | 761| -------------- | ------------------------------------------------------------ | ---- | ------------------------------------------------ | 762| permissionName | string | 是 | 需要查询的权限的名称。 | 763| callback | AsyncCallback<[PermissionDef](js-apis-bundle-PermissionDef.md)> | 是 | 程序启动作为入参的回调函数,返回定义的权限信息。 | 764 765**示例:** 766 767```ts 768let permission = "ohos.permission.GET_BUNDLE_INFO"; 769bundleManager.getPermissionDef(permission, (err, data) => { 770 if (err) { 771 console.error('getPermissionDef failed:' + err.message); 772 } else { 773 console.info('getPermissionDef successfully:' + JSON.stringify(data)); 774 } 775}); 776``` 777 778## bundle.getPermissionDef<sup>8+</sup> <sup>deprecated<sup> 779 780> 从API version 9开始不再维护,建议使用[bundleManager.getPermissionDef](js-apis-bundleManager.md#bundlemanagergetpermissiondef)替代。 781 782getPermissionDef(permissionName: string): Promise<PermissionDef> 783 784按权限名称获取权限的详细信息,使用promise异步回调。。 785 786**需要权限:** 787 788ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 789 790**系统能力:** 791 792SystemCapability.BundleManager.BundleFramework 793 794**系统API:** 795 796此接口为系统接口,三方应用不支持调用 797 798**参数:** 799 800| 参数名 | 类型 | 必填 | 说明 | 801| -------------- | ------ | ---- | ---------------- | 802| permissionName | string | 是 | 需要查询的权限的名称。 | 803 804**返回值:** 805 806| 类型 | 说明 | 807| ------------------------------------------------------ | ------------------------------------------------------ | 808| Promise<[PermissionDef](js-apis-bundle-PermissionDef.md)> | Promise对象,获取成功时返回权限详细信息。 | 809 810**示例:** 811 812```ts 813let permissionName = "ohos.permission.GET_BUNDLE_INFO"; 814bundle.getPermissionDef(permissionName).then((data) => { 815 console.info('getPermissionDef successfully. Data: ' + JSON.stringify(data)); 816}).catch(error => { 817 console.error('getPermissionDef failed. Cause: ' + error.message); 818}); 819``` 820 821## bundle.getAllApplicationInfo<sup>deprecated<sup> 822 823> 从API version 9开始不再维护,建议使用[bundleManager.getAllApplicationInfo](js-apis-bundleManager.md#bundlemanagergetallapplicationinfo)替代。 824 825getAllApplicationInfo(bundleFlags: number, userId?: number): Promise\<Array\<ApplicationInfo\>\> 826 827获取指定用户下所有已安装的应用信息,使用promise异步回调。 828 829**需要权限:** 830 831ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 832 833**系统能力:** 834 835SystemCapability.BundleManager.BundleFramework 836 837**参数:** 838 839| 参数名 | 类型 | 必填 | 说明 | 840| ----------- | ------ | ---- | ------------------------------------------------------------ | 841| bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 | 842| userId | number | 否 | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 | 843 844**返回值:** 845 846| 类型 | 说明 | 847| -------------------------------- | ------------------------------- | 848| Promise<Array\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)>> | Promise对象,获取成功时返回应用信息列表。 | 849 850**示例:** 851 852```ts 853let bundleFlags = 8; 854let userId = 100; 855bundle.getAllApplicationInfo(bundleFlags, userId) 856.then((data) => { 857 console.info('Operation successful. Data: ' + JSON.stringify(data)); 858}).catch((error) => { 859 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 860}) 861``` 862 863## bundle.getAllApplicationInfo<sup>deprecated<sup> 864 865> 从API version 9开始不再维护,建议使用[bundleManager.getAllApplicationInfo](js-apis-bundleManager.md#bundlemanagergetallapplicationinfo)替代。 866 867getAllApplicationInfo(bundleFlags: number, userId: number, callback: AsyncCallback\<Array\<ApplicationInfo\>\>): void 868 869获取指定用户下所有已安装的应用信息,使用callback异步回调。 870 871**需要权限:** 872 873ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 874 875**系统能力:** 876 877SystemCapability.BundleManager.BundleFramework 878 879**参数:** 880 881| 参数名 | 类型 | 必填 | 说明 | 882| ----------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 883| bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 | 884| userId | number | 是 | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 | 885| callback | AsyncCallback<Array\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)>> | 是 | 程序启动作为入参的回调函数,返回应用信息列表。 | 886 887**示例:** 888 889```ts 890let bundleFlags = bundle.BundleFlag.GET_APPLICATION_INFO_WITH_PERMISSION; 891let userId = 100; 892bundle.getAllApplicationInfo(bundleFlags, userId, (err, data) => { 893 if (err) { 894 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 895 return; 896 } 897 console.info('Operation successful. Data:' + JSON.stringify(data)); 898}) 899``` 900 901 902## bundle.getAllApplicationInfo<sup>deprecated<sup> 903 904> 从API version 9开始不再维护,建议使用[bundleManager.getAllApplicationInfo](js-apis-bundleManager.md#bundlemanagergetallapplicationinfo)替代。 905 906getAllApplicationInfo(bundleFlags: number, callback: AsyncCallback<Array\<ApplicationInfo>>) : void; 907 908获取调用方所在用户下已安装的应用信息,使用callback异步回调。 909 910**需要权限:** 911 912ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 913 914**系统能力:** 915 916SystemCapability.BundleManager.BundleFramework 917 918**参数:** 919 920| 参数名 | 类型 | 必填 | 说明 | 921| ----------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 922| bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 | 923| callback | AsyncCallback<Array\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)>> | 是 | 程序启动作为入参的回调函数,返回应用信息列表。 | 924 925**示例:** 926 927```ts 928let bundleFlags = bundle.BundleFlag.GET_APPLICATION_INFO_WITH_PERMISSION; 929bundle.getAllApplicationInfo(bundleFlags, (err, data) => { 930 if (err) { 931 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 932 return; 933 } 934 console.info('Operation successful. Data:' + JSON.stringify(data)); 935}) 936``` 937 938## bundle.getBundleArchiveInfo<sup>deprecated<sup> 939 940> 从API version 9开始不再维护,建议使用[bundleManager.getBundleArchiveInfo](js-apis-bundleManager.md#bundlemanagergetbundlearchiveinfo)替代。 941 942getBundleArchiveInfo(hapFilePath: string, bundleFlags: number) : Promise\<BundleInfo> 943 944获取有关HAP包中包含的应用程序包的信息,使用Promise形式返回结果。 945 946**系统能力:** 947 948SystemCapability.BundleManager.BundleFramework 949 950**参数:** 951 952| 参数名 | 类型 | 必填 | 说明 | 953| ---------- | ------ | ---- | ------------ | 954| hapFilePath | string | 是 | HAP存放路径。支持当前应用程序的绝对路径和数据目录沙箱路径。 | 955| bundleFlags | number | 是 | 用于指定要返回的BundleInfo对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 | 956 957**返回值:** 958| 类型 | 说明 | 959| -------------- | -------------------------------------- | 960| Promise\<[BundleInfo](js-apis-bundle-BundleInfo.md)> | 返回值为Promise对象,Promise中包含有关hap包中包含的应用程序的信息。 | 961 962**示例:** 963 964```ts 965let hapFilePath = "/data/storage/el2/base/test.hap"; 966let bundleFlags = 0; 967bundle.getBundleArchiveInfo(hapFilePath, bundleFlags) 968.then((data) => { 969 console.info('Operation successful. Data: ' + JSON.stringify(data)); 970}).catch((error) => { 971 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 972}) 973``` 974 975## bundle.getBundleArchiveInfo<sup>deprecated<sup> 976 977> 从API version 9开始不再维护,建议使用[bundleManager.getBundleArchiveInfo](js-apis-bundleManager.md#bundlemanagergetbundlearchiveinfo)替代。 978 979getBundleArchiveInfo(hapFilePath: string, bundleFlags: number, callback: AsyncCallback\<BundleInfo>) : void 980 981以异步方法获取有关HAP包中包含的应用程序包的信息,使用callback形式返回结果。 982 983**系统能力:** 984 985SystemCapability.BundleManager.BundleFramework 986 987**参数:** 988 989| 参数名 | 类型 | 必填 | 说明 | 990| ---------- | ------ | ---- | ------------ | 991| hapFilePath | string | 是 | HAP存放路径,支持当前应用程序的绝对路径和数据目录沙箱路径。 | 992| bundleFlags | number | 是 | 用于指定要返回的BundleInfo对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 | 993| callback| AsyncCallback\<[BundleInfo](js-apis-bundle-BundleInfo.md)> | 是 | 程序启动作为入参的回调函数,返回HAP包中包含的应用程序包的信息。| 994 995**示例:** 996 997```ts 998let hapFilePath = "/data/storage/el2/base/test.hap"; 999let bundleFlags = 0; 1000bundle.getBundleArchiveInfo(hapFilePath, bundleFlags, (err, data) => { 1001 if (err) { 1002 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 1003 return; 1004 } 1005 console.info('Operation successful. Data:' + JSON.stringify(data)); 1006}) 1007``` 1008 1009 1010## bundle.getAbilityInfo<sup>deprecated<sup> 1011 1012> 从API version 9开始不再维护,建议使用[bundleManager.queryAbilityInfo](js-apis-bundleManager.md#bundlemanagerqueryabilityinfo)替代。 1013 1014getAbilityInfo(bundleName: string, abilityName: string): Promise\<AbilityInfo> 1015 1016通过包名称和组件名获取Ability组件信息,使用Promise形式异步回调。 1017 1018获取调用方自己的信息时不需要权限。 1019 1020**需要权限:** 1021 1022ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 1023 1024**系统能力:** 1025 1026SystemCapability.BundleManager.BundleFramework 1027 1028**参数:** 1029 1030| 参数名 | 类型 | 必填 | 说明 | 1031| ----------- | ------ | ---- |------------| 1032| bundleName | string | 是 | 应用程序包名称。 | 1033| abilityName | string | 是 | Ability组件名称。 | 1034 1035**返回值:** 1036 1037| 类型 | 说明 | 1038| --------------------- | --------------------- | 1039| Promise\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)> | Promise形式返回Ability信息。 | 1040 1041**示例:** 1042 1043```ts 1044let bundleName = "com.example.myapplication"; 1045let abilityName = "com.example.myapplication.MainAbility"; 1046bundle.getAbilityInfo(bundleName, abilityName) 1047.then((data) => { 1048 console.info('Operation successful. Data: ' + JSON.stringify(data)); 1049}).catch((error) => { 1050 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 1051}) 1052``` 1053 1054## bundle.getAbilityInfo<sup>deprecated<sup> 1055 1056> 从API version 9开始不再维护,建议使用[bundleManager.queryAbilityInfo](js-apis-bundleManager.md#bundlemanagerqueryabilityinfo)替代。 1057 1058getAbilityInfo(bundleName: string, abilityName: string, callback: AsyncCallback\<AbilityInfo>): void; 1059 1060通过包名称和组件名获取Ability组件信息,使用callback形式返回结果。 1061 1062获取调用方自己的信息时不需要权限。 1063 1064**需要权限:** 1065 1066ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 1067 1068**系统能力:** 1069 1070SystemCapability.BundleManager.BundleFramework 1071 1072**参数:** 1073 1074| 参数名 | 类型 | 必填 | 说明 | 1075| ----------- | ------------ | ---- |----------------------------| 1076| bundleName | string | 是 | 应用程序包名称。 | 1077| abilityName | string | 是 | Ability名称。 | 1078| callback | AsyncCallback\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)> | 是 | 程序启动作为入参的回调函数,返回Ability信息。 | 1079 1080**示例:** 1081 1082```ts 1083let bundleName = "com.example.myapplication"; 1084let abilityName = "com.example.myapplication.MainAbility"; 1085bundle.getAbilityInfo(bundleName, abilityName, (err, data) => { 1086 if (err) { 1087 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 1088 return; 1089 } 1090 console.info('Operation successful. Data:' + JSON.stringify(data)); 1091}) 1092``` 1093 1094## bundle.getAbilityLabel<sup>8+</sup> <sup>deprecated<sup> 1095 1096> 从API version 9开始不再维护,建议使用[bundleManager.getAbilityLabel](js-apis-bundleManager.md#bundlemanagergetabilitylabel)替代。 1097 1098getAbilityLabel(bundleName: string, abilityName: string): Promise\<string> 1099 1100通过包名称和ability名称获取应用名称,使用Promise形式返回结果。 1101 1102获取调用方自己的信息时不需要权限。 1103 1104**需要权限:** 1105 1106ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 1107 1108**系统能力:** 1109 1110SystemCapability.BundleManager.BundleFramework 1111 1112**参数:** 1113 1114| 参数名 | 类型 | 必填 | 说明 | 1115|-------------|--------|-----|------------| 1116| bundleName | string | 是 | 应用程序包名称。 | 1117| abilityName | string | 是 | Ability名称。 | 1118 1119**返回值:** 1120 1121| 类型 | 说明 | 1122| ---------------- | ------------------ | 1123| Promise\<string> | Promise形式返回应用名称信息。 | 1124 1125**示例:** 1126 1127```ts 1128let bundleName = "com.example.myapplication"; 1129let abilityName = "com.example.myapplication.MainAbility"; 1130bundle.getAbilityLabel(bundleName, abilityName) 1131.then((data) => { 1132 console.info('Operation successful. Data: ' + JSON.stringify(data)); 1133}).catch((error) => { 1134 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 1135}) 1136``` 1137 1138## bundle.getAbilityLabel<sup>8+</sup> <sup>deprecated<sup> 1139 1140> 从API version 9开始不再维护,建议使用[bundleManager.getAbilityLabel](js-apis-bundleManager.md#bundlemanagergetabilitylabel)替代。 1141 1142getAbilityLabel(bundleName: string, abilityName: string, callback : AsyncCallback\<string>): void 1143 1144通过包名称和Ability组件名获取应用名称,使用callback形式返回结果。 1145 1146获取调用方自己的信息时不需要权限。 1147 1148**需要权限:** 1149 1150ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 1151 1152**系统能力:** 1153 1154SystemCapability.BundleManager.BundleFramework 1155 1156**参数:** 1157 1158| 参数名 | 类型 | 必填 | 说明 | 1159|-------------|------------------------|-----|-------------------------| 1160| bundleName | string | 是 | 应用程序包名称。 | 1161| abilityName | string | 是 | Ability名称。 | 1162| callback | AsyncCallback\<string> | 是 | 程序启动作为入参的回调函数,返回应用名称信息。 | 1163 1164**示例:** 1165 1166```ts 1167let bundleName = "com.example.myapplication"; 1168let abilityName = "com.example.myapplication.MainAbility"; 1169bundle.getAbilityLabel(bundleName, abilityName, (err, data) => { 1170 if (err) { 1171 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 1172 return; 1173 } 1174 console.info('Operation successful. Data:' + JSON.stringify(data)); 1175}) 1176``` 1177 1178## bundle.isAbilityEnabled<sup>8+</sup> <sup>deprecated<sup> 1179 1180> 从API version 9开始不再维护,建议使用[bundleManager.isAbilityEnabled](js-apis-bundleManager.md#bundlemanagerisabilityenabled)替代。 1181 1182isAbilityEnabled(info: AbilityInfo): Promise\<boolean> 1183 1184以异步方法根据给定的AbilityInfo查询ability是否已经启用,使用Promise形式返回结果。 1185 1186**系统能力:** 1187 1188SystemCapability.BundleManager.BundleFramework 1189 1190**参数:** 1191 1192| 参数名 | 类型 | 必填 | 说明 | 1193| ------ | -------------------------------------------- | ---- | ----------------- | 1194| info | [AbilityInfo](js-apis-bundle-AbilityInfo.md) | 是 | Ability的配置信息。 | 1195 1196**返回值:** 1197 1198| 类型 | 说明 | 1199| ----------------- | ------------------------- | 1200| Promise\<boolean> | Promise形式返回boolean代表是否启用。 | 1201 1202**示例:** 1203 1204```ts 1205let bundleName = "com.example.myapplication"; 1206let abilityName = "com.example.myapplication.MainAbility"; 1207bundle.getAbilityInfo(bundleName, abilityName).then((abilityInfo)=>{ 1208 bundle.isAbilityEnabled(abilityInfo).then((data) => { 1209 console.info('Operation successful. Data: ' + JSON.stringify(data)); 1210 }).catch((error) => { 1211 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 1212 }) 1213}) 1214``` 1215 1216## bundle.isAbilityEnabled<sup>8+</sup> <sup>deprecated<sup> 1217 1218> 从API version 9开始不再维护,建议使用[bundleManager.isAbilityEnabled](js-apis-bundleManager.md#bundlemanagerisabilityenabled)替代。 1219 1220isAbilityEnabled(info : AbilityInfo, callback : AsyncCallback\<boolean>): void 1221 1222以异步方法根据给定的AbilityInfo查询ability是否已经启用,使用callback形式返回结果。 1223 1224**系统能力:** 1225 1226SystemCapability.BundleManager.BundleFramework 1227 1228**参数:** 1229 1230| 参数名 | 类型 | 必填 | 说明 | 1231| -------- | -------------------------------------------- | ---- | ----------------------- | 1232| info | [AbilityInfo](js-apis-bundle-AbilityInfo.md) | 是 | Ability的配置信息。 | 1233| callback | AsyncCallback\<boolean> | 是 | 返回boolean代表是否启用。 | 1234 1235**示例:** 1236 1237```ts 1238let bundleName = "com.example.myapplication"; 1239let abilityName = "com.example.myapplication.MainAbility"; 1240bundle.getAbilityInfo(bundleName, abilityName).then((abilityInfo)=>{ 1241 bundle.isAbilityEnabled(abilityInfo, (err, data) => { 1242 if (err) { 1243 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 1244 return; 1245 } 1246 console.info('Operation successful. Data:' + JSON.stringify(data)); 1247 }) 1248}) 1249``` 1250 1251## bundle.isApplicationEnabled<sup>8+</sup> <sup>deprecated<sup> 1252 1253> 从API version 9开始不再维护,建议使用[bundleManager.isApplicationEnabled](js-apis-bundleManager.md#bundlemanagerisapplicationenabled)替代。 1254 1255isApplicationEnabled(bundleName: string): Promise\<boolean> 1256 1257以异步方法根据给定的bundleName查询指定应用程序是否已经启用,使用Promise形式返回结果。 1258 1259**系统能力:** 1260 1261SystemCapability.BundleManager.BundleFramework 1262 1263**参数:** 1264 1265| 参数名 | 类型 | 必填 | 说明 | 1266| ---------- | ------ | ---- | ------------------------ | 1267| bundleName | string | 是 | 要查询的应用程序包名称。 | 1268 1269**返回值:** 1270 1271| 类型 | 说明 | 1272| ----------------- | ------------------------- | 1273| Promise\<boolean> | Promise形式返回boolean代表是否启用。 | 1274 1275**示例:** 1276 1277```ts 1278let bundleName = "com.example.myapplication"; 1279bundle.isApplicationEnabled(bundleName) 1280.then((data) => { 1281 console.info('Operation successful. Data: ' + JSON.stringify(data)); 1282}).catch((error) => { 1283 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 1284}) 1285``` 1286 1287## bundle.isApplicationEnabled<sup>8+</sup> <sup>deprecated<sup> 1288 1289> 从API version 9开始不再维护,建议使用[bundleManager.isApplicationEnabled](js-apis-bundleManager.md#bundlemanagerisapplicationenabled)替代。 1290 1291isApplicationEnabled(bundleName: string, callback : AsyncCallback\<boolean>): void 1292 1293以异步方法根据给定的bundleName查询指定应用程序是否已经启用,使用callback形式返回结果。 1294 1295**系统能力:** 1296 1297SystemCapability.BundleManager.BundleFramework 1298 1299**参数:** 1300 1301| 参数名 | 类型 | 必填 | 说明 | 1302| ---------- | ----------------------- | ---- | ------------------------ | 1303| bundleName | string | 是 | 要查询的应用程序包名称。 | 1304| callback | AsyncCallback\<boolean> | 是 | 返回boolean代表是否启用。 | 1305 1306**示例:** 1307 1308```ts 1309let bundleName = "com.example.myapplication"; 1310bundle.isApplicationEnabled(bundleName, (err, data) => { 1311 if (err) { 1312 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 1313 return; 1314 } 1315 console.info('Operation successful. Data:' + JSON.stringify(data)); 1316}) 1317``` 1318 1319## bundle.queryAbilityByWant<sup>deprecated<sup> 1320 1321> 从API version 9开始不再维护,建议使用[bundleManager.queryAbilityInfo](js-apis-bundleManager.md#bundlemanagerqueryabilityinfo)替代。 1322 1323queryAbilityByWant(want: Want, bundleFlags: number, userId?: number): Promise\<Array\<AbilityInfo\>\> 1324 1325以异步方法根据给定的意图获取Ability组件信息,使用Promise形式返回结果。 1326 1327获取调用方自己的信息时不需要权限。 1328 1329**需要权限:** 1330 1331ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 1332 1333**系统能力:** 1334 1335SystemCapability.BundleManager.BundleFramework 1336 1337**参数:** 1338 1339| 参数名 | 类型 | 必填 | 说明 | 1340| ----------- | ------ | ---- | ------------------------------------- | 1341| want | [Want](js-apis-application-want.md) | 是 | 包含要查询的应用程序包名称的意图。 | 1342| bundleFlags | number | 是 | 用于指定返回abilityInfo信息。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中Ability信息相关flag。 | 1343| userId | number | 否 | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 | 1344 1345**返回值:** 1346 1347| 类型 | 说明 | 1348| ---------------------------- | --------------------- | 1349| Promise<Array\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)>> | Promise形式返回Ability信息。 | 1350 1351**示例:** 1352 1353```ts 1354let bundleFlags = 0; 1355let userId = 100; 1356let want = { 1357 bundleName : "com.example.myapplication", 1358 abilityName : "com.example.myapplication.MainAbility" 1359}; 1360bundle.queryAbilityByWant(want, bundleFlags, userId) 1361.then((data) => { 1362 console.info('Operation successful. Data: ' + JSON.stringify(data)); 1363}).catch((error) => { 1364 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 1365}) 1366``` 1367 1368 1369 1370## bundle.queryAbilityByWant<sup>deprecated<sup> 1371 1372> 从API version 9开始不再维护,建议使用[bundleManager.queryAbilityInfo](js-apis-bundleManager.md#bundlemanagerqueryabilityinfo)替代。 1373 1374queryAbilityByWant(want: Want, bundleFlags: number, userId: number, callback: AsyncCallback\<Array\<AbilityInfo\>\>): void 1375 1376以异步方法根据给定的意图获取指定用户下Ability信息,使用callback形式返回结果。 1377 1378获取调用方自己的信息时不需要权限。 1379 1380**需要权限:** 1381 1382ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 1383 1384**系统能力:** 1385 1386SystemCapability.BundleManager.BundleFramework 1387 1388**参数:** 1389 1390| 参数名 | 类型 | 必填 | 说明 | 1391|-------------|---------------------------------------------------------------------|-----|-------------------------------------------------------------------------| 1392| want | [Want](js-apis-application-want.md) | 是 | 指示包含要查询的应用程序包名称的意图。 | 1393| bundleFlags | number | 是 | 用于指定返回abilityInfo信息。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中Ability信息相关flag。 | 1394| userId | number | 是 | 用户ID。取值范围:大于等于0。 | 1395| callback | AsyncCallback<Array\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)>> | 是 | 程序启动作为入参的回调函数,返回Ability信息。 | 1396 1397**示例:** 1398 1399```ts 1400let bundleFlags = 0; 1401let userId = 100; 1402let want = { 1403 bundleName : "com.example.myapplication", 1404 abilityName : "com.example.myapplication.MainAbility" 1405}; 1406bundle.queryAbilityByWant(want, bundleFlags, userId, (err, data) => { 1407 if (err) { 1408 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 1409 return; 1410 } 1411 console.info('Operation successful. Data:' + JSON.stringify(data)); 1412}) 1413``` 1414 1415## bundle.queryAbilityByWant<sup>deprecated<sup> 1416 1417> 从API version 9开始不再维护,建议使用[bundleManager.queryAbilityInfo](js-apis-bundleManager.md#bundlemanagerqueryabilityinfo)替代。 1418 1419queryAbilityByWant(want: Want, bundleFlags: number, callback: AsyncCallback\<Array\<AbilityInfo\>\>): void; 1420 1421以异步方法根据给定的意图获取Ability信息,使用callback形式返回结果。 1422 1423获取调用方自己的信息时不需要权限。 1424 1425**需要权限:** 1426 1427ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 1428 1429**系统能力:** 1430 1431SystemCapability.BundleManager.BundleFramework 1432 1433**参数:** 1434 1435| 参数名 | 类型 | 必填 | 说明 | 1436|-------------|---------------------------------------------------------------------|-----|-------------------------------------------------------------------------| 1437| want | [Want](js-apis-application-want.md) | 是 | 指示包含要查询的应用程序包名称的意图。 | 1438| bundleFlags | number | 是 | 用于指定返回abilityInfo信息。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中Ability信息相关flag。 | 1439| callback | AsyncCallback<Array\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)>> | 是 | 程序启动作为入参的回调函数,返回Ability信息。 | 1440 1441**示例:** 1442 1443```ts 1444let bundleFlags = 0; 1445let want = { 1446 bundleName : "com.example.myapplication", 1447 abilityName : "com.example.myapplication.MainAbility" 1448}; 1449bundle.queryAbilityByWant(want, bundleFlags, (err, data) => { 1450 if (err) { 1451 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 1452 return; 1453 } 1454 console.info('Operation successful. Data:' + JSON.stringify(data)); 1455}) 1456``` 1457 1458 1459 1460## bundle.getLaunchWantForBundle<sup>deprecated<sup> 1461 1462> 从API version 9开始不再维护,建议使用[bundleManager.getLaunchWantForBundle](js-apis-bundleManager.md#bundlemanagergetlaunchwantforbundle)替代。 1463 1464getLaunchWantForBundle(bundleName: string): Promise\<Want> 1465 1466以异步方法查询拉起指定应用的want对象,使用Promise形式返回结果。 1467 1468**需要权限:** 1469 1470ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 1471 1472**系统能力:** 1473 1474SystemCapability.BundleManager.BundleFramework 1475 1476**参数:** 1477 1478| 参数名 | 类型 | 必填 | 说明 | 1479| ---------- | ------ | ---- | ------------------------ | 1480| bundleName | string | 是 | 要查询的应用程序包名称。 | 1481 1482**返回值:** 1483| 类型 | 说明 | 1484| -------------- | -------------------------------------- | 1485| Promise\<[Want](js-apis-application-want.md)> | 返回值为Promise对象,Promise中包含拉起指定应用的Want对象。 | 1486 1487**示例:** 1488 1489```ts 1490let bundleName = "com.example.myapplication"; 1491bundle.getLaunchWantForBundle(bundleName) 1492.then((data) => { 1493 console.info('Operation successful. Data: ' + JSON.stringify(data)); 1494}).catch((error) => { 1495 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 1496}) 1497``` 1498 1499## bundle.getLaunchWantForBundle<sup>deprecated<sup> 1500 1501> 从API version 9开始不再维护,建议使用[bundleManager.getLaunchWantForBundle](js-apis-bundleManager.md#bundlemanagergetlaunchwantforbundle)替代。 1502 1503getLaunchWantForBundle(bundleName: string, callback: AsyncCallback\<Want>): void; 1504 1505以异步方法查询拉起指定应用的want对象,使用callback形式返回结果。 1506 1507**需要权限:** 1508 1509ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 1510 1511**系统能力:** 1512 1513SystemCapability.BundleManager.BundleFramework 1514 1515**参数:** 1516 1517| 参数名 | 类型 | 必填 | 说明 | 1518| ---------- | --------------------------------------------------- | ---- | -------------------------------------------------------- | 1519| bundleName | string | 是 | 要查询的应用程序包名称。 | 1520| callback | AsyncCallback\<[Want](js-apis-application-want.md)> | 是 | 程序启动作为入参的回调函数,返回拉起指定应用的want对象。 | 1521 1522**示例:** 1523 1524```ts 1525let bundleName = "com.example.myapplication"; 1526bundle.getLaunchWantForBundle(bundleName, (err, data) => { 1527 if (err) { 1528 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 1529 return; 1530 } 1531 console.info('Operation successful. Data:' + JSON.stringify(data)); 1532}) 1533``` 1534 1535 1536## bundle.getNameForUid<sup>8+</sup> <sup>deprecated<sup> 1537 1538> 从API version 9开始不再维护,建议使用[bundleManager.getBundleNameByUid](js-apis-bundleManager.md#bundlemanagergetbundlenamebyuid)替代。 1539 1540getNameForUid(uid: number): Promise\<string> 1541 1542以异步方法通过uid获取对应的包名,使用Promise形式返回结果。 1543 1544**系统能力:** 1545 1546SystemCapability.BundleManager.BundleFramework 1547 1548**参数:** 1549 1550| 参数名 | 类型 | 必填 | 说明 | 1551| ------ | ------ | ---- | ------------- | 1552| uid | number | 是 | 要查询的uid。 | 1553 1554**返回值:** 1555| 类型 | 说明 | 1556| ---------------- | --------------------------------- | 1557| Promise\<string> | 返回值为Promise对象,Promise中包含指定uid的包名称。 | 1558 1559**示例:** 1560 1561```ts 1562let uid = 20010005; 1563bundle.getNameForUid(uid) 1564.then((data) => { 1565 console.info('Operation successful. Data: ' + JSON.stringify(data)); 1566}).catch((error) => { 1567 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 1568}) 1569``` 1570 1571## bundle.getNameForUid<sup>8+</sup> <sup>deprecated<sup> 1572 1573> 从API version 9开始不再维护,建议使用[bundleManager.getBundleNameByUid](js-apis-bundleManager.md#bundlemanagergetbundlenamebyuid)替代。 1574 1575getNameForUid(uid: number, callback: AsyncCallback\<string>) : void 1576 1577以异步方法通过uid获取对应的包名,使用callback形式返回结果。 1578 1579**系统能力:** 1580 1581SystemCapability.BundleManager.BundleFramework 1582 1583**参数:** 1584 1585| 参数名 | 类型 | 必填 | 说明 | 1586|----------|------------------------|-----|----------------------------| 1587| uid | number | 是 | 要查询的uid。 | 1588| callback | AsyncCallback\<string> | 是 | 程序启动作为入参的回调函数,返回指定uid的包名称。 | 1589 1590**示例:** 1591 1592```ts 1593let uid = 20010005; 1594bundle.getNameForUid(uid, (err, data) => { 1595 if (err) { 1596 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 1597 return; 1598 } 1599 console.info('Operation successful. Data:' + JSON.stringify(data)); 1600}) 1601``` 1602 1603 1604## bundle.getAbilityIcon<sup>8+</sup> <sup>deprecated<sup> 1605 1606> 从API version 9开始不再维护,建议使用[resourceManager.getMediaContent](js-apis-resource-manager.md#getmediacontent9)替代。 1607 1608getAbilityIcon(bundleName: string, abilityName: string): Promise\<image.PixelMap>; 1609 1610以异步方法通过bundleName和abilityName获取对应Icon的[PixelMap](js-apis-image.md),使用Promise形式返回结果。 1611 1612获取调用方自己的信息时不需要权限。 1613 1614**需要权限:** 1615 1616ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 1617 1618**系统能力:** 1619 1620SystemCapability.BundleManager.BundleFramework 1621 1622**参数:** 1623 1624| 参数名 | 类型 | 必填 | 说明 | 1625| ----------- | ------ | ---- |-----------------| 1626| bundleName | string | 是 | 要查询的应用包名。 | 1627| abilityName | string | 是 | 要查询的Ability组件名。 | 1628 1629**返回值:** 1630| 类型 | 说明 | 1631| --------------------- | ------------------------------------------------------------ | 1632| Promise\<image.PixelMap> | 返回值为[PixelMap](js-apis-image.md)。 | 1633 1634**示例:** 1635 1636```ts 1637let bundleName = "com.example.myapplication"; 1638let abilityName = "com.example.myapplication.MainAbility"; 1639bundle.getAbilityIcon(bundleName, abilityName) 1640.then((data) => { 1641 console.info('Operation successful. Data: ' + JSON.stringify(data)); 1642}).catch((error) => { 1643 console.error('Operation failed. Cause: ' + JSON.stringify(error)); 1644}) 1645``` 1646 1647## bundle.getAbilityIcon<sup>8+</sup> <sup>deprecated<sup> 1648 1649> 从API version 9开始不再维护,建议使用[resourceManager.getMediaContent](js-apis-resource-manager.md#getmediacontent9)替代。 1650 1651getAbilityIcon(bundleName: string, abilityName: string, callback: AsyncCallback\<image.PixelMap>): void; 1652 1653以异步方法通过bundleName和abilityName获取对应Icon的[PixelMap](js-apis-image.md),使用callback形式返回结果。 1654 1655获取调用方自己的信息时不需要权限。 1656 1657**需要权限:** 1658 1659ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 1660 1661 1662**系统能力:** 1663 1664SystemCapability.BundleManager.BundleFramework 1665 1666**参数:** 1667 1668| 参数名 | 类型 | 必填 | 说明 | 1669| ----------- | ---------------------------------------- | ---- |-------------------------------------------------| 1670| bundleName | string | 是 | 要查询的应用包名称。 | 1671| abilityName | string | 是 | 要查询的Ability组件名。 | 1672| callback | AsyncCallback\<image.PixelMap> | 是 | 程序启动作为入参的回调函数,返回指定[PixelMap](js-apis-image.md)。 | 1673 1674**示例:** 1675 1676```ts 1677let bundleName = "com.example.myapplication"; 1678let abilityName = "com.example.myapplication.MainAbility"; 1679bundle.getAbilityIcon(bundleName, abilityName, (err, data) => { 1680 if (err) { 1681 console.error('Operation failed. Cause: ' + JSON.stringify(err)); 1682 return; 1683 } 1684 console.info('Operation successful. Data:' + JSON.stringify(data)); 1685}) 1686``` 1687 1688## InstallErrorCode<sup>deprecated<sup> 1689> 从API version 9开始不再维护,不推荐使用。 1690 1691 **系统能力:** SystemCapability.BundleManager.BundleFramework 1692 1693| 名称 | 值 | 说明 | 1694| ---------------------------------------------------- | ---- | ------------------------------------------------ | 1695| SUCCESS | 0 | 安装成功 | 1696| STATUS_INSTALL_FAILURE | 1 | 安装失败(不存在安装的应用) | 1697| STATUS_INSTALL_FAILURE_ABORTED | 2 | 安装中止 | 1698| STATUS_INSTALL_FAILURE_INVALID | 3 | 安装参数无效 | 1699| STATUS_INSTALL_FAILURE_CONFLICT | 4 | 安装冲突 (常见于升级和已有应用基本信息不一致) | 1700| STATUS_INSTALL_FAILURE_STORAGE | 5 | 存储包信息失败 | 1701| STATUS_INSTALL_FAILURE_INCOMPATIBLE | 6 | 安装不兼容(常见于版本降级安装或者签名信息错误) | 1702| STATUS_UNINSTALL_FAILURE | 7 | 卸载失败 (不存在卸载的应用) | 1703| STATUS_UNINSTALL_FAILURE_BLOCKED | 8 | 卸载中止 (没有使用) | 1704| STATUS_UNINSTALL_FAILURE_ABORTED | 9 | 卸载中止 (参数无效导致) | 1705| STATUS_UNINSTALL_FAILURE_CONFLICT | 10 | 卸载冲突 (卸载系统应用失败, 结束应用进程失败) | 1706| STATUS_INSTALL_FAILURE_DOWNLOAD_TIMEOUT | 0x0B | 安装失败 (下载超时) | 1707| STATUS_INSTALL_FAILURE_DOWNLOAD_FAILED | 0x0C | 安装失败 (下载失败) | 1708| STATUS_RECOVER_FAILURE_INVALID<sup>8+</sup> | 0x0D | 恢复预置应用失败 | 1709| STATUS_ABILITY_NOT_FOUND | 0x40 | Ability未找到 | 1710| STATUS_BMS_SERVICE_ERROR | 0x41 | BMS服务错误 | 1711| STATUS_FAILED_NO_SPACE_LEFT<sup>8+</sup> | 0x42 | 设备空间不足 | 1712| STATUS_GRANT_REQUEST_PERMISSIONS_FAILED<sup>8+</sup> | 0x43 | 应用授权失败 | 1713| STATUS_INSTALL_PERMISSION_DENIED<sup>8+</sup> | 0x44 | 缺少安装权限 | 1714| STATUS_UNINSTALL_PERMISSION_DENIED<sup>8+</sup> | 0x45 | 缺少卸载权限 | 1715 1716## BundleFlag<sup>deprecated<sup> 1717 1718> 从API version 9开始不再维护,建议使用[bundleManager.BundleFlag](js-apis-bundleManager.md#bundleflag)替代。 1719 1720包信息标志,指示需要获取的包信息的内容。 1721 1722当接口与标志不匹配时,该标志会被忽略,例如获取application时使用GET_ABILITY_INFO_WITH_PERMISSION对结果不会产生影响。 1723 1724标志可以叠加使用,例如使用GET_APPLICATION_INFO_WITH_PERMISSION + GET_APPLICATION_INFO_WITH_DISABLE可以使结果同时包含应用权限信息和被禁用的应用信息。 1725 1726 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework 1727 1728| 名称 | 值 | 说明 | 1729| ----------------------------------------------- | ---------- | ------------------------------- | 1730| GET_BUNDLE_DEFAULT | 0x00000000 | 获取默认的应用信息 | 1731| GET_BUNDLE_WITH_ABILITIES | 0x00000001 | 获取包括Ability信息的包信息 | 1732| GET_ABILITY_INFO_WITH_PERMISSION | 0x00000002 | 获取包括权限的Ability信息 | 1733| GET_ABILITY_INFO_WITH_APPLICATION | 0x00000004 | 获取包括Application的ability信息 | 1734| GET_APPLICATION_INFO_WITH_PERMISSION | 0x00000008 | 获取包括权限的应用信息 | 1735| GET_BUNDLE_WITH_REQUESTED_PERMISSION | 0x00000010 | 获取包括所需权限的包信息 | 1736| GET_ABILITY_INFO_WITH_METADATA<sup>8+</sup> | 0x00000020 | 获取ability的元数据信息 | 1737| GET_APPLICATION_INFO_WITH_METADATA<sup>8+</sup> | 0x00000040 | 获取应用的元数据信息 | 1738| GET_ABILITY_INFO_SYSTEMAPP_ONLY<sup>8+</sup> | 0x00000080 | 获取仅包括系统应用的ability信息 | 1739| GET_ABILITY_INFO_WITH_DISABLE<sup>8+</sup> | 0x00000100 | 获取包括被禁用的ability信息 | 1740| GET_APPLICATION_INFO_WITH_DISABLE<sup>8+</sup> | 0x00000200 | 获取包括被禁用的应用信息 | 1741| GET_ALL_APPLICATION_INFO | 0xFFFF0000 | 获取应用所有的信息 | 1742 1743## BundleOptions<sup>deprecated<sup> 1744> 从API version 9开始不再维护,不推荐使用。 1745 1746查询选项,包含userId。 1747 1748 **系统能力:** SystemCapability.BundleManager.BundleFramework 1749 1750| 名称 | 类型 | 可读 | 可写 | 说明 | 1751| ------ | ------ | ---- | ---- | ----------------------------------------------------- | 1752| userId | number | 是 | 是 | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 | 1753 1754## AbilityType<sup>deprecated<sup> 1755 1756> 从API version 9开始不再维护,建议使用[bundleManager.AbilityType](js-apis-bundleManager.md#abilitytype)替代。 1757 1758Ability组件类型。 1759 1760 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework 1761 1762| 名称 | 值 | 说明 | 1763| ------- | ---- | --------------------------- | 1764| UNKNOWN | 无 | 未知Ability类型 | 1765| PAGE | 无 | 表示基于Page模板开发的FA,用于提供与用户交互的能力 | 1766| SERVICE | 无 | 表示基于Service模板开发的PA,用于提供后台运行任务的能力 | 1767| DATA | 无 | 表示基于Data模板开发的PA,用于对外部提供统一的数据访问对象 | 1768 1769## DisplayOrientation<sup>deprecated<sup> 1770 1771> 从API version 9开始不再维护,建议使用[bundleManager.DisplayOrientation](js-apis-bundleManager.md#displayorientation)替代。 1772 1773屏幕显示方向。 1774 1775 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework 1776 1777| 名称 | 值 | 说明 | 1778| ------------- | ---- | ------------------------ | 1779| UNSPECIFIED | 无 | 屏幕方向--不指定 | 1780| LANDSCAPE | 无 | 屏幕方向--横屏 | 1781| PORTRAIT | 无 | 屏幕方向--竖屏 | 1782| FOLLOW_RECENT | 无 | 屏幕方向--紧跟上一个组件 | 1783## LaunchMode<sup>deprecated<sup> 1784 1785> 从API version 9开始不再维护,建议使用[bundleManager.LaunchType](js-apis-bundleManager.md#launchtype)替代。 1786 1787Ability组件的启动模式。 1788 1789 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework 1790 1791| 名称 | 值 | 说明 | 1792| --------- | ---- | ------------------- | 1793| SINGLETON | 0 | Ability只有一个实例 | 1794| STANDARD | 1 | Ability有多个实例 | 1795 1796## AbilitySubType<sup>deprecated<sup> 1797> 从API version 9开始不再维护,不推荐使用。 1798 1799Ability组件的子类型。 1800 1801 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework 1802 1803| 名称 | 值 | 说明 | 1804| ----------- | ---- | ----------------------------- | 1805| UNSPECIFIED | 0 | 未定义Ability子类型 | 1806| CA | 1 | Ability子类型是带有 UI 的服务 | 1807 1808## ColorMode<sup>deprecated<sup> 1809> 从API version 9开始不再维护,不推荐使用。 1810 1811应用、卡片等的颜色模式。 1812 1813 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework 1814 1815| 名称 | 值 | 说明 | 1816| ---------- | ---- | -------- | 1817| AUTO_MODE | -1 | 自动模式 | 1818| DARK_MODE | 0 | 黑色模式 | 1819| LIGHT_MODE | 1 | 亮度模式 | 1820 1821 1822## GrantStatus<sup>deprecated<sup> 1823 1824> 从API version 9开始不再维护,建议使用[bundleManager.PermissionGrantState](js-apis-bundleManager.md#permissiongrantstate)替代。 1825 1826权限授予状态。 1827 1828 **系统能力:** 以下各项对应的系统能力均为SystemCapability.BundleManager.BundleFramework 1829 1830| 名称 | 值 | 说明 | 1831| ------------------ | ---- | ------------ | 1832| PERMISSION_DENIED | -1 | 拒绝授予权限 | 1833| PERMISSION_GRANTED | 0 | 授予权限 | 1834