• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# AbilityDelegator
2
3AbilityDelegator提供添加用于监视指定ability的生命周期状态更改的AbilityMonitor对象的能力,包括对AbilityMonitor实例的添加、删除、等待ability到达OnCreate生命周期、设置等待时间等、获取指定ability的生命周期状态、获取当前应用顶部ability、启动指定ability等。
4
5> **说明:**
6>
7> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 使用说明
10
11通过AbilityDelegatorRegistry中[getAbilityDelegator](js-apis-app-ability-abilityDelegatorRegistry.md#abilitydelegatorregistrygetabilitydelegator)方法获取。
12```ts
13import AbilityDelegatorRegistry from '@ohos.application.abilityDelegatorRegistry';
14```
15
16## AbilityDelegator
17
18### addAbilityMonitor<sup>9+</sup>
19
20addAbilityMonitor(monitor: AbilityMonitor, callback: AsyncCallback\<void>): void;
21
22添加AbilityMonitor实例(callback形式)
23
24**系统能力:**SystemCapability.Ability.AbilityRuntime.Core
25
26**参数:**
27
28| 参数名   | 类型                                                         | 必填 | 说明                                                         |
29| -------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ |
30| monitor  | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是       | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 |
31| callback | AsyncCallback\<void>                                         | 是       | 表示指定的回调方法                                           |
32
33**示例:**
34
35```ts
36let abilityDelegator;
37
38function onAbilityCreateCallback(data) {
39    console.info('onAbilityCreateCallback');
40}
41
42let monitor = {
43    abilityName: 'abilityname',
44    onAbilityCreate: onAbilityCreateCallback
45};
46
47abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
48abilityDelegator.addAbilityMonitor(monitor, (err : any) => {
49    console.info('addAbilityMonitor callback');
50});
51```
52
53### addAbilityMonitor<sup>9+</sup>
54
55addAbilityMonitor(monitor: AbilityMonitor): Promise\<void>;
56
57添加AbilityMonitor实例(promise形式)
58
59**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
60
61**参数:**
62
63| 参数名  | 类型                                                         | 必填 | 说明                                                         |
64| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
65| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是   | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 |
66
67**返回值:**
68
69| 类型           | 说明                |
70| -------------- | ------------------- |
71| Promise\<void> | 以Promise形式返回。 |
72
73**示例:**
74
75```ts
76let abilityDelegator;
77
78function onAbilityCreateCallback(data) {
79    console.info('onAbilityCreateCallback');
80}
81
82let monitor = {
83    abilityName: 'abilityname',
84    onAbilityCreate: onAbilityCreateCallback
85};
86
87abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
88abilityDelegator.addAbilityMonitor(monitor).then(() => {
89    console.info('addAbilityMonitor promise');
90});
91```
92
93
94
95### removeAbilityMonitor<sup>9+</sup>
96
97removeAbilityMonitor(monitor: AbilityMonitor, callback: AsyncCallback\<void>): void;
98
99删除已经添加的AbilityMonitor实例(callback形式)
100
101**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
102
103**参数:**
104
105| 参数名   | 类型                                                         | 必填 | 说明                                                         |
106| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
107| monitor  | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是   | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 |
108| callback | AsyncCallback\<void>                                         | 是   | 表示指定的回调方法                                           |
109
110**示例:**
111
112```ts
113let abilityDelegator;
114
115function onAbilityCreateCallback(data) {
116    console.info('onAbilityCreateCallback');
117}
118
119let monitor = {
120    abilityName: 'abilityname',
121    onAbilityCreate: onAbilityCreateCallback
122};
123
124abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
125abilityDelegator.removeAbilityMonitor(monitor, (err : any) => {
126    console.info('removeAbilityMonitor callback');
127});
128```
129
130
131
132### removeAbilityMonitor<sup>9+</sup>
133
134removeAbilityMonitor(monitor: AbilityMonitor): Promise\<void>;
135
136删除已经添加的AbilityMonitor实例(promise形式)
137
138**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
139
140**参数:**
141
142| 参数名    | 类型                                                         | 必填 | 说明                                                         |
143| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
144| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是   | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 |
145
146**返回值:**
147
148| 类型           | 说明                |
149| -------------- | ------------------- |
150| Promise\<void> | 以Promise形式返回。 |
151
152- 示例
153
154```ts
155let abilityDelegator;
156
157function onAbilityCreateCallback(data) {
158    console.info('onAbilityCreateCallback');
159}
160
161let monitor = {
162    abilityName: 'abilityname',
163    onAbilityCreate: onAbilityCreateCallback
164};
165
166abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
167abilityDelegator.removeAbilityMonitor(monitor).then(() => {
168    console.info('removeAbilityMonitor promise');
169});
170```
171
172
173
174### waitAbilityMonitor<sup>9+</sup>
175
176waitAbilityMonitor(monitor: AbilityMonitor, callback: AsyncCallback\<UIAbility>): void;
177
178等待与AbilityMonitor实例匹配的ability到达OnCreate生命周期,并返回ability实例(callback形式)
179
180**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
181
182**参数:**
183
184| 参数名   | 类型                                                         | 必填 | 说明                                                         |
185| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
186| monitor  | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是   | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 |
187| callback | AsyncCallback\<[UIAbility](js-apis-app-ability-uiAbility.md)> | 是   | 表示指定的回调方法                                           |
188
189**示例:**
190
191```ts
192let abilityDelegator;
193
194function onAbilityCreateCallback(data) {
195    console.info('onAbilityCreateCallback');
196}
197
198let monitor = {
199    abilityName: 'abilityname',
200    onAbilityCreate: onAbilityCreateCallback
201};
202
203abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
204abilityDelegator.waitAbilityMonitor(monitor, (err : any, data : any) => {
205    console.info('waitAbilityMonitor callback');
206});
207```
208
209### waitAbilityMonitor<sup>9+</sup>
210
211waitAbilityMonitor(monitor: AbilityMonitor, timeout: number, callback: AsyncCallback\<UIAbility>): void;
212
213设置等待时间,等待与AbilityMonitor实例匹配的ability到达OnCreate生命周期,并返回ability实例(callback形式)
214
215**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
216
217**参数:**
218
219| 参数名   | 类型                                                         | 必填 | 说明                                                         |
220| -------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
221| monitor  | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是   | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 |
222| timeout  | number                                                       | 否   | 最大等待时间,单位毫秒(ms)                                 |
223| callback | AsyncCallback\<[UIAbility](js-apis-app-ability-uiAbility.md)> | 是   | 表示指定的回调方法                                           |
224
225**示例:**
226
227```ts
228let abilityDelegator;
229let timeout = 100;
230
231function onAbilityCreateCallback(data) {
232    console.info('onAbilityCreateCallback');
233}
234
235let monitor = {
236    abilityName: 'abilityname',
237    onAbilityCreate: onAbilityCreateCallback
238};
239
240abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
241abilityDelegator.waitAbilityMonitor(monitor, timeout, (err : any, data : any) => {
242    console.info('waitAbilityMonitor callback');
243});
244```
245
246
247
248### waitAbilityMonitor<sup>9+</sup>
249
250waitAbilityMonitor(monitor: AbilityMonitor, timeout?: number): Promise\<UIAbility>;
251
252设置等待时间,等待与AbilityMonitor实例匹配的ability到达OnCreate生命周期,并返回ability实例(promise形式)
253
254**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
255
256**参数:**
257
258| 参数名  | 类型                                                         | 必填 | 说明                                                         |
259| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
260| monitor | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor) | 是   | [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#AbilityMonitor)实例 |
261| timeout | number                                                       | 否   | 最大等待时间,单位毫秒(ms)                                 |
262
263**返回值:**
264
265| 类型                                                        | 说明                       |
266| ----------------------------------------------------------- | -------------------------- |
267| Promise\<[UIAbility](js-apis-app-ability-uiAbility.md)> | 以Promise形式返回Ability。 |
268
269**示例:**
270
271```ts
272let abilityDelegator;
273
274function onAbilityCreateCallback(data) {
275    console.info('onAbilityCreateCallback');
276}
277
278let monitor = {
279    abilityName: 'abilityname',
280    onAbilityCreate: onAbilityCreateCallback
281};
282
283abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
284abilityDelegator.waitAbilityMonitor(monitor).then((data : any) => {
285    console.info('waitAbilityMonitor promise');
286});
287```
288
289
290
291### getAppContext<sup>9+</sup>
292
293getAppContext(): Context;
294
295获取应用Context
296
297**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
298
299**返回值:**
300
301| 类型                                  | 说明                                        |
302| ------------------------------------- | ------------------------------------------- |
303| [Context](js-apis-inner-application-context.md) | 应用[Context](js-apis-inner-application-context.md)。 |
304
305**示例:**
306
307```ts
308let abilityDelegator;
309
310abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
311let context = abilityDelegator.getAppContext();
312```
313
314
315
316### getAbilityState<sup>9+</sup>
317
318getAbilityState(ability: UIAbility): number;
319
320获取指定ability的生命周期状态
321
322**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
323
324**参数:**
325
326| 参数名  | 类型                                              | 必填 | 说明            |
327| ------- | ------------------------------------------------- | ---- | --------------- |
328| ability | [UIAbility](js-apis-app-ability-uiAbility.md) | 是   | 指定Ability对象 |
329
330**返回值:**
331
332| 类型   | 说明                                                         |
333| ------ | ------------------------------------------------------------ |
334| number | 指定ability的生命周期状态。状态枚举值使用[AbilityLifecycleState](js-apis-application-abilityDelegatorRegistry.md#AbilityLifecycleState)。 |
335
336**示例:**
337
338```ts
339let abilityDelegator;
340let ability;
341
342abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
343abilityDelegator.getCurrentTopAbility((err : any, data : any) => {
344    console.info('getCurrentTopAbility callback');
345    ability = data;
346    let state = abilityDelegator.getAbilityState(ability);
347    console.info('getAbilityState' + state);
348});
349```
350
351
352
353### getCurrentTopAbility<sup>9+</sup>
354
355getCurrentTopAbility(callback: AsyncCallback\<UIAbility>): void;
356
357获取当前应用顶部ability(callback形式)
358
359**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
360
361**参数:**
362
363| 参数名   | 类型                                                         | 必填 | 说明               |
364| -------- | ------------------------------------------------------------ | ---- | ------------------ |
365| callback | AsyncCallback\<[UIAbility](js-apis-app-ability-uiAbility.md)> | 是   | 表示指定的回调方法 |
366
367**示例:**
368
369```ts
370let abilityDelegator;
371let ability;
372
373abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
374abilityDelegator.getCurrentTopAbility((err : any, data : any) => {
375    console.info('getCurrentTopAbility callback');
376    ability = data;
377});
378```
379
380
381
382### getCurrentTopAbility<sup>9+</sup>
383
384getCurrentTopAbility(): Promise\<UIAbility>;
385
386获取当前应用顶部ability(promise形式)
387
388**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
389
390**返回值:**
391
392| 类型                                                        | 说明                                   |
393| ----------------------------------------------------------- | -------------------------------------- |
394| Promise\<[UIAbility](js-apis-app-ability-uiAbility.md)> | 以Promise形式返回当前应用顶部ability。 |
395
396**示例:**
397
398```ts
399let abilityDelegator;
400let ability;
401
402abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
403abilityDelegator.getCurrentTopAbility().then((data : any) => {
404    console.info('getCurrentTopAbility promise');
405    ability = data;
406});
407```
408
409
410
411### startAbility<sup>9+</sup>
412
413startAbility(want: Want, callback: AsyncCallback\<void>): void;
414
415启动指定ability(callback形式)
416
417**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
418
419**参数:**
420
421| 参数名   | 类型                                   | 必填 | 说明               |
422| -------- | -------------------------------------- | ---- | ------------------ |
423| want     | [Want](js-apis-application-want.md) | 是   | 启动Ability参数    |
424| callback | AsyncCallback\<void>                   | 是   | 表示指定的回调方法 |
425
426**示例:**
427
428```ts
429let abilityDelegator;
430let want = {
431    bundleName: 'bundleName',
432    abilityName: 'abilityName'
433};
434
435abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
436abilityDelegator.startAbility(want, (err : any, data : any) => {
437    console.info('startAbility callback');
438});
439```
440
441
442
443### startAbility<sup>9+</sup>
444
445startAbility(want: Want): Promise\<void>;
446
447启动指定ability(promise形式)
448
449**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
450
451**参数:**
452
453| 参数名 | 类型                                   | 必填 | 说明            |
454| ------ | -------------------------------------- | ---- | --------------- |
455| want   | [Want](js-apis-application-want.md) | 是   | 启动Ability参数 |
456
457**返回值:**
458
459| 类型           | 说明                |
460| -------------- | ------------------- |
461| Promise\<void> | 以Promise形式返回。 |
462
463**示例:**
464
465```ts
466let abilityDelegator;
467let want = {
468    bundleName: 'bundleName',
469    abilityName: 'abilityName'
470};
471
472abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
473abilityDelegator.startAbility(want).then((data: any) => {
474    console.info('startAbility promise');
475});
476```
477
478
479
480### doAbilityForeground<sup>9+</sup>
481
482doAbilityForeground(ability: UIAbility, callback: AsyncCallback\<void>): void;
483
484调度指定ability生命周期状态到Foreground状态(callback形式)
485
486**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
487
488**参数:**
489
490| 参数名   | 类型                    | 必填 | 说明                                                    |
491| -------- | ----------------------- | ---- | ------------------------------------------------------- |
492| ability  | UIAbility               | 是   | 指定Ability对象                                         |
493| callback | AsyncCallback\<void>    | 是   | 表示指定的回调方法<br/>\- true:成功<br/>\- false:失败 |
494
495**示例:**
496
497```ts
498let abilityDelegator;
499let ability;
500
501abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
502abilityDelegator.getCurrentTopAbility((err : any, data : any) => {
503    console.info('getCurrentTopAbility callback');
504    ability = data;
505    abilityDelegator.doAbilityForeground(ability, (err : any) => {
506        console.info("doAbilityForeground callback");
507    });
508});
509```
510
511
512
513### doAbilityForeground<sup>9+</sup>
514
515doAbilityForeground(ability: UIAbility): Promise\<void>;
516
517调度指定ability生命周期状态到Foreground状态(promise形式)
518
519**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
520
521**参数:**
522
523| 参数名  | 类型    | 必填 | 说明            |
524| ------- | ------- | ---- | --------------- |
525| ability | UIAbility | 是   | 指定Ability对象 |
526
527**返回值:**
528
529| 类型              | 说明                                                         |
530| ----------------- | ------------------------------------------------------------ |
531| Promise\<boolean> | 以Promise形式返回执行结果。<br/>\- true:成功<br/>\- false:失败 |
532
533**示例:**
534
535```ts
536let abilityDelegator;
537let ability;
538
539abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
540abilityDelegator.getCurrentTopAbility((err : any, data : any) => {
541    console.info('getCurrentTopAbility callback');
542    ability = data;
543    abilityDelegator.doAbilityForeground(ability).then(() => {
544        console.info("doAbilityForeground promise");
545    });
546});
547```
548
549
550
551### doAbilityBackground<sup>9+</sup>
552
553doAbilityBackground(ability: UIAbility, callback: AsyncCallback\<void>): void;
554
555调度指定ability生命周期状态到Background状态(callback形式)
556
557**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
558
559**参数:**
560
561| 参数名   | 类型                    | 必填 | 说明                                                    |
562| -------- | ----------------------- | ---- | ------------------------------------------------------- |
563| ability  | UIAbility                 | 是   | 指定Ability对象                                         |
564| callback | AsyncCallback\<void> | 是   | 表示指定的回调方法<br/>\- true:成功<br/>\- false:失败 |
565
566**示例:**
567
568```ts
569let abilityDelegator;
570let ability;
571
572abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
573abilityDelegator.getCurrentTopAbility((err : any, data : any) => {
574    console.info('getCurrentTopAbility callback');
575    ability = data;
576    abilityDelegator.doAbilityBackground(ability, (err : any) => {
577        console.info("doAbilityBackground callback");
578    });
579});
580```
581
582
583
584### doAbilityBackground<sup>9+</sup>
585
586doAbilityBackground(ability: UIAbility): Promise\<void>;
587
588调度指定ability生命周期状态到Background状态(promise形式)
589
590**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
591
592**参数:**
593
594| 参数名  | 类型    | 必填 | 说明            |
595| ------- | ------- | ---- | --------------- |
596| ability | UIAbility | 是   | 指定Ability对象 |
597
598**返回值:**
599
600| 类型              | 说明                                                         |
601| ----------------- | ------------------------------------------------------------ |
602| Promise\<boolean> | 以Promise形式返回执行结果。<br/>\- true:成功<br/>\- false:失败 |
603
604**示例:**
605
606```ts
607let abilityDelegator;
608let ability;
609
610abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
611abilityDelegator.getCurrentTopAbility((err : any, data : any) => {
612    console.info('getCurrentTopAbility callback');
613    ability = data;
614    abilityDelegator.doAbilityBackground(ability).then(() => {
615        console.info("doAbilityBackground promise");
616    });
617});
618```
619
620
621
622### printSync<sup>9+</sup>
623
624printSync(msg: string): void;
625
626打印日志信息到单元测试终端控制台
627
628**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
629
630**参数:**
631
632| 参数名 | 类型   | 必填 | 说明       |
633| ------ | ------ | ---- | ---------- |
634| msg    | string | 是   | 日志字符串 |
635
636**示例:**
637
638```ts
639let abilityDelegator;
640let msg = 'msg';
641
642abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
643abilityDelegator.printSync(msg);
644```
645
646
647
648### print
649
650print(msg: string, callback: AsyncCallback\<void>): void;
651
652打印日志信息到单元测试终端控制台(callback形式)
653
654**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
655
656**参数:**
657
658| 参数名   | 类型                 | 必填 | 说明               |
659| -------- | -------------------- | ---- | ------------------ |
660| msg      | string               | 是   | 日志字符串         |
661| callback | AsyncCallback\<void> | 是   | 表示指定的回调方法 |
662
663**示例:**
664
665```ts
666let abilityDelegator;
667let msg = 'msg';
668
669abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
670abilityDelegator.print(msg, (err : any) => {
671    console.info('print callback');
672});
673```
674
675
676
677### print
678
679print(msg: string): Promise\<void>;
680
681打印日志信息到单元测试终端控制台(promise形式)
682
683**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
684
685**参数:**
686
687| 参数名 | 类型   | 必填 | 说明       |
688| ------ | ------ | ---- | ---------- |
689| msg    | string | 是   | 日志字符串 |
690
691**返回值:**
692
693| 类型           | 说明                |
694| -------------- | ------------------- |
695| Promise\<void> | 以Promise形式返回。 |
696
697**示例:**
698
699```ts
700let abilityDelegator;
701let msg = 'msg';
702
703abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
704abilityDelegator.print(msg).then(() => {
705    console.info('print promise');
706});
707```
708
709
710
711### executeShellCommand
712
713executeShellCommand(cmd: string, callback: AsyncCallback\<ShellCmdResult>): void;
714
715执行指定的shell命令(callback形式)
716
717**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
718
719**参数:**
720
721| 参数名   | 类型                                                         | 必填 | 说明               |
722| -------- | ------------------------------------------------------------ | ---- | ------------------ |
723| cmd      | string                                                       | 是   | shell命令字符串    |
724| callback | AsyncCallback\<[ShellCmdResult](js-apis-inner-application-shellCmdResult.md#ShellCmdResult)> | 是   | 表示指定的回调方法 |
725
726**示例:**
727
728```ts
729let abilityDelegator;
730let cmd = 'cmd';
731
732abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
733abilityDelegator.executeShellCommand(cmd, (err : any, data : any) => {
734    console.info('executeShellCommand callback');
735});
736```
737
738
739
740### executeShellCommand
741
742executeShellCommand(cmd: string, timeoutSecs: number, callback: AsyncCallback\<ShellCmdResult>): void;
743
744指定超时时间,并执行指定的shell命令(callback形式)
745
746**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
747
748**参数:**
749
750| 参数名      | 类型                                                         | 必填 | 说明                          |
751| ----------- | ------------------------------------------------------------ | ---- | ----------------------------- |
752| cmd         | string                                                       | 是   | shell命令字符串               |
753| timeoutSecs | number                                                       | 否   | 设定命令超时时间,单位秒(s) |
754| callback    | AsyncCallback\<[ShellCmdResult](js-apis-inner-application-shellCmdResult.md#ShellCmdResult)> | 是   | 表示指定的回调方法            |
755
756**示例:**
757
758```ts
759let abilityDelegator;
760let cmd = 'cmd';
761let timeout = 100;
762
763abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
764abilityDelegator.executeShellCommand(cmd, timeout, (err : any, data : any) => {
765    console.info('executeShellCommand callback');
766});
767```
768
769
770
771### executeShellCommand
772
773executeShellCommand(cmd: string, timeoutSecs?: number): Promise\<ShellCmdResult>;
774
775指定超时时间,并执行指定的shell命令(promise形式)
776
777**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
778
779**参数:**
780
781| 参数名      | 类型   | 必填 | 说明                          |
782| ----------- | ------ | ---- | ----------------------------- |
783| cmd         | string | 是   | shell命令字符串               |
784| timeoutSecs | number | 否   | 设定命令超时时间,单位秒(s) |
785
786**返回值:**
787
788| 类型                                                         | 说明                                                         |
789| ------------------------------------------------------------ | ------------------------------------------------------------ |
790| Promise\<[ShellCmdResult](js-apis-inner-application-shellCmdResult.md#ShellCmdResult)> | 以Promise形式返回Shell命令执行结果[ShellCmdResult](js-apis-inner-application-shellCmdResult.md#ShellCmdResult)对象。 |
791
792**示例:**
793
794```ts
795let abilityDelegator;
796let cmd = 'cmd';
797let timeout = 100;
798
799abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
800abilityDelegator.executeShellCommand(cmd, timeout).then((data : any) => {
801    console.info('executeShellCommand promise');
802});
803```
804
805
806
807### finishTest<sup>9+</sup>
808
809finishTest(msg: string, code: number, callback: AsyncCallback\<void>): void;
810
811结束测试并打印日志信息到单元测试终端控制台(callback形式)
812
813**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
814
815**参数:**
816
817| 参数名   | 类型                 | 必填 | 说明               |
818| -------- | -------------------- | ---- | ------------------ |
819| msg      | string               | 是   | 日志字符串         |
820| code     | number               | 是   | 日志码             |
821| callback | AsyncCallback\<void> | 是   | 表示指定的回调方法 |
822
823**示例:**
824
825```ts
826let abilityDelegator;
827let msg = 'msg';
828
829abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
830abilityDelegator.finishTest(msg, 0, (err : any) => {
831    console.info('finishTest callback');
832});
833```
834
835
836
837### finishTest<sup>9+</sup>
838
839finishTest(msg: string, code: number): Promise\<void>;
840
841结束测试并打印日志信息到单元测试终端控制台(promise形式)
842
843**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
844
845**参数:**
846
847| 参数名 | 类型   | 必填 | 说明       |
848| ------ | ------ | ---- | ---------- |
849| msg    | string | 是   | 日志字符串 |
850| code   | number | 是   | 日志码     |
851
852**返回值:**
853
854| 类型           | 说明                |
855| -------------- | ------------------- |
856| Promise\<void> | 以Promise形式返回。 |
857
858**示例:**
859
860```ts
861let abilityDelegator;
862let msg = 'msg';
863
864abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
865abilityDelegator.finishTest(msg, 0).then(() => {
866    console.info('finishTest promise');
867});
868```
869
870### addAbilityStageMonitor<sup>9+</sup>
871
872addAbilityStageMonitor(monitor: AbilityStageMonitor, callback: AsyncCallback\<void>): void;
873
874添加一个AbilityStageMonitor对象,用于监视指定abilityStage的生命周期状态更改。(callback形式)
875
876**系统能力:**SystemCapability.Ability.AbilityRuntime.Core
877
878**参数:**
879
880| 参数名   | 类型                                                         | 必填 | 说明                                                         |
881| -------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ |
882| monitor  | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是       | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 |
883| callback | AsyncCallback\<void>                                         | 是       | 表示指定的回调方法                                           |
884
885**示例:**
886
887```ts
888let abilityDelegator;
889
890let monitor = {
891    moduleName: 'moduleName',
892    srcEntrance: 'srcEntrance',
893};
894
895abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
896abilityDelegator.addAbilityStageMonitor(monitor, (err : any) => {
897    console.info('addAbilityStageMonitor callback');
898});
899```
900
901
902
903### addAbilityStageMonitor<sup>9+</sup>
904
905addAbilityStageMonitor(monitor: AbilityStageMonitor): Promise\<void>;
906
907添加一个AbilityStageMonitor对象,用于监视指定abilityStage的生命周期状态更改。(promise形式)
908
909**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
910
911**参数:**
912
913| 参数名  | 类型                                                         | 必填 | 说明                                                         |
914| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
915| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是   | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 |
916
917**返回值:**
918
919| 类型           | 说明                |
920| -------------- | ------------------- |
921| Promise\<void> | 以Promise形式返回。 |
922
923**示例:**
924
925```ts
926let abilityDelegator;
927
928let monitor = {
929    moduleName: 'moduleName',
930    srcEntrance: 'srcEntrance',
931};
932
933abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
934abilityDelegator.addAbilityStageMonitor(monitor).then(() => {
935    console.info('addAbilityStageMonitor promise');
936});
937```
938
939### removeAbilityStageMonitor<sup>9+</sup>
940
941removeAbilityStageMonitor(monitor: AbilityStageMonitor, callback: AsyncCallback\<void>): void;
942
943从应用程序内存中删除指定的AbilityStageMonitor对象。(callback形式)
944
945**系统能力:**SystemCapability.Ability.AbilityRuntime.Core
946
947**参数:**
948
949| 参数名   | 类型                                                         | 必填 | 说明                                                         |
950| -------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ |
951| monitor  | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是       | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 |
952| callback | AsyncCallback\<void>                                         | 是       | 表示指定的回调方法                                           |
953
954**示例:**
955
956```ts
957let abilityDelegator;
958
959let monitor = {
960    moduleName: 'moduleName',
961    srcEntrance: 'srcEntrance',
962};
963
964abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
965abilityDelegator.removeAbilityStageMonitor(monitor, (err : any) => {
966    console.info('removeAbilityStageMonitor callback');
967});
968```
969
970
971
972### removeAbilityStageMonitor<sup>9+</sup>
973
974removeAbilityStageMonitor(monitor: AbilityStageMonitor): Promise\<void>;
975
976从应用程序内存中删除指定的AbilityStageMonitor对象。(promise形式)
977
978**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
979
980**参数:**
981
982| 参数名  | 类型                                                         | 必填 | 说明                                                         |
983| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
984| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是   | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 |
985
986**返回值:**
987
988| 类型           | 说明                |
989| -------------- | ------------------- |
990| Promise\<void> | 以Promise形式返回。 |
991
992**示例:**
993
994```ts
995let abilityDelegator;
996
997let monitor = {
998    moduleName: 'moduleName',
999    srcEntrance: 'srcEntrance',
1000};
1001
1002abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
1003abilityDelegator.removeAbilityStageMonitor(monitor).then(() => {
1004    console.info('removeAbilityStageMonitor promise');
1005});
1006```
1007
1008### waitAbilityStageMonitor<sup>9+</sup>
1009
1010waitAbilityStageMonitor(monitor: AbilityStageMonitor, callback: AsyncCallback\<AbilityStage>): void;
1011
1012等待并返回与给定AbilityStageMonitor中设置的条件匹配的AbilityStage对象。(callback形式)
1013
1014**系统能力:**SystemCapability.Ability.AbilityRuntime.Core
1015
1016**参数:**
1017
1018| 参数名   | 类型                                                         | 必填 | 说明                                                         |
1019| -------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ |
1020| monitor  | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是       | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 |
1021| callback | AsyncCallback\<AbilityStage>                                         | 是       | 成功返回AbilityStage对象,失败返回空。             |
1022
1023**示例:**
1024
1025```ts
1026let abilityDelegator;
1027
1028function onAbilityCreateCallback(data) {
1029    console.info('onAbilityCreateCallback');
1030}
1031
1032let monitor = {
1033    moduleName: 'moduleName',
1034    srcEntrance: 'srcEntrance',
1035};
1036
1037abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
1038abilityDelegator.waitAbilityStageMonitor(monitor, (err : any, data : any) => {
1039    console.info('waitAbilityStageMonitor callback');
1040});
1041```
1042
1043### waitAbilityStageMonitor<sup>9+</sup>
1044
1045waitAbilityStageMonitor(monitor: AbilityStageMonitor, timeout?: number): Promise\<AbilityStage>;
1046
1047等待并返回与给定AbilityStageMonitor中设置的条件匹配的AbilityStage对象。(promise形式)
1048
1049**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
1050
1051**参数:**
1052
1053| 参数名  | 类型                                                         | 必填 | 说明                                                         |
1054| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
1055| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是   | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 |
1056| timeout | number | 否   | 超时最大等待时间,以毫秒为单位。 |
1057
1058**返回值:**
1059
1060| 类型           | 说明                |
1061| -------------- | ------------------- |
1062| Promise\<AbilityStage> | 成功返回AbilityStage对象,失败返回空。 |
1063
1064**示例:**
1065
1066```ts
1067let abilityDelegator;
1068
1069function onAbilityCreateCallback(data) {
1070    console.info('onAbilityCreateCallback');
1071}
1072
1073let monitor = {
1074    moduleName: 'moduleName',
1075    srcEntrance: 'srcEntrance',
1076};
1077
1078abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
1079abilityDelegator.waitAbilityStageMonitor(monitor).then((data : any) => {
1080    console.info('waitAbilityStageMonitor promise');
1081});
1082```
1083
1084### waitAbilityStageMonitor<sup>9+</sup>
1085
1086waitAbilityStageMonitor(monitor: AbilityStageMonitor, timeout: number, callback: AsyncCallback\<AbilityStage>): void;
1087
1088等待并返回与给定AbilityStageMonitor中设置的条件匹配的AbilityStage对象。(callback形式)
1089
1090**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
1091
1092**参数:**
1093
1094| 参数名  | 类型                                                         | 必填 | 说明                                                         |
1095| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
1096| monitor | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) | 是   | [AbilityStageMonitor](js-apis-inner-application-abilityStageMonitor.md) 实例 |
1097| timeout | number | 否   | 超时最大等待时间,以毫秒为单位。 |
1098| callback | AsyncCallback\<AbilityStage>                                         | 是       | 成功返回AbilityStage对象,失败返回空。                     |
1099
1100**示例:**
1101
1102```ts
1103let abilityDelegator;
1104let timeout = 100;
1105
1106function onAbilityCreateCallback(data) {
1107    console.info('onAbilityCreateCallback');
1108}
1109
1110let monitor = {
1111    moduleName: 'moduleName',
1112    srcEntrance: 'srcEntrance',
1113};
1114
1115abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
1116abilityDelegator.waitAbilityStageMonitor(monitor, timeout, (err : any, data : any) => {
1117    console.info('waitAbilityStageMonitor callback');
1118});
1119```