• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.application.AccessibilityExtensionAbility (AccessibilityExtensionAbility)
2
3The **AccessibilityExtensionAbility** module provides accessibility extension capabilities based on the ExtensionAbility framework.
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
9## Modules to Import
10
11```ts
12import AccessibilityExtensionAbility from '@ohos.application.AccessibilityExtensionAbility';
13```
14
15## Attributes
16
17**System capability**: SystemCapability.BarrierFree.Accessibility.Core
18
19| Name     | Type                                      | Readable  | Writable  | Description          |
20| ------- | ---------------------------------------- | ---- | ---- | ------------ |
21| context | [AccessibilityExtensionContext](js-apis-inner-application-accessibilityExtensionContext.md) | Yes   | No   | Context of the accessibility extension ability.|
22
23## AccessibilityEvent
24
25Defines an accessibility event.
26
27**System capability**: SystemCapability.BarrierFree.Accessibility.Core
28
29### Attributes
30
31| Name     | Type                                                        | Readable| Writable| Description                                                        |
32| --------- | ------------------------------------------------------------ | ---- | ---- | ------------------------------------------------------------ |
33| eventType | [accessibility.EventType](js-apis-accessibility.md#EventType) \| [accessibility.WindowUpdateType](js-apis-accessibility.md#WindowUpdateType)\| [TouchGuideType](#touchguidetype) \| [GestureType](#gesturetype) \| [PageUpdateType](#pageupdatetype) | Yes  | No  | Event type.<br>**EventType**: accessibility event type.<br>**WindowUpdateType**: Window update type.<br>**TouchGuideType**: touch guide event type.<br>**GestureType**: gesture type.<br>**PageUpdateType**: page update type, which is not supported currently.|
34| target    | [AccessibilityElement](js-apis-inner-application-accessibilityExtensionContext.md#accessibilityelement9) | Yes  | No  | Target component where the event occurs.                                        |
35| timeStamp | number                                                       | Yes  | No  | Timestamp of the event.                                                |
36
37## GestureType
38
39Enumerates gesture types.
40
41**System capability**: SystemCapability.BarrierFree.Accessibility.Core
42
43| Name           | Description                 |
44| ------------- | ------------------- |
45| left          | Left gesture. String type.    |
46| leftThenRight | Left-then-right gesture. String type.|
47| leftThenUp    | Left-then-up gesture. String type.|
48| leftThenDown  | Left-then-down gesture. String type.|
49| right         | Right gesture. String type.    |
50| rightThenLeft | Right-then-left gesture. String type.|
51| rightThenUp   | Right-then-up gesture. String type.|
52| rightThenDown | Right-then-down gesture. String type.|
53| up            | Up gesture. String type.    |
54| upThenLeft    | Up-then-left gesture. String type.|
55| upThenRight   | Up-then-right gesture. String type.|
56| upThenDown    | Up-then-down gesture. String type.|
57| down          | Down gesture. String type.    |
58| downThenLeft  | Down-then-left gesture. String type.|
59| downThenRight | Down-then-right gesture. String type.|
60| downThenUp    | Down-then-up gesture. String type.|
61
62## PageUpdateType
63
64Enumerates the page update types. This API is not supported currently.
65
66**System capability**: SystemCapability.BarrierFree.Accessibility.Core
67
68| Name               | Description              |
69| ----------------- | ---------------- |
70| pageContentUpdate | Update of the page content. String type.|
71| pageStateUpdate   | Update of the page status. String type.|
72
73## TouchGuideType
74
75Enumerates the touch guide event types.
76
77**System capability**: SystemCapability.BarrierFree.Accessibility.Core
78
79| Name        | Description                 |
80| ---------- | ------------------- |
81| touchBegin | Start of touch in touch guide mode. String type.|
82| touchEnd   | End of touch in touch guide mode. String type.|
83
84## AccessibilityExtensionAbility.onConnect
85
86onConnect(): void;
87
88Called when the **AccessibilityExtensionAbility** is enabled and connected to the system service. In this API, you can have the service logic initialized. This API can be overridden as required.
89
90**System capability**: SystemCapability.BarrierFree.Accessibility.Core
91
92**Example**
93
94```ts
95import AccessibilityExtensionAbility from '@ohos.application.AccessibilityExtensionAbility';
96
97class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
98    onConnect(): void {
99        console.log('AxExtensionAbility onConnect');
100    }
101}
102```
103
104## AccessibilityExtensionAbility.onDisconnect
105
106onDisconnect(): void;
107
108Called when the **AccessibilityExtensionAbility** is disabled and disconnected from the system service. In this API, you can implement the service logic of resource release and exit. This API can be overridden as required.
109
110**System capability**: SystemCapability.BarrierFree.Accessibility.Core
111
112**Example**
113
114```ts
115import AccessibilityExtensionAbility from '@ohos.application.AccessibilityExtensionAbility';
116
117class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
118    onDisconnect(): void {
119        console.log('AxExtensionAbility onDisconnect');
120    }
121}
122```
123
124## AccessibilityExtensionAbility.onAccessibilityEvent
125
126onAccessibilityEvent(event: AccessibilityEvent): void;
127
128Called when an event that matches the specified bundle and event type occurs. In this API, you can implement event-specific service logic. Generally, this API needs to be overridden.
129
130**System capability**: SystemCapability.BarrierFree.Accessibility.Core
131
132**Parameters**
133
134| Name  | Type                                      | Mandatory  | Description             |
135| ----- | ---------------------------------------- | ---- | --------------- |
136| event | [AccessibilityEvent](#accessibilityevent) | Yes   | Accessibility event. No value is returned.|
137
138**Example**
139
140```ts
141import AccessibilityExtensionAbility , { AccessibilityEvent } from '@ohos.application.AccessibilityExtensionAbility';
142
143class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
144    onAccessibilityEvent(event: AccessibilityEvent): void {
145        console.log('AxExtensionAbility onAccessibilityEvent');
146        if (event.eventType === 'click') {
147            console.log('AxExtensionAbility onAccessibilityEvent: click');
148        }
149    }
150}
151```
152
153## AccessibilityExtensionAbility.onKeyEvent
154
155onKeyEvent(keyEvent: KeyEvent): boolean;
156
157Called when a physical key is pressed. In this API, you can determine whether to intercept an event based on the service.
158
159**System capability**: SystemCapability.BarrierFree.Accessibility.Core
160
161**Parameters**
162
163| Name     | Type                                      | Mandatory  | Description                     |
164| -------- | ---------------------------------------- | ---- | ----------------------- |
165| keyEvent | [KeyEvent](js-apis-keyevent.md#KeyEvent) | Yes   | Key event. If **true** is returned, the key is intercepted.|
166
167**Example**
168
169```ts
170import AccessibilityExtensionAbility from '@ohos.application.AccessibilityExtensionAbility';
171import { KeyEvent } from '@ohos.multimodalInput.keyEvent';
172
173class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
174    onKeyEvent(keyEvent: KeyEvent): boolean {
175        console.log('AxExtensionAbility onKeyEvent');
176        if (keyEvent.key.code === 16) {
177            console.log('AxExtensionAbility onKeyEvent: intercept 16');
178            return true;
179        }
180        return false;
181    }
182}
183```
184