• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.app.ability.abilityDelegatorRegistry (AbilityDelegatorRegistry)
2
3**AbilityDelegatorRegistry**, a module of the [Automatic Test Framework](../../application-test/arkxtest-guidelines.md), is used to obtain [AbilityDelegator](js-apis-inner-application-abilityDelegator.md) and [AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md) objects. **AbilityDelegator** provides APIs for creating [AbilityMonitor](js-apis-inner-application-abilityMonitor.md#abilitymonitor-1) objects, which can be used to listen for ability lifecycle changes. **AbilityDelegatorArgs** provides APIs for obtaining test parameters.
4
5> **NOTE**
6>
7> The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.
8> The APIs provided by this module can be used only in the test framework.
9
10## Modules to Import
11
12```ts
13import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';
14```
15
16## AbilityLifecycleState
17
18Enumerates the ability lifecycle states. It can be used in [getAbilityState(ability)](js-apis-inner-application-abilityDelegator.md#getabilitystate9) of [AbilityDelegator](js-apis-inner-application-abilityDelegator.md) to return different ability lifecycle states.
19
20**System capability**: SystemCapability.Ability.AbilityRuntime.Core
21
22| Name         | Value  | Description                       |
23| ------------- | ---- | --------------------------- |
24| UNINITIALIZED | 0    | The ability is in an invalid state.  |
25| CREATE        | 1    | The ability is created.|
26| FOREGROUND    | 2    | The ability is running in the foreground.  |
27| BACKGROUND    | 3    | The ability is running in the background.  |
28| DESTROY       | 4    | The ability is destroyed.|
29
30## AbilityDelegatorRegistry.getAbilityDelegator
31
32getAbilityDelegator(): AbilityDelegator
33
34Obtains an [AbilityDelegator](js-apis-inner-application-abilityDelegator.md) object.
35
36**System capability**: SystemCapability.Ability.AbilityRuntime.Core
37
38**Return value**
39
40| Type                                                        | Description                                                        |
41| ------------------------------------------------------------ | ------------------------------------------------------------ |
42| [AbilityDelegator](js-apis-inner-application-abilityDelegator.md#AbilityDelegator) | [AbilityDelegator](js-apis-inner-application-abilityDelegator.md#AbilityDelegator) object, which can be used to schedule the functionalities of the test framework.|
43
44**Example**
45
46```ts
47import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';
48import Want from '@ohos.app.ability.Want';
49
50let abilityDelegator = AbilityDelegatorRegistry.getAbilityDelegator();
51
52let want: Want = {
53    bundleName: 'com.example.myapplication',
54    abilityName: 'EntryAbility'
55};
56abilityDelegator.startAbility(want, (err) => {
57    if (err) {
58        console.error(`Failed start ability, error: ${JSON.stringify(err)}`);
59    } else {
60        console.log('Success start ability.');
61    }
62});
63```
64
65## AbilityDelegatorRegistry.getArguments
66
67getArguments(): AbilityDelegatorArgs
68
69Obtains an [AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md) object.
70
71**System capability**: SystemCapability.Ability.AbilityRuntime.Core
72
73**Return value**
74
75| Type                                                        | Description                                                        |
76| ------------------------------------------------------------ | ------------------------------------------------------------ |
77| [AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md) | [AbilityDelegatorArgs](js-apis-inner-application-abilityDelegatorArgs.md) object, which can be used to obtain test parameters.|
78
79**Example**
80
81```ts
82import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry';
83
84let args = AbilityDelegatorRegistry.getArguments();
85console.info(`getArguments bundleName: ${args.bundleName}`);
86console.info(`getArguments parameters: ${JSON.stringify(args.parameters)}`);
87console.info(`getArguments testCaseNames: ${args.testCaseNames}`);
88console.info(`getArguments testRunnerClassName: ${args.testRunnerClassName}`);
89```
90