js-apis-app-ability-abilityDelegatorRegistry.md 4.2 KB
Newer Older
Z
zengyawen 已提交
1
# @ohos.app.ability.abilityDelegatorRegistry (AbilityDelegatorRegistry)
M
m00512953 已提交
2

D
donglin 已提交
3
AbilityDelegatorRegistry是[测试框架](../../ability-deprecated/ability-delegator.md)模块,该模块用于获取[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)[AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象,其中[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)对象提供添加用于监视指定ability的生命周期状态更改的AbilityMonitor对象的能力,[AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象提供获取当前测试参数的能力。
M
m00512953 已提交
4 5 6 7

> **说明:**
> 
> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
D
donglin 已提交
8
> 本模块接口仅可在测试框架中使用。
M
m00512953 已提交
9 10 11 12

## 导入模块

```ts
D
donglin 已提交
13
import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';
M
m00512953 已提交
14 15 16 17
```

## AbilityLifecycleState

D
donglin 已提交
18
Ability生命周期状态,该类型为枚举,可配合[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)[getAbilityState(ability)](js-apis-inner-application-abilityDelegator.md#getabilitystate9)方法返回不同ability生命周期。
M
m00512953 已提交
19 20 21 22 23

**系统能力** :以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

| 名称          | 值   | 说明                        |
| ------------- | ---- | --------------------------- |
D
donglin 已提交
24
| UNINITIALIZED | 0    | 表示Ability处于无效状态。   |
M
m00512953 已提交
25 26 27 28 29 30 31 32 33
| CREATE        | 1    | 表示Ability处于已创建状态。 |
| FOREGROUND    | 2    | 表示Ability处于前台状态。   |
| BACKGROUND    | 3    | 表示Ability处于后台状态。   |
| DESTROY       | 4    | 表示Ability处于已销毁状态。 |

## AbilityDelegatorRegistry.getAbilityDelegator

getAbilityDelegator(): AbilityDelegator

D
donglin 已提交
34
获取应用程序的[AbilityDelegator](js-apis-inner-application-abilityDelegator.md)对象,该对象能够使用调度测试框架的相关功能。
M
m00512953 已提交
35 36 37 38 39 40 41 42 43 44 45 46

**系统能力:** SystemCapability.Ability.AbilityRuntime.Core

**返回值:**

| 类型                                                         | 说明                                                         |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [AbilityDelegator](js-apis-inner-application-abilityDelegator.md#AbilityDelegator) | [AbilityDelegator](js-apis-inner-application-abilityDelegator.md#AbilityDelegator)对象。可以用来调度测试框架相关功能。 |

**示例:**

```ts
D
donglin 已提交
47 48
import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';

M
m00512953 已提交
49 50
var abilityDelegator;
abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
D
donglin 已提交
51 52 53 54 55

let want = {
    bundleName: "com.ohos.example",
    abilityName: "MainAbility"
}
D
donglin 已提交
56 57
abilityDelegator.startAbility(want, (err) => {
    if (err.code !== 0) {
D
donglin 已提交
58 59 60 61 62
        console.log("Success start ability.");
    } else {
        console.log("Failed start ability, error: " + JSON.stringify(err));
    }
})
M
m00512953 已提交
63 64 65 66 67 68
```

## AbilityDelegatorRegistry.getArguments

getArguments(): AbilityDelegatorArgs

D
donglin 已提交
69
获取单元测试参数[AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象。
M
m00512953 已提交
70 71 72 73 74 75 76 77 78 79 80 81

**系统能力:** SystemCapability.Ability.AbilityRuntime.Core

**返回值:**

| 类型                                                         | 说明                                                         |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| [AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md) | [AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md)对象。可以用来获取测试参数。 |

**示例:**

```ts
D
donglin 已提交
82 83
import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';

D
donglin 已提交
84
let args = AbilityDelegatorRegistry.getArguments();
M
m00512953 已提交
85
console.info("getArguments bundleName:" + args.bundleName);
D
donglin 已提交
86
console.info("getArguments parameters:" + JSON.stringify(args.parameters));
M
m00512953 已提交
87 88 89
console.info("getArguments testCaseNames:" + args.testCaseNames);
console.info("getArguments testRunnerClassName:" + args.testRunnerClassName);
```