1# @ohos.app.ability.appManager (appManager) 2 3appManager模块提供App管理的能力,包括查询当前是否处于稳定性测试场景、查询是否为ram受限设备、获取应用程序的内存大小、获取有关运行进程的信息等。 4 5> **说明:** 6> 7> 本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8 9## 导入模块 10 11```ts 12import appManager from '@ohos.app.ability.appManager'; 13``` 14 15## appManager.isRunningInStabilityTest 16 17static isRunningInStabilityTest(callback: AsyncCallback<boolean>): void 18 19查询当前是否处于稳定性测试场景。 20 21**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 22 23**返回值:** 24 25 | 类型| 说明 | 26 | -------- | -------- | 27 |AsyncCallback<boolean> |以回调方式返回接口运行结果及当前是否处于稳定性测试场景,可进行错误处理或其他自定义处理。true: 处于稳定性测试场景,false:处于非稳定性测试场景。 | 28 29**错误码**: 30 31| 错误码ID | 错误信息 | 32| ------- | -------- | 33| 16000050 | Internal error. | 34 35以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 36 37**示例:** 38 39```ts 40import appManager from '@ohos.app.ability.appManager'; 41 42appManager.isRunningInStabilityTest((err, flag) => { 43 if (err.code !== 0) { 44 console.log('isRunningInStabilityTest faile, err: ' + JSON.stringify(err)); 45 } else { 46 console.log('The result of isRunningInStabilityTest is:' + JSON.stringify(flag)); 47 } 48}); 49``` 50 51 52## appManager.isRunningInStabilityTest 53 54static isRunningInStabilityTest(): Promise<boolean> 55 56查询当前是否处于稳定性测试场景。 57 58**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 59 60**返回值:** 61 62 | 类型 | 说明 | 63 | -------- | -------- | 64 | Promise<boolean> | 以Promise方式返回接口运行结果及当前是否处于稳定性测试场景,可进行错误处理或其他自定义处理。true: 处于稳定性测试场景,false:处于非稳定性测试场景。 | 65 66**错误码**: 67 68| 错误码ID | 错误信息 | 69| ------- | -------- | 70| 16000050 | Internal error. | 71 72以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 73 74**示例:** 75 76```ts 77import appManager from '@ohos.app.ability.appManager'; 78 79appManager.isRunningInStabilityTest().then((flag) => { 80 console.log('The result of isRunningInStabilityTest is:' + JSON.stringify(flag)); 81}).catch((error) => { 82 console.log('error:' + JSON.stringify(error)); 83}); 84``` 85 86 87## appManager.isRamConstrainedDevice 88 89isRamConstrainedDevice(): Promise\<boolean>; 90 91查询是否为ram受限设备。 92 93**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 94 95**返回值:** 96 97 | 类型 | 说明 | 98 | -------- | -------- | 99 | Promise<boolean> | 以Promise方式返回接口运行结果及当前设备是否为ram受限设备,可进行错误处理或其他自定义处理。true:当前设备为ram受限设备,false:当前设备为非ram受限设备。 | 100 101**错误码**: 102 103| 错误码ID | 错误信息 | 104| ------- | -------- | 105| 16000050 | Internal error. | 106 107以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 108 109**示例:** 110 111```ts 112import appManager from '@ohos.app.ability.appManager'; 113 114appManager.isRamConstrainedDevice().then((data) => { 115 console.log('The result of isRamConstrainedDevice is:' + JSON.stringify(data)); 116}).catch((error) => { 117 console.log('error:' + JSON.stringify(error)); 118}); 119``` 120 121## appManager.isRamConstrainedDevice 122 123isRamConstrainedDevice(callback: AsyncCallback\<boolean>): void; 124 125查询是否为ram受限设备。 126 127**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 128 129**返回值:** 130 131 | 类型 | 说明 | 132 | -------- | -------- | 133 | AsyncCallback<boolean> |以回调方式返回接口运行结果及当前设备是否为ram受限设备,可进行错误处理或其他自定义处理。true:当前设备为ram受限设备,false:当前设备为非ram受限设备。 | 134 135**错误码**: 136 137| 错误码ID | 错误信息 | 138| ------- | -------- | 139| 16000050 | Internal error. | 140 141以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 142 143**示例:** 144 145```ts 146import appManager from '@ohos.app.ability.appManager'; 147 148appManager.isRamConstrainedDevice((err, data) => { 149 if (err.code !== 0) { 150 console.log('isRamConstrainedDevice faile, err: ' + JSON.stringify(err)); 151 } else { 152 console.log('The result of isRamConstrainedDevice is:' + JSON.stringify(data)); 153 } 154}); 155``` 156 157## appManager.getAppMemorySize 158 159getAppMemorySize(): Promise\<number>; 160 161获取应用程序的内存大小。 162 163**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 164 165**返回值:** 166 167 | 类型 | 说明 | 168 | -------- | -------- | 169 | Promise<number> | 以Promise方式返回接口运行结果及应用程序内存大小,可进行错误处理或其他自定义处理。 | 170 171**错误码**: 172 173| 错误码ID | 错误信息 | 174| ------- | -------- | 175| 16000050 | Internal error. | 176 177以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 178 179**示例:** 180 181```ts 182import appManager from '@ohos.app.ability.appManager'; 183 184appManager.getAppMemorySize().then((data) => { 185 console.log('The size of app memory is:' + JSON.stringify(data)); 186}).catch((error) => { 187 console.log('error:' + JSON.stringify(error)); 188}); 189``` 190 191## appManager.getAppMemorySize 192 193getAppMemorySize(callback: AsyncCallback\<number>): void; 194 195获取应用程序的内存大小。 196 197**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 198 199**返回值:** 200 201 | 类型 | 说明 | 202 | -------- | -------- | 203 |AsyncCallback<number> |以回调方式返回接口运行结果及应用程序内存大小,可进行错误处理或其他自定义处理。 | 204 205**错误码**: 206 207| 错误码ID | 错误信息 | 208| ------- | -------- | 209| 16000050 | Internal error. | 210 211以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 212 213**示例:** 214 215```ts 216import appManager from '@ohos.app.ability.appManager'; 217 218appManager.getAppMemorySize((err, data) => { 219 if (err.code !== 0) { 220 console.log('getAppMemorySize faile, err: ' + JSON.stringify(err)); 221 } else { 222 console.log('The size of app memory is:' + JSON.stringify(data)); 223 } 224}); 225``` 226 227## appManager.getRunningProcessInformation 228 229getRunningProcessInformation(): Promise\<Array\<ProcessInformation>>; 230 231获取有关运行进程的信息。 232 233**需要权限**:ohos.permission.GET_RUNNING_INFO 234 235**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 236 237**返回值:** 238 239| 类型 | 说明 | 240| -------- | -------- | 241| Promise\<Array\<[ProcessInformation](js-apis-inner-application-processInformation.md)>> | 以Promise方式返回接口运行结果及有关运行进程的信息,可进行错误处理或其他自定义处理。 | 242 243**错误码**: 244 245| 错误码ID | 错误信息 | 246| ------- | -------- | 247| 16000050 | Internal error. | 248 249以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 250 251**示例:** 252 253```ts 254import appManager from '@ohos.app.ability.appManager'; 255 256appManager.getRunningProcessInformation().then((data) => { 257 console.log('The running process information is:' + JSON.stringify(data)); 258}).catch((error) => { 259 console.log('error:' + JSON.stringify(error)); 260}); 261``` 262 263## appManager.getRunningProcessInformation<sup>9+</sup> 264 265getRunningProcessInformation(callback: AsyncCallback\<Array\<ProcessInformation>>): void; 266 267获取有关运行进程的信息。 268 269**需要权限**:ohos.permission.GET_RUNNING_INFO 270 271**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 272 273**返回值:** 274 275| 类型 | 说明 | 276| -------- | -------- | 277|AsyncCallback\<Array\<[ProcessInformation](js-apis-inner-application-processInformation.md)>> | 以回调方式返回接口运行结果及有关运行进程的信息,可进行错误处理或其他自定义处理。 | 278 279**错误码**: 280 281| 错误码ID | 错误信息 | 282| ------- | -------- | 283| 16000050 | Internal error. | 284 285以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 286 287**示例:** 288 289```ts 290import appManager from '@ohos.app.ability.appManager'; 291 292appManager.getRunningProcessInformation((err, data) => { 293 if (err.code !== 0) { 294 console.log('getRunningProcessInformation faile, err: ' + JSON.stringify(err)); 295 } else { 296 console.log('The process running information is:' + JSON.stringify(data)); 297 } 298}); 299``` 300 301## appManager.on 302 303on(type: 'applicationState', observer: ApplicationStateObserver): number; 304 305注册全部应用程序的状态观测器。 306 307**需要权限**:ohos.permission.RUNNING_STATE_OBSERVER 308 309**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 310 311**系统API**:该接口为系统接口,三方应用不支持调用。 312 313**参数:** 314 315| 参数名 | 类型 | 必填 | 说明 | 316| -------- | -------- | -------- | -------- | 317| type | string | 是 | 调用接口类型,固定填'applicationState'字符串。 | 318| observer | [ApplicationStateObserver](./js-apis-inner-application-applicationStateObserver.md) | 是 | 应用状态观测器,用于观测应用的生命周期变化。 | 319 320**返回值:** 321 322| 类型 | 说明 | 323| --- | --- | 324| number | 已注册观测器的数字代码,可用于off接口取消注册观测器。| 325 326**错误码**: 327 328| 错误码ID | 错误信息 | 329| ------- | -------- | 330| 16000050 | Internal error. | 331 332以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 333 334**示例:** 335 336```ts 337import appManager from '@ohos.app.ability.appManager'; 338 339let applicationStateObserver = { 340 onForegroundApplicationChanged(appStateData) { 341 console.log(`[appManager] onForegroundApplicationChanged: ${JSON.stringify(appStateData)}`); 342 }, 343 onAbilityStateChanged(abilityStateData) { 344 console.log(`[appManager] onAbilityStateChanged: ${JSON.stringify(abilityStateData)}`); 345 }, 346 onProcessCreated(processData) { 347 console.log(`[appManager] onProcessCreated: ${JSON.stringify(processData)}`); 348 }, 349 onProcessDied(processData) { 350 console.log(`[appManager] onProcessDied: ${JSON.stringify(processData)}`); 351 }, 352 onProcessStateChanged(processData) { 353 console.log(`[appManager] onProcessStateChanged: ${JSON.stringify(processData)}`); 354 } 355}; 356try { 357 const observerId = appManager.on('applicationState', applicationStateObserver); 358 console.log(`[appManager] observerCode: ${observerId}`); 359} catch (paramError) { 360 console.log(`[appManager] error: ${paramError.code}, ${paramError.message} `); 361} 362``` 363 364## appManager.on 365 366on(type: 'applicationState', observer: ApplicationStateObserver, bundleNameList: Array\<string>): number; 367 368注册指定应用程序的状态观测器。 369 370**需要权限**:ohos.permission.RUNNING_STATE_OBSERVER 371 372**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 373 374**系统API**:该接口为系统接口,三方应用不支持调用。 375 376**参数:** 377 378| 参数名 | 类型 | 必填 | 说明 | 379| -------- | -------- | -------- | -------- | 380| type | string | 是 | 调用接口类型,固定填'applicationState'字符串。 | 381| observer | [ApplicationStateObserver](./js-apis-inner-application-applicationStateObserver.md) | 是 | 应用状态观测器,用于观测应用的生命周期变化。 | 382| bundleNameList | `Array<string>` | 是 | 表示需要注册监听的bundleName数组。最大值128。 | 383 384**返回值:** 385 386| 类型 | 说明 | 387| --- | --- | 388| number | 已注册观测器的数字代码,可用于off接口注销观测器。| 389 390**错误码**: 391 392| 错误码ID | 错误信息 | 393| ------- | -------- | 394| 16000050 | Internal error. | 395 396以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 397 398**示例:** 399 400```ts 401import appManager from '@ohos.app.ability.appManager'; 402 403let applicationStateObserver = { 404 onForegroundApplicationChanged(appStateData) { 405 console.log(`[appManager] onForegroundApplicationChanged: ${JSON.stringify(appStateData)}`); 406 }, 407 onAbilityStateChanged(abilityStateData) { 408 console.log(`[appManager] onAbilityStateChanged: ${JSON.stringify(abilityStateData)}`); 409 }, 410 onProcessCreated(processData) { 411 console.log(`[appManager] onProcessCreated: ${JSON.stringify(processData)}`); 412 }, 413 onProcessDied(processData) { 414 console.log(`[appManager] onProcessDied: ${JSON.stringify(processData)}`); 415 }, 416 onProcessStateChanged(processData) { 417 console.log(`[appManager] onProcessStateChanged: ${JSON.stringify(processData)}`); 418 } 419}; 420let bundleNameList = ['bundleName1', 'bundleName2']; 421try { 422 const observerId = appManager.on('applicationState', applicationStateObserver, bundleNameList); 423 console.log(`[appManager] observerCode: ${observerId}`); 424} catch (paramError) { 425 console.log(`[appManager] error: ${paramError.code}, ${paramError.message} `); 426} 427``` 428 429## appManager.off 430 431off(type: 'applicationState', observerId: number, callback: AsyncCallback\<void>): void; 432 433取消注册应用程序状态观测器。 434 435**需要权限**:ohos.permission.RUNNING_STATE_OBSERVER 436 437**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 438 439**系统API**:该接口为系统接口,三方应用不支持调用。 440 441**参数:** 442 443| 参数名 | 类型 | 必填 | 说明 | 444| -------- | -------- | -------- | -------- | 445| type | string | 是 | 调用接口类型,固定填'applicationState'字符串。 | 446| observerId | number | 是 | 表示观测器的编号代码。 | 447| callback | AsyncCallback\<void> | 是 | 以回调方式返回接口运行结果,可进行错误处理或其他自定义处理。 | 448 449**错误码**: 450 451| 错误码ID | 错误信息 | 452| ------- | -------- | 453| 16000050 | Internal error. | 454 455以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 456 457**示例:** 458 459```ts 460import appManager from '@ohos.app.ability.appManager'; 461 462let observerId = 0; 463 464// 1.注册应用状态监听器 465let applicationStateObserver = { 466 onForegroundApplicationChanged(appStateData) { 467 console.log(`[appManager] onForegroundApplicationChanged: ${JSON.stringify(appStateData)}`); 468 }, 469 onAbilityStateChanged(abilityStateData) { 470 console.log(`[appManager] onAbilityStateChanged: ${JSON.stringify(abilityStateData)}`); 471 }, 472 onProcessCreated(processData) { 473 console.log(`[appManager] onProcessCreated: ${JSON.stringify(processData)}`); 474 }, 475 onProcessDied(processData) { 476 console.log(`[appManager] onProcessDied: ${JSON.stringify(processData)}`); 477 }, 478 onProcessStateChanged(processData) { 479 console.log(`[appManager] onProcessStateChanged: ${JSON.stringify(processData)}`); 480 } 481}; 482let bundleNameList = ['bundleName1', 'bundleName2']; 483try { 484 observerId = appManager.on('applicationState', applicationStateObserver, bundleNameList); 485 console.log(`[appManager] observerCode: ${observerId}`); 486} catch (paramError) { 487 console.log(`[appManager] error: ${paramError.code}, ${paramError.message} `); 488} 489 490// 2.注销应用状态监听器 491function unregisterApplicationStateObserverCallback(err) { 492 if (err.code !== 0) { 493 console.log('unregisterApplicationStateObserverCallback faile, err: ' + JSON.stringify(err)); 494 } else { 495 console.log('unregisterApplicationStateObserverCallback success.'); 496 } 497} 498try { 499 appManager.off('applicationState', observerId, unregisterApplicationStateObserverCallback); 500} catch (paramError) { 501 console.log('error: ' + paramError.code + ', ' + paramError.message); 502} 503``` 504 505## appManager.off 506 507off(type: 'applicationState', observerId: number): Promise\<void>; 508 509取消注册应用程序状态观测器。 510 511**需要权限**:ohos.permission.RUNNING_STATE_OBSERVER 512 513**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 514 515**系统API**:该接口为系统接口,三方应用不支持调用。 516 517**参数:** 518 519| 参数名 | 类型 | 必填 | 说明 | 520| -------- | -------- | -------- | -------- | 521| type | string | 是 | 调用接口类型,固定填'applicationState'字符串。 | 522| observerId | number | 是 | 表示观测器的编号代码。 | 523 524**返回值:** 525 526| 类型 | 说明 | 527| -------- | -------- | 528| Promise\<void> | 以Promise方式返回接口运行结果,可进行错误处理或其他自定义处理。 | 529 530**错误码**: 531 532| 错误码ID | 错误信息 | 533| ------- | -------- | 534| 16000050 | Internal error. | 535 536以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 537 538**示例:** 539 540```ts 541import appManager from '@ohos.app.ability.appManager'; 542 543let observerId = 0; 544 545// 1.注册应用状态监听器 546let applicationStateObserver = { 547 onForegroundApplicationChanged(appStateData) { 548 console.log(`[appManager] onForegroundApplicationChanged: ${JSON.stringify(appStateData)}`); 549 }, 550 onAbilityStateChanged(abilityStateData) { 551 console.log(`[appManager] onAbilityStateChanged: ${JSON.stringify(abilityStateData)}`); 552 }, 553 onProcessCreated(processData) { 554 console.log(`[appManager] onProcessCreated: ${JSON.stringify(processData)}`); 555 }, 556 onProcessDied(processData) { 557 console.log(`[appManager] onProcessDied: ${JSON.stringify(processData)}`); 558 }, 559 onProcessStateChanged(processData) { 560 console.log(`[appManager] onProcessStateChanged: ${JSON.stringify(processData)}`); 561 } 562}; 563let bundleNameList = ['bundleName1', 'bundleName2']; 564try { 565 observerId = appManager.on('applicationState', applicationStateObserver, bundleNameList); 566 console.log(`[appManager] observerCode: ${observerId}`); 567} catch (paramError) { 568 console.log(`[appManager] error: ${paramError.code}, ${paramError.message} `); 569} 570 571// 2.注销应用状态监听器 572try { 573 appManager.off('applicationState', observerId).then((data) => { 574 console.log('unregisterApplicationStateObserver success, data: ' + JSON.stringify(data)); 575 }).catch((err) => { 576 console.log('unregisterApplicationStateObserver faile, err: ' + JSON.stringify(err)); 577 }); 578} catch (paramError) { 579 console.log('error: ' + paramError.code + ', ' + paramError.message); 580} 581``` 582 583## appManager.getForegroundApplications 584 585getForegroundApplications(callback: AsyncCallback\<Array\<AppStateData>>): void; 586 587获取所有当前处于前台的应用信息。该应用信息由[AppStateData](js-apis-inner-application-appStateData.md)定义。 588 589**需要权限**:ohos.permission.GET_RUNNING_INFO 590 591**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 592 593**系统API**:该接口为系统接口,三方应用不支持调用。 594 595**错误码**: 596 597| 错误码ID | 错误信息 | 598| ------- | -------- | 599| 16000050 | Internal error. | 600 601以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 602 603**参数:** 604 605| 参数名 | 类型 | 必填 | 说明 | 606| -------- | -------- | -------- | -------- | 607| callback | AsyncCallback\<Array\<[AppStateData](js-apis-inner-application-appStateData.md)>> | 是 | 以Callback方式返回接口运行结果及应用状态数据数组,可进行错误处理或其他自定义处理。 | 608 609**示例:** 610 611```ts 612import appManager from '@ohos.app.ability.appManager'; 613 614function getForegroundApplicationsCallback(err, data) { 615 if (err.code !== 0) { 616 console.log('getForegroundApplicationsCallback fail, err: ' + JSON.stringify(err)); 617 } else { 618 console.log('getForegroundApplicationsCallback success, data: ' + JSON.stringify(data)); 619 } 620} 621try { 622 appManager.getForegroundApplications(getForegroundApplicationsCallback); 623} catch (paramError) { 624 console.log('error: ' + paramError.code + ', ' + paramError.message); 625} 626``` 627 628## appManager.getForegroundApplications 629 630getForegroundApplications(): Promise\<Array\<AppStateData>>; 631 632获取所有当前处于前台的应用信息。该应用信息由[AppStateData](js-apis-inner-application-appStateData.md)定义。 633 634**需要权限**:ohos.permission.GET_RUNNING_INFO 635 636**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 637 638**系统API**:该接口为系统接口,三方应用不支持调用。 639 640**返回值:** 641 642| 类型 | 说明 | 643| -------- | -------- | 644| Promise\<Array\<[AppStateData](js-apis-inner-application-appStateData.md)>> | 以Promise形式返回所有当前处于前台的应用信息。 | 645 646**错误码**: 647 648| 错误码ID | 错误信息 | 649| ------- | -------- | 650| 16000050 | Internal error. | 651 652以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 653 654**示例:** 655 656```ts 657import appManager from '@ohos.app.ability.appManager'; 658 659appManager.getForegroundApplications().then((data) => { 660 console.log('getForegroundApplications success, data: ' + JSON.stringify(data)); 661}).catch((err) => { 662 console.log('getForegroundApplications fail, err: ' + JSON.stringify(err)); 663}); 664``` 665 666## appManager.killProcessWithAccount 667 668killProcessWithAccount(bundleName: string, accountId: number): Promise\<void\> 669 670切断account进程(Promise形式)。 671 672**需要权限**:ohos.permission.CLEAN_BACKGROUND_PROCESSES,ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS,当accountId为当前用户时,不需要校验ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS权限。 673 674**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 675 676**系统API**: 此接口为系统接口,三方应用不支持调用。 677 678**参数:** 679 680| 参数名 | 类型 | 必填 | 说明 | 681| -------- | -------- | -------- | -------- | 682| bundleName | string | 是 | 应用Bundle名称。 | 683| accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | 684 685**错误码**: 686 687| 错误码ID | 错误信息 | 688| ------- | -------- | 689| 16000050 | Internal error. | 690 691以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 692 693**示例:** 694 695```ts 696import appManager from '@ohos.app.ability.appManager'; 697 698let bundleName = 'bundleName'; 699let accountId = 0; 700try { 701 appManager.killProcessWithAccount(bundleName, accountId).then(() => { 702 console.log('killProcessWithAccount success'); 703 }).catch((err) => { 704 console.error('killProcessWithAccount fail, err: ' + JSON.stringify(err)); 705 }); 706} catch (paramError) { 707 console.error('error: ' + paramError.code + ', ' + paramError.message); 708} 709``` 710 711 712## appManager.killProcessWithAccount 713 714killProcessWithAccount(bundleName: string, accountId: number, callback: AsyncCallback\<void\>): void 715 716切断account进程(callback形式)。 717 718**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 719 720**系统API**: 此接口为系统接口,三方应用不支持调用。 721 722**需要权限**:ohos.permission.CLEAN_BACKGROUND_PROCESSES,ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS,当accountId为当前用户时,不需要校验ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS权限。 723 724**参数:** 725 726 | 参数名 | 类型 | 必填 | 说明 | 727 | -------- | -------- | -------- | -------- | 728 | bundleName | string | 是 | 应用Bundle名称。 | 729 | accountId | number | 是 | 系统帐号的帐号ID,详情参考[getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess)。 | 730 | callback | AsyncCallback\<void\> | 是 | 以回调方式返回接口运行结果,可进行错误处理或其他自定义处理。 | 731 732**错误码**: 733 734| 错误码ID | 错误信息 | 735| ------- | -------- | 736| 16000050 | Internal error. | 737 738以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 739 740**示例:** 741 742```ts 743import appManager from '@ohos.app.ability.appManager'; 744 745let bundleName = 'bundleName'; 746let accountId = 0; 747function killProcessWithAccountCallback(err, data) { 748 if (err.code !== 0) { 749 console.log('killProcessWithAccountCallback fail, err: ' + JSON.stringify(err)); 750 } else { 751 console.log('killProcessWithAccountCallback success.'); 752 } 753} 754appManager.killProcessWithAccount(bundleName, accountId, killProcessWithAccountCallback); 755``` 756 757## appManager.killProcessesByBundleName 758 759killProcessesByBundleName(bundleName: string, callback: AsyncCallback\<void>); 760 761通过Bundle名称终止进程。 762 763**需要权限**:ohos.permission.CLEAN_BACKGROUND_PROCESSES 764 765**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 766 767**系统API**:该接口为系统接口,三方应用不支持调用。 768 769**参数:** 770 771| 参数名 | 类型 | 必填 | 说明 | 772| -------- | -------- | -------- | -------- | 773| bundleName | string | 是 | 表示Bundle名称。 | 774| callback | AsyncCallback\<void> | 是 | 以回调方式返回接口运行结果,可进行错误处理或其他自定义处理。 | 775 776**错误码**: 777 778| 错误码ID | 错误信息 | 779| ------- | -------- | 780| 16000050 | Internal error. | 781 782以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 783 784**示例:** 785 786```ts 787import appManager from '@ohos.app.ability.appManager'; 788 789let bundleName = 'bundleName'; 790function killProcessesByBundleNameCallback(err, data) { 791 if (err.code !== 0) { 792 console.log('killProcessesByBundleNameCallback fail, err: ' + JSON.stringify(err)); 793 } else { 794 console.log('killProcessesByBundleNameCallback success.'); 795 } 796} 797try { 798 appManager.killProcessesByBundleName(bundleName, killProcessesByBundleNameCallback); 799} catch (paramError) { 800 console.log('error: ' + paramError.code + ', ' + paramError.message); 801} 802``` 803 804## appManager.killProcessesByBundleName 805 806killProcessesByBundleName(bundleName: string): Promise\<void>; 807 808通过Bundle名称终止进程。 809 810**需要权限**:ohos.permission.CLEAN_BACKGROUND_PROCESSES 811 812**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 813 814**系统API**:该接口为系统接口,三方应用不支持调用。 815 816**参数:** 817 818| 参数名 | 类型 | 必填 | 说明 | 819| -------- | -------- | -------- | -------- | 820| bundleName | string | 是 | 表示Bundle名称。 | 821 822**返回值:** 823 824| 类型 | 说明 | 825| -------- | -------- | 826| Promise\<void> | 返回执行结果。 | 827 828**错误码**: 829 830| 错误码ID | 错误信息 | 831| ------- | -------- | 832| 16000050 | Internal error. | 833 834以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 835 836**示例:** 837 838```ts 839import appManager from '@ohos.app.ability.appManager'; 840 841let bundleName = 'bundleName'; 842try { 843 appManager.killProcessesByBundleName(bundleName).then((data) => { 844 console.log('killProcessesByBundleName success.'); 845 }).catch((err) => { 846 console.log('killProcessesByBundleName fail, err: ' + JSON.stringify(err)); 847 }); 848} catch (paramError) { 849 console.log('error: ' + paramError.code + ', ' + paramError.message); 850} 851``` 852 853## appManager.clearUpApplicationData 854 855clearUpApplicationData(bundleName: string, callback: AsyncCallback\<void>); 856 857通过Bundle名称清除应用数据。 858 859**需要权限**:ohos.permission.CLEAN_APPLICATION_DATA 860 861**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 862 863**系统API**:该接口为系统接口,三方应用不支持调用。 864 865**参数:** 866 867| 参数名 | 类型 | 必填 | 说明 | 868| -------- | -------- | -------- | -------- | 869| bundleName | string | 是 | 表示Bundle名称。 | 870| callback | AsyncCallback\<void> | 是 | 以回调方式返回接口运行结果,可进行错误处理或其他自定义处理。 | 871 872**错误码**: 873 874| 错误码ID | 错误信息 | 875| ------- | -------- | 876| 16000050 | Internal error. | 877 878以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 879 880**示例:** 881 882```ts 883import appManager from '@ohos.app.ability.appManager'; 884 885let bundleName = 'bundleName'; 886function clearUpApplicationDataCallback(err, data) { 887 if (err) { 888 console.log('clearUpApplicationDataCallback fail, err: ' + JSON.stringify(err)); 889 } else { 890 console.log('clearUpApplicationDataCallback success.'); 891 } 892} 893try { 894 appManager.clearUpApplicationData(bundleName, clearUpApplicationDataCallback); 895} catch (paramError) { 896 console.log('error: ' + paramError.code + ', ' + paramError.message); 897} 898``` 899 900## appManager.clearUpApplicationData 901 902clearUpApplicationData(bundleName: string): Promise\<void>; 903 904通过Bundle名称清除应用数据。 905 906**需要权限**:ohos.permission.CLEAN_APPLICATION_DATA 907 908**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 909 910**系统API**:该接口为系统接口,三方应用不支持调用。 911 912**参数:** 913 914| 参数名 | 类型 | 必填 | 说明 | 915| -------- | -------- | -------- | -------- | 916| bundleName | string | 是 | 表示Bundle名称。 | 917 918**返回值:** 919 920| 类型 | 说明 | 921| -------- | -------- | 922| Promise\<void> | 以Promise方式返回接口运行结果,可进行错误处理或其他自定义处理。 | 923 924**错误码**: 925 926| 错误码ID | 错误信息 | 927| ------- | -------- | 928| 16000050 | Internal error. | 929 930以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 931 932**示例:** 933 934```ts 935import appManager from '@ohos.app.ability.appManager'; 936 937let bundleName = 'bundleName'; 938try { 939 appManager.clearUpApplicationData(bundleName).then((data) => { 940 console.log('clearUpApplicationData success.'); 941 }).catch((err) => { 942 console.log('clearUpApplicationData fail, err: ' + JSON.stringify(err)); 943 }); 944} catch (paramError) { 945 console.log('error: ' + paramError.code + ', ' + paramError.message); 946} 947``` 948 949## ApplicationState 950 951应用状态,该类型为枚举,可配合[AbilityStateData](js-apis-inner-application-appStateData.md)返回相应的应用状态。 952 953**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 954 955**系统API**: 此接口为系统接口,三方应用不支持调用。 956 957| 名称 | 值 | 说明 | 958| -------------------- | --- | --------------------------------- | 959| STATE_CREATE | 1 | 当应用在创建中的时候处于的状态。 | 960| STATE_FOREGROUND | 2 | 当应用切换到前台的时候处于的状态。 | 961| STATE_ACTIVE | 3 | 当应用在获焦的时候处于的状态。 | 962| STATE_BACKGROUND | 4 | 当应用处于后台不可见时处于的状态。 | 963| STATE_DESTROY | 5 | 当应用在销毁的时候处于的状态。 | 964 965## ProcessState 966 967进程状态,该类型为枚举,可配合[ProcessData](js-apis-inner-application-processData.md)返回相应的进程状态。 968 969**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 970 971**系统API**: 此接口为系统接口,三方应用不支持调用。 972 973| 名称 | 值 | 说明 | 974| -------------------- | --- | --------------------------------- | 975| STATE_CREATE | 1 | 当进程在创建中的时候处于的状态。 | 976| STATE_FOREGROUND | 2 | 当进程切换到前台的时候处于的状态。 | 977| STATE_ACTIVE | 3 | 当进程在获焦的时候处于的状态。 | 978| STATE_BACKGROUND | 4 | 当进程处于后台不可见时处于的状态。 | 979| STATE_DESTROY | 5 | 当进程在销毁的时候处于的状态。 | 980