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