• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.app.ability.abilityDelegatorRegistry (AbilityDelegatorRegistry)
2
3AbilityDelegatorRegistry是[自动化测试框架使用指南](../../application-test/arkxtest-guidelines.md)模块,该模块用于获取[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)和[AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象,其中[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)对象提供添加用于监视指定ability的生命周期状态更改的[AbilityMonitor](../apis-ability-kit/js-apis-inner-application-abilityMonitor.md#abilitymonitor-1)对象的能力,[AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象提供获取当前测试参数的能力。
4
5> **说明:**
6>
7> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8>
9> 本模块接口仅可在[自动化测试框架arkxtest](../../application-test/arkxtest-guidelines.md)中使用。
10
11## 导入模块
12
13```ts
14import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';
15```
16
17## AbilityLifecycleState
18
19Ability生命周期状态,该类型为枚举,可配合[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)的[getAbilityState(ability)](js-apis-inner-application-abilityDelegator.md#getabilitystate9)方法返回不同ability生命周期。
20
21**系统能力** :以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
22
23| 名称          | 值   | 说明                        |
24| ------------- | ---- | --------------------------- |
25| UNINITIALIZED | 0    | 表示Ability处于无效状态。   |
26| CREATE        | 1    | 表示Ability处于已创建状态。 |
27| FOREGROUND    | 2    | 表示Ability处于前台状态。   |
28| BACKGROUND    | 3    | 表示Ability处于后台状态。   |
29| DESTROY       | 4    | 表示Ability处于已销毁状态。 |
30
31## AbilityDelegatorRegistry.getAbilityDelegator
32
33getAbilityDelegator(): AbilityDelegator
34
35获取应用程序的[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)对象,该对象能够使用调度测试框架的相关功能。
36
37**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
38
39**返回值:**
40
41| 类型                                                         | 说明                                                         |
42| ------------------------------------------------------------ | ------------------------------------------------------------ |
43| [AbilityDelegator](js-apis-inner-application-abilityDelegator.md) | [AbilityDelegator](js-apis-inner-application-abilityDelegator.md)对象。可以用来调度测试框架相关功能。 |
44
45**示例:**
46
47```ts
48import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';
49import Want from '@ohos.app.ability.Want';
50
51let abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
52
53let want: Want = {
54    bundleName: 'com.example.myapplication',
55    abilityName: 'EntryAbility'
56};
57abilityDelegator.startAbility(want, (err) => {
58    if (err) {
59        console.error(`Failed start ability, error: ${JSON.stringify(err)}`);
60    } else {
61        console.log('Success start ability.');
62    }
63});
64```
65
66## AbilityDelegatorRegistry.getArguments
67
68getArguments(): AbilityDelegatorArgs
69
70获取单元测试参数[AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象。
71
72**系统能力:** SystemCapability.Ability.AbilityRuntime.Core
73
74**返回值:**
75
76| 类型                                                         | 说明                                                         |
77| ------------------------------------------------------------ | ------------------------------------------------------------ |
78| [AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md) | [AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象。可以用来获取测试参数。 |
79
80**示例:**
81
82```ts
83import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';
84
85let args = AbilityDelegatorRegistry.getArguments();
86console.info(`getArguments bundleName: ${args.bundleName}`);
87console.info(`getArguments parameters: ${JSON.stringify(args.parameters)}`);
88console.info(`getArguments testCaseNames: ${args.testCaseNames}`);
89console.info(`getArguments testRunnerClassName: ${args.testRunnerClassName}`);
90```
91