1# AbilityDelegator 2 3AbilityDelegator提供添加用于监视指定ability的生命周期状态更改的AbilityMonitor对象的能力,包括对AbilityMonitor实例的添加、删除、等待ability到达OnCreate生命周期、设置等待时间等、获取指定ability的生命周期状态、获取当前应用顶部ability、启动指定ability等。 4 5> **说明:** 6> 7> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8 9## 导入模块 10 11```ts 12import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 13``` 14 15## 使用说明 16 17通过AbilityDelegatorRegistry中[getAbilityDelegator](js-apis-app-ability-abilityDelegatorRegistry.md#abilitydelegatorregistrygetabilitydelegator)方法获取。此接口只能在测试环境下使用。 18```ts 19import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 20``` 21 22## AbilityDelegator 23 24### addAbilityMonitor<sup>9+</sup> 25 26addAbilityMonitor(monitor: AbilityMonitor, callback: AsyncCallback\<void>): void; 27 28添加AbilityMonitor实例(callback形式) 29 30**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 31 32**参数:** 33 34| 参数名 | 类型 | 必填 | 说明 | 35| -------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ | 36| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是 | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 | 37| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法 | 38 39**错误码**: 40 41| 错误码ID | 错误信息 | 42| ------- | -------- | 43| 16000100 | AddAbilityMonitor failed. | 44 45以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 46 47**示例:** 48 49```ts 50import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 51import UIAbility from '@ohos.app.ability.UIAbility'; 52import { BusinessError } from '@ohos.base'; 53 54let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 55 56function onAbilityCreateCallback(data: UIAbility) { 57 console.info(`onAbilityCreateCallback, data: ${JSON.stringify(data)}`); 58} 59 60let monitor: AbilityDelegatorRegistry.AbilityMonitor = { 61 abilityName: 'abilityname', 62 onAbilityCreate: onAbilityCreateCallback 63}; 64abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 65abilityDelegator.addAbilityMonitor(monitor, (error: BusinessError) => { 66 console.error(`addAbilityMonitor fail, error: ${JSON.stringify(error)}`); 67}); 68``` 69 70### addAbilityMonitor<sup>9+</sup> 71 72addAbilityMonitor(monitor: AbilityMonitor): Promise\<void>; 73 74添加AbilityMonitor实例(promise形式) 75 76**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 77 78**参数:** 79 80| 参数名 | 类型 | 必填 | 说明 | 81| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 82| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是 | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 | 83 84**返回值:** 85 86| 类型 | 说明 | 87| -------------- | ------------------- | 88| Promise\<void> | 以Promise形式返回。 | 89 90**错误码**: 91 92| 错误码ID | 错误信息 | 93| ------- | -------- | 94| 16000100 | AddAbilityMonitor failed. | 95 96以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 97 98**示例:** 99 100```ts 101import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 102import UIAbility from '@ohos.app.ability.UIAbility'; 103 104let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 105 106function onAbilityCreateCallback(data: UIAbility) { 107 console.info('onAbilityCreateCallback'); 108} 109 110let monitor: AbilityDelegatorRegistry.AbilityMonitor = { 111 abilityName: 'abilityname', 112 onAbilityCreate: onAbilityCreateCallback 113}; 114abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 115abilityDelegator.addAbilityMonitor(monitor).then(() => { 116 console.info('addAbilityMonitor promise'); 117}); 118``` 119 120### addAbilityMonitorSync<sup>10+</sup> 121 122addAbilityMonitorSync(monitor: AbilityMonitor): void; 123 124同步添加AbilityMonitor实例 125 126**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 127 128**参数:** 129 130| 参数名 | 类型 | 必填 | 说明 | 131| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 132| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是 | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 | 133 134**错误码**: 135 136| 错误码ID | 错误信息 | 137| ------- | -------- | 138| 16000100 | AddAbilityMonitor failed. | 139| 401 | If the input parameter is not valid parameter. | 140 141以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 142 143**示例:** 144 145```ts 146let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 147 148let monitor = { 149 abilityName: 'abilityname', 150 onAbilityCreate: onAbilityCreateCallback 151}; 152 153abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 154abilityDelegator.addAbilityMonitorSync(monitor); 155``` 156 157### removeAbilityMonitor<sup>9+</sup> 158 159removeAbilityMonitor(monitor: AbilityMonitor, callback: AsyncCallback\<void>): void; 160 161删除已经添加的AbilityMonitor实例(callback形式) 162 163**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 164 165**参数:** 166 167| 参数名 | 类型 | 必填 | 说明 | 168| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 169| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是 | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 | 170| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法 | 171 172**错误码**: 173 174| 错误码ID | 错误信息 | 175| ------- | -------- | 176| 16000100 | RemoveAbilityMonitor failed. | 177 178以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 179 180**示例:** 181 182```ts 183import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 184import UIAbility from '@ohos.app.ability.UIAbility'; 185import { BusinessError } from '@ohos.base'; 186 187let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 188 189function onAbilityCreateCallback(data: UIAbility) { 190 console.info('onAbilityCreateCallback'); 191} 192 193let monitor: AbilityDelegatorRegistry.AbilityMonitor = { 194 abilityName: 'abilityname', 195 onAbilityCreate: onAbilityCreateCallback 196}; 197 198abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 199abilityDelegator.removeAbilityMonitor(monitor, (error: BusinessError) => { 200 console.error(`removeAbilityMonitor fail, error: ${JSON.stringify(error)}`); 201}); 202``` 203 204### removeAbilityMonitor<sup>9+</sup> 205 206removeAbilityMonitor(monitor: AbilityMonitor): Promise\<void>; 207 208删除已经添加的AbilityMonitor实例(promise形式) 209 210**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 211 212**参数:** 213 214| 参数名 | 类型 | 必填 | 说明 | 215| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 216| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是 | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 | 217 218**返回值:** 219 220| 类型 | 说明 | 221| -------------- | ------------------- | 222| Promise\<void> | 以Promise形式返回。 | 223 224**错误码**: 225 226| 错误码ID | 错误信息 | 227| ------- | -------- | 228| 16000100 | RemoveAbilityMonitor failed. | 229 230以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 231 232- 示例 233 234```ts 235import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 236import UIAbility from '@ohos.app.ability.UIAbility'; 237 238let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 239 240function onAbilityCreateCallback(data: UIAbility) { 241 console.info('onAbilityCreateCallback'); 242} 243 244let monitor: AbilityDelegatorRegistry.AbilityMonitor = { 245 abilityName: 'abilityname', 246 onAbilityCreate: onAbilityCreateCallback 247}; 248 249abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 250abilityDelegator.removeAbilityMonitor(monitor).then(() => { 251 console.info('removeAbilityMonitor promise'); 252}); 253``` 254 255### removeAbilityMonitorSync<sup>10+</sup> 256 257removeAbilityMonitorSync(monitor: AbilityMonitor): void; 258 259同步删除已经添加的AbilityMonitor实例 260 261**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 262 263**参数:** 264 265| 参数名 | 类型 | 必填 | 说明 | 266| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 267| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是 | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 | 268 269**错误码**: 270 271| 错误码ID | 错误信息 | 272| ------- | -------- | 273| 16000100 | RemoveAbilityMonitor failed. | 274| 401 | If the input parameter is not valid parameter. | 275 276以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 277 278**示例:** 279 280```ts 281let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 282 283let monitor = { 284 abilityName: 'abilityname', 285 onAbilityCreate: onAbilityCreateCallback 286}; 287 288abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 289abilityDelegator.removeAbilityMonitorSync(monitor); 290``` 291 292### waitAbilityMonitor<sup>9+</sup> 293 294waitAbilityMonitor(monitor: AbilityMonitor, callback: AsyncCallback\<UIAbility>): void; 295 296等待与AbilityMonitor实例匹配的ability到达OnCreate生命周期,并返回ability实例(callback形式) 297 298**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 299 300**参数:** 301 302| 参数名 | 类型 | 必填 | 说明 | 303| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 304| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是 | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 | 305| callback | AsyncCallback\<[UIAbility](js-apis-app-ability-uiAbility.md)> | 是 | 表示指定的回调方法 | 306 307**错误码**: 308 309| 错误码ID | 错误信息 | 310| ------- | -------- | 311| 16000100 | WaitAbilityMonitor failed. | 312 313以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 314 315**示例:** 316 317```ts 318import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 319import UIAbility from '@ohos.app.ability.UIAbility'; 320import { BusinessError } from '@ohos.base'; 321 322let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 323 324function onAbilityCreateCallback(data: UIAbility) { 325 console.info('onAbilityCreateCallback'); 326} 327 328let monitor: AbilityDelegatorRegistry.AbilityMonitor = { 329 abilityName: 'abilityname', 330 onAbilityCreate: onAbilityCreateCallback 331}; 332 333abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 334abilityDelegator.waitAbilityMonitor(monitor, (error : BusinessError, data : UIAbility) => { 335 if (error) { 336 console.error(`waitAbilityMonitor fail, error: ${JSON.stringify(error)}`); 337 } else { 338 console.log(`waitAbilityMonitor success, data: ${JSON.stringify(data)}`); 339 } 340}); 341``` 342 343### waitAbilityMonitor<sup>9+</sup> 344 345waitAbilityMonitor(monitor: AbilityMonitor, timeout: number, callback: AsyncCallback\<UIAbility>): void; 346 347设置等待时间,等待与AbilityMonitor实例匹配的ability到达OnCreate生命周期,并返回ability实例(callback形式) 348 349**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 350 351**参数:** 352 353| 参数名 | 类型 | 必填 | 说明 | 354| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 355| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是 | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 | 356| timeout | number | 是 | 最大等待时间,单位毫秒(ms) | 357| callback | AsyncCallback\<[UIAbility](js-apis-app-ability-uiAbility.md)> | 是 | 表示指定的回调方法 | 358 359**错误码**: 360 361| 错误码ID | 错误信息 | 362| ------- | -------- | 363| 16000100 | WaitAbilityMonitor failed. | 364 365以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 366 367**示例:** 368 369```ts 370import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 371import UIAbility from '@ohos.app.ability.UIAbility'; 372import { BusinessError } from '@ohos.base'; 373 374let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 375let timeout = 100; 376 377function onAbilityCreateCallback(data: UIAbility) { 378 console.info('onAbilityCreateCallback'); 379} 380 381let monitor: AbilityDelegatorRegistry.AbilityMonitor = { 382 abilityName: 'abilityname', 383 onAbilityCreate: onAbilityCreateCallback 384}; 385 386abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 387abilityDelegator.waitAbilityMonitor(monitor, timeout, (error : BusinessError, data : UIAbility) => { 388 if (error && error.code !== 0) { 389 console.error(`waitAbilityMonitor fail, error: ${JSON.stringify(error)}`); 390 } else { 391 console.log(`waitAbilityMonitor success, data: ${JSON.stringify(data)}`); 392 } 393}); 394``` 395 396 397 398### waitAbilityMonitor<sup>9+</sup> 399 400waitAbilityMonitor(monitor: AbilityMonitor, timeout?: number): Promise\<UIAbility>; 401 402设置等待时间,等待与AbilityMonitor实例匹配的ability到达OnCreate生命周期,并返回ability实例(promise形式) 403 404**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 405 406**参数:** 407 408| 参数名 | 类型 | 必填 | 说明 | 409| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 410| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是 | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 | 411| timeout | number | 否 | 最大等待时间,单位毫秒(ms) | 412 413**返回值:** 414 415| 类型 | 说明 | 416| ----------------------------------------------------------- | -------------------------- | 417| Promise\<[UIAbility](js-apis-app-ability-uiAbility.md)> | 以Promise形式返回Ability。 | 418 419**错误码**: 420 421| 错误码ID | 错误信息 | 422| ------- | -------- | 423| 16000100 | WaitAbilityMonitor failed. | 424 425以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 426 427**示例:** 428 429```ts 430import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 431import UIAbility from '@ohos.app.ability.UIAbility'; 432 433let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 434 435function onAbilityCreateCallback(data: UIAbility) { 436 console.info('onAbilityCreateCallback'); 437} 438 439let monitor: AbilityDelegatorRegistry.AbilityMonitor = { 440 abilityName: 'abilityname', 441 onAbilityCreate: onAbilityCreateCallback 442}; 443 444abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 445abilityDelegator.waitAbilityMonitor(monitor).then((data : BusinessError) => { 446 console.info('waitAbilityMonitor promise'); 447}); 448``` 449 450### getAppContext<sup>9+</sup> 451 452getAppContext(): Context; 453 454获取应用Context 455 456**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 457 458**返回值:** 459 460| 类型 | 说明 | 461| ------------------------------------- | ------------------------------------------- | 462| [Context](js-apis-inner-application-context.md) | 应用[Context](js-apis-inner-application-context.md)。 | 463 464**示例:** 465 466```ts 467import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 468 469let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 470 471abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 472let context = abilityDelegator.getAppContext(); 473``` 474 475### getAbilityState<sup>9+</sup> 476 477getAbilityState(ability: UIAbility): number; 478 479获取指定ability的生命周期状态 480 481**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 482 483**参数:** 484 485| 参数名 | 类型 | 必填 | 说明 | 486| ------- | ------------------------------------------------- | ---- | --------------- | 487| ability | [UIAbility](js-apis-app-ability-uiAbility.md) | 是 | 指定Ability对象 | 488 489**返回值:** 490 491| 类型 | 说明 | 492| ------ | ------------------------------------------------------------ | 493| number | 指定ability的生命周期状态。状态枚举值使用[AbilityLifecycleState](js-apis-application-abilityDelegatorRegistry.md#AbilityLifecycleState)。 | 494 495**示例:** 496 497```ts 498import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 499import UIAbility from '@ohos.app.ability.UIAbility'; 500import { BusinessError } from '@ohos.base'; 501 502let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 503let ability: UIAbility; 504 505abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 506abilityDelegator.getCurrentTopAbility((err : BusinessError, data : UIAbility) => { 507 console.info('getCurrentTopAbility callback'); 508 ability = data; 509 let state = abilityDelegator.getAbilityState(ability); 510 console.info('getAbilityState ${state}'); 511}); 512``` 513 514### getCurrentTopAbility<sup>9+</sup> 515 516getCurrentTopAbility(callback: AsyncCallback\<UIAbility>): void; 517 518获取当前应用顶部ability(callback形式) 519 520**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 521 522**参数:** 523 524| 参数名 | 类型 | 必填 | 说明 | 525| -------- | ------------------------------------------------------------ | ---- | ------------------ | 526| callback | AsyncCallback\<[UIAbility](js-apis-app-ability-uiAbility.md)> | 是 | 表示指定的回调方法 | 527 528**错误码**: 529 530| 错误码ID | 错误信息 | 531| ------- | -------- | 532| 16000100 | GetCurrentTopAbility failed. | 533 534以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 535 536**示例:** 537 538```ts 539import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 540import UIAbility from '@ohos.app.ability.UIAbility'; 541import { BusinessError } from '@ohos.base'; 542 543let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 544let ability: UIAbility; 545 546abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 547abilityDelegator.getCurrentTopAbility((err : BusinessError, data : UIAbility) => { 548 console.info('getCurrentTopAbility callback'); 549 ability = data; 550}); 551``` 552 553### getCurrentTopAbility<sup>9+</sup> 554 555getCurrentTopAbility(): Promise\<UIAbility>; 556 557获取当前应用顶部ability(promise形式) 558 559**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 560 561**返回值:** 562 563| 类型 | 说明 | 564| ----------------------------------------------------------- | -------------------------------------- | 565| Promise\<[UIAbility](js-apis-app-ability-uiAbility.md)> | 以Promise形式返回当前应用顶部ability。 | 566 567**错误码**: 568 569| 错误码ID | 错误信息 | 570| ------- | -------- | 571| 16000100 | GetCurrentTopAbility failed. | 572 573以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 574 575**示例:** 576 577```ts 578import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 579import UIAbility from '@ohos.app.ability.UIAbility'; 580 581let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 582let ability: UIAbility; 583 584abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 585abilityDelegator.getCurrentTopAbility().then((data : UIAbility) => { 586 console.info('getCurrentTopAbility promise'); 587 ability = data; 588}); 589``` 590 591### startAbility<sup>9+</sup> 592 593startAbility(want: Want, callback: AsyncCallback\<void>): void; 594 595启动指定ability(callback形式) 596 597**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 598 599**参数:** 600 601| 参数名 | 类型 | 必填 | 说明 | 602| -------- | -------------------------------------- | ---- | ------------------ | 603| want | [Want](js-apis-app-ability-want.md) | 是 | 启动Ability参数 | 604| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法 | 605 606**错误码**: 607 608| 错误码ID | 错误信息 | 609| ------- | -------- | 610| 16000001 | The specified ability does not exist. | 611| 16000002 | Incorrect ability type. | 612| 16000004 | Can not start invisible component. | 613| 16000005 | The specified process does not have the permission. | 614| 16000006 | Cross-user operations are not allowed. | 615| 16000008 | The crowdtesting application expires. | 616| 16000009 | An ability cannot be started or stopped in Wukong mode. | 617| 16000010 | The call with the continuation flag is forbidden. | 618| 16000011 | The context does not exist. | 619| 16000012 | The application is controlled. | 620| 16000013 | The application is controlled by EDM. | 621| 16000050 | Internal error. | 622| 16000053 | The ability is not on the top of the UI. | 623| 16000055 | Installation-free timed out. | 624| 16200001 | The caller has been released. | 625 626以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 627 628**示例:** 629 630```ts 631import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 632import Want from '@ohos.app.ability.Want'; 633import { BusinessError } from '@ohos.base'; 634 635let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 636let want: Want = { 637 bundleName: 'bundleName', 638 abilityName: 'abilityName' 639}; 640 641abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 642abilityDelegator.startAbility(want, (err : BusinessError, data : void) => { 643 console.info('startAbility callback'); 644}); 645``` 646 647### startAbility<sup>9+</sup> 648 649startAbility(want: Want): Promise\<void>; 650 651启动指定ability(promise形式) 652 653**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 654 655**参数:** 656 657| 参数名 | 类型 | 必填 | 说明 | 658| ------ | -------------------------------------- | ---- | --------------- | 659| want | [Want](js-apis-app-ability-want.md) | 是 | 启动Ability参数 | 660 661**返回值:** 662 663| 类型 | 说明 | 664| -------------- | ------------------- | 665| Promise\<void> | 以Promise形式返回。 | 666 667**错误码**: 668 669| 错误码ID | 错误信息 | 670| ------- | -------- | 671| 16000001 | The specified ability does not exist. | 672| 16000002 | Incorrect ability type. | 673| 16000004 | Can not start invisible component. | 674| 16000005 | The specified process does not have the permission. | 675| 16000006 | Cross-user operations are not allowed. | 676| 16000008 | The crowdtesting application expires. | 677| 16000009 | An ability cannot be started or stopped in Wukong mode. | 678| 16000010 | The call with the continuation flag is forbidden. | 679| 16000011 | The context does not exist. | 680| 16000012 | The application is controlled. | 681| 16000013 | The application is controlled by EDM. | 682| 16000050 | Internal error. | 683| 16000053 | The ability is not on the top of the UI. | 684| 16000055 | Installation-free timed out. | 685| 16200001 | The caller has been released. | 686 687以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 688 689**示例:** 690 691```ts 692import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 693import UIAbility from '@ohos.app.ability.UIAbility'; 694import Want from '@ohos.app.ability.Want'; 695 696let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 697let want: Want = { 698 bundleName: 'bundleName', 699 abilityName: 'abilityName' 700}; 701 702abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 703abilityDelegator.startAbility(want).then((data: void) => { 704 console.info('startAbility promise'); 705}); 706``` 707 708### doAbilityForeground<sup>9+</sup> 709 710doAbilityForeground(ability: UIAbility, callback: AsyncCallback\<void>): void; 711 712调度指定ability生命周期状态到Foreground状态(callback形式) 713 714**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 715 716**参数:** 717 718| 参数名 | 类型 | 必填 | 说明 | 719| -------- | ----------------------- | ---- | ------------------------------------------------------- | 720| ability | UIAbility | 是 | 指定Ability对象 | 721| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法<br/>\- true:成功<br/>\- false:失败 | 722 723**错误码**: 724 725| 错误码ID | 错误信息 | 726| ------- | -------- | 727| 16000100 | DoAbilityForeground failed. | 728 729以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 730 731**示例:** 732 733```ts 734import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 735import UIAbility from '@ohos.app.ability.UIAbility'; 736import { BusinessError } from '@ohos.base'; 737 738let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 739let ability: UIAbility; 740 741abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 742abilityDelegator.getCurrentTopAbility((err : BusinessError, data : UIAbility) => { 743 console.info('getCurrentTopAbility callback'); 744 ability = data; 745 abilityDelegator.doAbilityForeground(ability, (err : BusinessError) => { 746 console.info("doAbilityForeground callback"); 747 }); 748}); 749``` 750 751### doAbilityForeground<sup>9+</sup> 752 753doAbilityForeground(ability: UIAbility): Promise\<void>; 754 755调度指定ability生命周期状态到Foreground状态(promise形式) 756 757**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 758 759**参数:** 760 761| 参数名 | 类型 | 必填 | 说明 | 762| ------- | ------- | ---- | --------------- | 763| ability | UIAbility | 是 | 指定Ability对象 | 764 765**返回值:** 766 767| 类型 | 说明 | 768| ----------------- | ------------------------------------------------------------ | 769| Promise\<boolean> | 以Promise形式返回执行结果。<br/>\- true:成功<br/>\- false:失败 | 770 771**错误码**: 772 773| 错误码ID | 错误信息 | 774| ------- | -------- | 775| 16000100 | DoAbilityForeground failed. | 776 777以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 778 779**示例:** 780 781```ts 782import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 783import UIAbility from '@ohos.app.ability.UIAbility'; 784import { BusinessError } from '@ohos.base'; 785 786let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 787let ability: UIAbility; 788 789abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 790abilityDelegator.getCurrentTopAbility((err : BusinessError, data : UIAbility) => { 791 console.info('getCurrentTopAbility callback'); 792 ability = data; 793 abilityDelegator.doAbilityForeground(ability).then(() => { 794 console.info("doAbilityForeground promise"); 795 }); 796}); 797``` 798 799### doAbilityBackground<sup>9+</sup> 800 801doAbilityBackground(ability: UIAbility, callback: AsyncCallback\<void>): void; 802 803调度指定ability生命周期状态到Background状态(callback形式) 804 805**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 806 807**参数:** 808 809| 参数名 | 类型 | 必填 | 说明 | 810| -------- | ----------------------- | ---- | ------------------------------------------------------- | 811| ability | UIAbility | 是 | 指定Ability对象 | 812| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法<br/>\- true:成功<br/>\- false:失败 | 813 814**错误码**: 815 816| 错误码ID | 错误信息 | 817| ------- | -------- | 818| 16000100 | DoAbilityBackground failed. | 819 820以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 821 822**示例:** 823 824```ts 825import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 826import UIAbility from '@ohos.app.ability.UIAbility'; 827import { BusinessError } from '@ohos.base'; 828 829let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 830let ability: UIAbility; 831 832abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 833abilityDelegator.getCurrentTopAbility((err : BusinessError, data : UIAbility) => { 834 console.info('getCurrentTopAbility callback'); 835 ability = data; 836 abilityDelegator.doAbilityBackground(ability, (err : BusinessError) => { 837 console.info("doAbilityBackground callback"); 838 }); 839}); 840``` 841 842### doAbilityBackground<sup>9+</sup> 843 844doAbilityBackground(ability: UIAbility): Promise\<void>; 845 846调度指定ability生命周期状态到Background状态(promise形式) 847 848**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 849 850**参数:** 851 852| 参数名 | 类型 | 必填 | 说明 | 853| ------- | ------- | ---- | --------------- | 854| ability | UIAbility | 是 | 指定Ability对象 | 855 856**返回值:** 857 858| 类型 | 说明 | 859| ----------------- | ------------------------------------------------------------ | 860| Promise\<boolean> | 以Promise形式返回执行结果。<br/>\- true:成功<br/>\- false:失败 | 861 862**错误码**: 863 864| 错误码ID | 错误信息 | 865| ------- | -------- | 866| 16000100 | DoAbilityBackground failed. | 867 868以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 869 870**示例:** 871 872```ts 873import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 874import UIAbility from '@ohos.app.ability.UIAbility'; 875import { BusinessError } from '@ohos.base'; 876 877let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 878let ability: UIAbility; 879 880abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 881abilityDelegator.getCurrentTopAbility((err : BusinessError, data : UIAbility) => { 882 console.info('getCurrentTopAbility callback'); 883 ability = data; 884 abilityDelegator.doAbilityBackground(ability).then(() => { 885 console.info("doAbilityBackground promise"); 886 }); 887}); 888``` 889 890### printSync<sup>9+</sup> 891 892printSync(msg: string): void; 893 894打印日志信息到单元测试终端控制台 895 896**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 897 898**参数:** 899 900| 参数名 | 类型 | 必填 | 说明 | 901| ------ | ------ | ---- | ---------- | 902| msg | string | 是 | 日志字符串 | 903 904**示例:** 905 906```ts 907import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 908 909let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 910let msg = 'msg'; 911 912abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 913abilityDelegator.printSync(msg); 914``` 915 916### print 917 918print(msg: string, callback: AsyncCallback\<void>): void; 919 920打印日志信息到单元测试终端控制台(callback形式) 921 922**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 923 924**参数:** 925 926| 参数名 | 类型 | 必填 | 说明 | 927| -------- | -------------------- | ---- | ------------------ | 928| msg | string | 是 | 日志字符串 | 929| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法 | 930 931**示例:** 932 933```ts 934import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 935import { BusinessError } from '@ohos.base'; 936 937let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 938let msg = 'msg'; 939 940abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 941abilityDelegator.print(msg, (err : BusinessError) => { 942 console.info('print callback'); 943}); 944``` 945 946### print 947 948print(msg: string): Promise\<void>; 949 950打印日志信息到单元测试终端控制台(promise形式) 951 952**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 953 954**参数:** 955 956| 参数名 | 类型 | 必填 | 说明 | 957| ------ | ------ | ---- | ---------- | 958| msg | string | 是 | 日志字符串 | 959 960**返回值:** 961 962| 类型 | 说明 | 963| -------------- | ------------------- | 964| Promise\<void> | 以Promise形式返回。 | 965 966**示例:** 967 968```ts 969import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 970 971let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 972let msg = 'msg'; 973 974abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 975abilityDelegator.print(msg).then(() => { 976 console.info('print promise'); 977}); 978``` 979 980### executeShellCommand 981 982executeShellCommand(cmd: string, callback: AsyncCallback\<ShellCmdResult>): void; 983 984执行指定的shell命令(callback形式) 985 986仅支持如下shell命令:aa, bm, cp, mkdir, rm, uinput, hilog, ppwd, echo, uitest, acm, hidumper, wukong, pkill, ps, pidof 987 988**系统能力:** SystemCapability.Ability.AbilityRuntime.Core 989 990**参数:** 991 992| 参数名 | 类型 | 必填 | 说明 | 993| -------- | ------------------------------------------------------------ | ---- | ------------------ | 994| cmd | string | 是 | shell命令字符串 | 995| callback | AsyncCallback\<[ShellCmdResult](js-apis-inner-application-shellCmdResult.md#ShellCmdResult)> | 是 | 表示指定的回调方法 | 996 997**示例:** 998 999```ts 1000import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1001import { BusinessError } from '@ohos.base'; 1002 1003let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1004let cmd = 'cmd'; 1005 1006abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1007abilityDelegator.executeShellCommand(cmd, (err : BusinessError, data: AbilityDelegatorRegistry.ShellCmdResult) => { 1008 console.info('executeShellCommand callback'); 1009}); 1010``` 1011 1012### executeShellCommand 1013 1014executeShellCommand(cmd: string, timeoutSecs: number, callback: AsyncCallback\<ShellCmdResult>): void; 1015 1016指定超时时间,并执行指定的shell命令(callback形式) 1017 1018仅支持如下shell命令:aa, bm, cp, mkdir, rm, uinput, hilog, ppwd, echo, uitest, acm, hidumper, wukong, pkill, ps, pidof 1019 1020**系统能力:** SystemCapability.Ability.AbilityRuntime.Core 1021 1022**参数:** 1023 1024| 参数名 | 类型 | 必填 | 说明 | 1025| ----------- | ------------------------------------------------------------ | ---- | ----------------------------- | 1026| cmd | string | 是 | shell命令字符串 | 1027| timeoutSecs | number | 是 | 设定命令超时时间,单位秒(s) | 1028| callback | AsyncCallback\<[ShellCmdResult](js-apis-inner-application-shellCmdResult.md#ShellCmdResult)> | 是 | 表示指定的回调方法 | 1029 1030**示例:** 1031 1032```ts 1033import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1034import { BusinessError } from '@ohos.base'; 1035 1036let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1037let cmd = 'cmd'; 1038let timeout = 100; 1039 1040abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1041abilityDelegator.executeShellCommand(cmd, timeout, (err : BusinessError, data: AbilityDelegatorRegistry.ShellCmdResult) => { 1042 console.info('executeShellCommand callback'); 1043}); 1044``` 1045 1046### executeShellCommand 1047 1048executeShellCommand(cmd: string, timeoutSecs?: number): Promise\<ShellCmdResult>; 1049 1050指定超时时间,并执行指定的shell命令(promise形式) 1051 1052仅支持如下shell命令:aa, bm, cp, mkdir, rm, uinput, hilog, ppwd, echo, uitest, acm, hidumper, wukong, pkill, ps, pidof 1053 1054**系统能力:** SystemCapability.Ability.AbilityRuntime.Core 1055 1056**参数:** 1057 1058| 参数名 | 类型 | 必填 | 说明 | 1059| ----------- | ------ | ---- | ----------------------------- | 1060| cmd | string | 是 | shell命令字符串 | 1061| timeoutSecs | number | 否 | 设定命令超时时间,单位秒(s) | 1062 1063**返回值:** 1064 1065| 类型 | 说明 | 1066| ------------------------------------------------------------ | ------------------------------------------------------------ | 1067| Promise\<[ShellCmdResult](js-apis-inner-application-shellCmdResult.md#ShellCmdResult)> | 以Promise形式返回Shell命令执行结果[ShellCmdResult](js-apis-inner-application-shellCmdResult.md#ShellCmdResult)对象。 | 1068 1069**示例:** 1070 1071```ts 1072import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1073 1074let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1075let cmd = 'cmd'; 1076let timeout = 100; 1077 1078abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1079abilityDelegator.executeShellCommand(cmd, timeout).then((data) => { 1080 console.info('executeShellCommand promise'); 1081}); 1082``` 1083 1084### finishTest<sup>9+</sup> 1085 1086finishTest(msg: string, code: number, callback: AsyncCallback\<void>): void; 1087 1088结束测试并打印日志信息到单元测试终端控制台(callback形式) 1089 1090**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1091 1092**参数:** 1093 1094| 参数名 | 类型 | 必填 | 说明 | 1095| -------- | -------------------- | ---- | ------------------ | 1096| msg | string | 是 | 日志字符串 | 1097| code | number | 是 | 日志码 | 1098| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法 | 1099 1100**错误码**: 1101 1102| 错误码ID | 错误信息 | 1103| ------- | -------- | 1104| 16000100 | FinishTest failed. | 1105 1106以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1107 1108**示例:** 1109 1110```ts 1111import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1112import { BusinessError } from '@ohos.base'; 1113 1114let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1115let msg = 'msg'; 1116 1117abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1118abilityDelegator.finishTest(msg, 0, (err : BusinessError) => { 1119 console.info('finishTest callback'); 1120}); 1121``` 1122 1123### finishTest<sup>9+</sup> 1124 1125finishTest(msg: string, code: number): Promise\<void>; 1126 1127结束测试并打印日志信息到单元测试终端控制台(promise形式) 1128 1129**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1130 1131**参数:** 1132 1133| 参数名 | 类型 | 必填 | 说明 | 1134| ------ | ------ | ---- | ---------- | 1135| msg | string | 是 | 日志字符串 | 1136| code | number | 是 | 日志码 | 1137 1138**返回值:** 1139 1140| 类型 | 说明 | 1141| -------------- | ------------------- | 1142| Promise\<void> | 以Promise形式返回。 | 1143 1144**错误码**: 1145 1146| 错误码ID | 错误信息 | 1147| ------- | -------- | 1148| 16000100 | FinishTest failed. | 1149 1150以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1151 1152**示例:** 1153 1154```ts 1155import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1156 1157let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1158let msg = 'msg'; 1159 1160abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1161abilityDelegator.finishTest(msg, 0).then(() => { 1162 console.info('finishTest promise'); 1163}); 1164``` 1165 1166### addAbilityStageMonitor<sup>9+</sup> 1167 1168addAbilityStageMonitor(monitor: AbilityStageMonitor, callback: AsyncCallback\<void>): void; 1169 1170添加一个AbilityStageMonitor对象,用于监视指定abilityStage的生命周期状态更改。(callback形式) 1171 1172**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1173 1174**参数:** 1175 1176| 参数名 | 类型 | 必填 | 说明 | 1177| -------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ | 1178| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是 | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 | 1179| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法 | 1180 1181**错误码**: 1182 1183| 错误码ID | 错误信息 | 1184| ------- | -------- | 1185| 16000100 | AddAbilityStageMonitor failed. | 1186 1187以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1188 1189**示例:** 1190 1191```ts 1192import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1193import { BusinessError } from '@ohos.base'; 1194 1195let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1196 1197abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1198abilityDelegator.addAbilityStageMonitor({ 1199 moduleName: 'moduleName', 1200 srcEntrance: 'srcEntrance', 1201}, (err : BusinessError) => { 1202 console.info('addAbilityStageMonitor callback'); 1203}); 1204``` 1205 1206### addAbilityStageMonitor<sup>9+</sup> 1207 1208addAbilityStageMonitor(monitor: AbilityStageMonitor): Promise\<void>; 1209 1210添加一个AbilityStageMonitor对象,用于监视指定abilityStage的生命周期状态更改。(promise形式) 1211 1212**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1213 1214**参数:** 1215 1216| 参数名 | 类型 | 必填 | 说明 | 1217| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 1218| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是 | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 | 1219 1220**返回值:** 1221 1222| 类型 | 说明 | 1223| -------------- | ------------------- | 1224| Promise\<void> | 以Promise形式返回。 | 1225 1226**错误码**: 1227 1228| 错误码ID | 错误信息 | 1229| ------- | -------- | 1230| 16000100 | AddAbilityStageMonitor failed. | 1231 1232以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1233 1234**示例:** 1235 1236```ts 1237import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1238 1239let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1240 1241abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1242abilityDelegator.addAbilityStageMonitor({ 1243 moduleName: 'moduleName', 1244 srcEntrance: 'srcEntrance', 1245}).then(() => { 1246 console.info('addAbilityStageMonitor promise'); 1247}); 1248``` 1249 1250### addAbilityStageMonitorSync<sup>10+</sup> 1251 1252addAbilityStageMonitorSync(monitor: AbilityStageMonitor): void; 1253 1254同步添加一个AbilityStageMonitor对象,用于监视指定abilityStage的生命周期状态更改。 1255 1256**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1257 1258**参数:** 1259 1260| 参数名 | 类型 | 必填 | 说明 | 1261| -------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ | 1262| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是 | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 | 1263| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法 | 1264 1265**错误码**: 1266 1267| 错误码ID | 错误信息 | 1268| ------- | -------- | 1269| 16000100 | AddAbilityStageMonitor failed. | 1270| 401 | If the input parameter is not valid parameter. | 1271 1272以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1273 1274**示例:** 1275 1276```ts 1277let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1278 1279let monitor = { 1280 moduleName: 'moduleName', 1281 srcEntrance: 'srcEntrance', 1282}; 1283 1284abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1285abilityDelegator.addAbilityStageMonitorSync(monitor); 1286``` 1287 1288### removeAbilityStageMonitor<sup>9+</sup> 1289 1290removeAbilityStageMonitor(monitor: AbilityStageMonitor, callback: AsyncCallback\<void>): void; 1291 1292从应用程序内存中删除指定的AbilityStageMonitor对象。(callback形式) 1293 1294**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1295 1296**参数:** 1297 1298| 参数名 | 类型 | 必填 | 说明 | 1299| -------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ | 1300| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是 | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 | 1301| callback | AsyncCallback\<void> | 是 | 表示指定的回调方法 | 1302 1303**错误码**: 1304 1305| 错误码ID | 错误信息 | 1306| ------- | -------- | 1307| 16000100 | RemoveAbilityStageMonitor failed. | 1308 1309以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1310 1311**示例:** 1312 1313```ts 1314import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1315import { BusinessError } from '@ohos.base'; 1316 1317let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1318 1319abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1320abilityDelegator.removeAbilityStageMonitor({ 1321 moduleName: 'moduleName', 1322 srcEntrance: 'srcEntrance', 1323}, (err : BusinessError) => { 1324 console.info('removeAbilityStageMonitor callback'); 1325}); 1326``` 1327 1328### removeAbilityStageMonitor<sup>9+</sup> 1329 1330removeAbilityStageMonitor(monitor: AbilityStageMonitor): Promise\<void>; 1331 1332从应用程序内存中删除指定的AbilityStageMonitor对象。(promise形式) 1333 1334**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1335 1336**参数:** 1337 1338| 参数名 | 类型 | 必填 | 说明 | 1339| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 1340| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是 | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 | 1341 1342**返回值:** 1343 1344| 类型 | 说明 | 1345| -------------- | ------------------- | 1346| Promise\<void> | 以Promise形式返回。 | 1347 1348**错误码**: 1349 1350| 错误码ID | 错误信息 | 1351| ------- | -------- | 1352| 16000100 | RemoveAbilityStageMonitor failed. | 1353 1354以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1355 1356**示例:** 1357 1358```ts 1359import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1360 1361let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1362 1363abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1364abilityDelegator.removeAbilityStageMonitor({ 1365 moduleName: 'moduleName', 1366 srcEntrance: 'srcEntrance', 1367}).then(() => { 1368 console.info('removeAbilityStageMonitor promise'); 1369}); 1370``` 1371 1372### removeAbilityStageMonitorSync<sup>10+</sup> 1373 1374removeAbilityStageMonitorSync(monitor: AbilityStageMonitor): void; 1375 1376同步从应用程序内存中删除指定的AbilityStageMonitor对象。 1377 1378**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1379 1380**参数:** 1381 1382| 参数名 | 类型 | 必填 | 说明 | 1383| -------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ | 1384| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是 | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 | 1385 1386**错误码**: 1387 1388| 错误码ID | 错误信息 | 1389| ------- | -------- | 1390| 16000100 | RemoveAbilityStageMonitor failed. | 1391| 401 | If the input parameter is not valid parameter. | 1392 1393以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1394 1395**示例:** 1396 1397```ts 1398let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1399 1400let monitor = { 1401 moduleName: 'moduleName', 1402 srcEntrance: 'srcEntrance', 1403}; 1404 1405abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1406abilityDelegator.removeAbilityStageMonitorSync(monitor); 1407``` 1408 1409### waitAbilityStageMonitor<sup>9+</sup> 1410 1411waitAbilityStageMonitor(monitor: AbilityStageMonitor, callback: AsyncCallback\<AbilityStage>): void; 1412 1413等待并返回与给定AbilityStageMonitor中设置的条件匹配的AbilityStage对象。(callback形式) 1414 1415**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1416 1417**参数:** 1418 1419| 参数名 | 类型 | 必填 | 说明 | 1420| -------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ | 1421| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是 | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 | 1422| callback | AsyncCallback\<AbilityStage> | 是 | 成功返回AbilityStage对象,失败返回空。 | 1423 1424**错误码**: 1425 1426| 错误码ID | 错误信息 | 1427| ------- | -------- | 1428| 16000100 | WaitAbilityStageMonitor failed. | 1429 1430以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1431 1432**示例:** 1433 1434```ts 1435import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1436import AbilityStage from '@ohos.app.ability.AbilityStage'; 1437 1438let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1439 1440abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1441abilityDelegator.waitAbilityStageMonitor({ 1442 moduleName: 'moduleName', 1443 srcEntrance: 'srcEntrance', 1444}, (err : BusinessError, data : AbilityStage) => { 1445 console.info('waitAbilityStageMonitor callback'); 1446}); 1447``` 1448 1449### waitAbilityStageMonitor<sup>9+</sup> 1450 1451waitAbilityStageMonitor(monitor: AbilityStageMonitor, timeout?: number): Promise\<AbilityStage>; 1452 1453等待并返回与给定AbilityStageMonitor中设置的条件匹配的AbilityStage对象。(promise形式) 1454 1455**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1456 1457**参数:** 1458 1459| 参数名 | 类型 | 必填 | 说明 | 1460| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 1461| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是 | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 | 1462| timeout | number | 否 | 超时最大等待时间,以毫秒为单位。 | 1463 1464**返回值:** 1465 1466| 类型 | 说明 | 1467| -------------- | ------------------- | 1468| Promise\<AbilityStage> | 成功返回AbilityStage对象,失败返回空。 | 1469 1470**错误码**: 1471 1472| 错误码ID | 错误信息 | 1473| ------- | -------- | 1474| 16000100 | WaitAbilityStageMonitor failed. | 1475 1476以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1477 1478**示例:** 1479 1480```ts 1481import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1482import AbilityStage from '@ohos.app.ability.AbilityStage'; 1483 1484let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1485 1486abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1487abilityDelegator.waitAbilityStageMonitor({ 1488 moduleName: 'moduleName', 1489 srcEntrance: 'srcEntrance', 1490}).then((data : AbilityStage) => { 1491 console.info('waitAbilityStageMonitor promise'); 1492}); 1493``` 1494 1495### waitAbilityStageMonitor<sup>9+</sup> 1496 1497waitAbilityStageMonitor(monitor: AbilityStageMonitor, timeout: number, callback: AsyncCallback\<AbilityStage>): void; 1498 1499等待并返回与给定AbilityStageMonitor中设置的条件匹配的AbilityStage对象。(callback形式) 1500 1501**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 1502 1503**参数:** 1504 1505| 参数名 | 类型 | 必填 | 说明 | 1506| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 1507| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是 | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 | 1508| timeout | number | 是 | 超时最大等待时间,以毫秒为单位。 | 1509| callback | AsyncCallback\<AbilityStage> | 是 | 成功返回AbilityStage对象,失败返回空。 | 1510 1511**错误码**: 1512 1513| 错误码ID | 错误信息 | 1514| ------- | -------- | 1515| 16000100 | WaitAbilityStageMonitor failed. | 1516 1517以上错误码详细介绍请参考[errcode-ability](../errorcodes/errorcode-ability.md)。 1518 1519**示例:** 1520 1521```ts 1522import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; 1523import AbilityStage from '@ohos.app.ability.AbilityStage'; 1524import { BusinessError } from '@ohos.base'; 1525 1526let abilityDelegator: AbilityDelegatorRegistry.AbilityDelegator; 1527let timeout = 100; 1528 1529abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator(); 1530abilityDelegator.waitAbilityStageMonitor({ 1531 moduleName: 'moduleName', 1532 srcEntrance: 'srcEntrance', 1533}, timeout, (err : BusinessError, data : AbilityStage) => { 1534 console.info('waitAbilityStageMonitor callback'); 1535}); 1536```