• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.accessibility (辅助功能)
2
3本模块提供辅助功能查询能力,包括获取辅助应用列表、辅助应用启用状态、无障碍字幕配置等。
4
5> **说明:**
6>
7> 本模块首批接口从 API version 7 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```ts
12import accessibility from '@ohos.accessibility';
13```
14
15## AbilityState
16
17辅助应用状态类型。
18
19**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core
20
21| 名称      | 描述       |
22| ------- | -------- |
23| enable  | 辅助应用已启用。 |
24| disable | 辅助应用已禁用。 |
25| install | 辅助应用已安装。 |
26
27## AbilityType
28
29无障碍辅助应用类型。
30
31**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core
32
33| 名称               | 描述        |
34| ---------------- | --------- |
35| audible          | 表示具有听觉反馈。 |
36| generic          | 表示具有通用反馈。 |
37| haptic           | 表示具有触觉反馈。 |
38| spoken           | 表示具有语音反馈。 |
39| visual           | 表示具有视觉反馈。 |
40| all<sup>9+</sup> | 表示以上所有类别。 |
41
42## AccessibilityAbilityInfo
43
44辅助应用信息。
45
46**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core
47
48### 属性
49
50| 名称                             | 类型                                       | 可读   | 可写   | 说明               |
51| ------------------------------ | ---------------------------------------- | ---- | ---- | ---------------- |
52| id                             | string                                   | 是    | 否    | ability&nbsp;id。 |
53| name                           | string                                   | 是    | 否    | ability 名。       |
54| bundleName                     | string                                   | 是    | 否    | Bundle名称。        |
55| targetBundleNames<sup>9+</sup> | Array&lt;string&gt;                      | 是    | 否    | 关注的目标Bundle名称。   |
56| abilityTypes                   | Array&lt;[AbilityType](#abilitytype)&gt; | 是    | 否    | 辅助应用类型。          |
57| capabilities                   | Array&lt;[Capability](#capability)&gt;   | 是    | 否    | 辅助应用能力列表。        |
58| description                    | string                                   | 是    | 否    | 辅助应用描述。          |
59| eventTypes                     | Array&lt;[EventType](#eventtype)&gt;     | 是    | 否    | 辅助应用关注的无障碍事件列表。  |
60
61## Action
62
63应用所支持的目标动作。
64
65**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core
66
67| 名称                      | 描述                 |
68| ----------------------- | ------------------ |
69| click                   | 表示点击操作。            |
70| longClick               | 表示长按操作。            |
71| scrollForward           | 表示向前滚动操作;当前版本暂不支持。 |
72| scrollBackward          | 表示向后滚动操作;当前版本暂不支持。 |
73| focus                   | 表示获得焦点操作;当前版本暂不支持。 |
74| clearFocus              | 表示清除焦点操作;当前版本暂不支持。 |
75| clearSelection          | 表示清除选择操作;当前版本暂不支持。 |
76| accessibilityFocus      | 表示获得无障碍焦点操作。       |
77| clearAccessibilityFocus | 表示清除无障碍焦点操作。       |
78| cut                     | 表示剪切操作;当前版本暂不支持。   |
79| copy                    | 表示复制操作;当前版本暂不支持。   |
80| paste                   | 表示粘贴操作;当前版本暂不支持。   |
81| select                  | 表示选择操作,当前版本暂不支持。   |
82| setText                 | 表示设置文本操作;当前版本暂不支持。 |
83| delete                  | 表示删除操作;当前版本暂不支持。   |
84| setSelection            | 表示选择操作;当前版本暂不支持。   |
85
86## Capability
87
88辅助应用能力类型。
89
90**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core
91
92| 名称               | 描述                    |
93| ---------------- | --------------------- |
94| retrieve         | 具有检索窗口内容的能力。          |
95| touchGuide       | 具有触摸探索模式的能力。          |
96| keyEventObserver | 具有过滤按键事件的能力。          |
97| zoom             | 具有控制显示放大的能力;当前版本暂不支持。 |
98| gesture          | 具有执行手势动作的能力。          |
99
100## CaptionsFontEdgeType<sup>8+</sup>
101
102字幕字体边缘类型。
103
104**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Hearing
105
106| 名称         | 描述    |
107| ---------- | ----- |
108| none       | 无效果。  |
109| raised     | 凸起效果。 |
110| depressed  | 凹陷效果。 |
111| uniform    | 轮廓效果。 |
112| dropShadow | 阴影效果。 |
113
114## CaptionsFontFamily<sup>8+</sup>
115
116字幕字体。
117
118**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Hearing
119
120| 名称                  | 描述                |
121| ------------------- | ----------------- |
122| default             | 默认字体。             |
123| monospacedSerif     | 等宽 Serif 字体。      |
124| serif               | Serif 字体。         |
125| monospacedSansSerif | 等宽 Sans Serif 字体。 |
126| sansSerif           | Sans Serif 字体。    |
127| casual              | 非正式字体。            |
128| cursive             | 手写字体。             |
129| smallCapitals       | 小型大写字母字体。         |
130
131## CaptionsStyle<sup>8+</sup>
132
133字幕风格。
134
135**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Hearing
136
137| 名称              | 类型                                       | 可读   | 可写   | 说明          |
138| --------------- | ---------------------------------------- | ---- | ---- | ----------- |
139| fontFamily      | [CaptionsFontFamily](#captionsfontfamily8) | 是    | 否    | 描述字幕字体。     |
140| fontScale       | number                                   | 是    | 否    | 描述字幕字体缩放系数,单位%,参数范围1~200。 |
141| fontColor       | number \| string                         | 是    | 否    | 描述字幕字体颜色,例如red对应#FF0000。   |
142| fontEdgeType    | [CaptionsFontEdgeType](#captionsfontedgetype8) | 是    | 否    | 描述字幕字体边缘。   |
143| backgroundColor | number \| string                         | 是    | 否    | 描述字幕背景颜色,例如red对应#FF0000。   |
144| windowColor     | number \| string                         | 是    | 否    | 描述字幕窗口颜色,例如red对应#FF0000。   |
145
146## CaptionsManager<sup>8+</sup>
147
148字幕配置管理,在调用CaptionsManager的方法前,需要先通过 [accessibility.getCaptionsManager()](#accessibilitygetcaptionsmanager8)获取 CaptionsManager实例。
149
150**系统能力**:以下各项对应的系统能力均为SystemCapability.BarrierFree.Accessibility.Hearing
151
152### 属性
153
154| 名称      | 类型                               | 可读   | 可写   | 说明          |
155| ------- | -------------------------------- | ---- | ---- | ----------- |
156| enabled | boolean                          | 是    | 否    | 表示是否启用字幕配置。 |
157| style   | [CaptionsStyle](#captionsstyle8) | 是    | 否    | 表示字幕风格。     |
158
159### on('enableChange')
160
161on(type: 'enableChange', callback: Callback&lt;boolean&gt;): void;
162
163监听字幕配置启用状态变化事件,使用callback异步回调。
164
165**系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing
166
167**参数:**
168
169| 参数名      | 类型                      | 必填   | 说明                                      |
170| -------- | ----------------------- | ---- | --------------------------------------- |
171| type     | string                  | 是    | 监听的事件名,固定为‘enableChange’,即字幕配置启用状态变化事件。 |
172| callback | Callback&lt;boolean&gt; | 是    | 回调函数,在启用状态变化时将状态通过此函数进行通知。              |
173
174**示例:**
175
176```ts
177import accessibility from '@ohos.accessibility';
178
179let captionsManager = accessibility.getCaptionsManager();
180try {
181    captionsManager.on('enableChange', (data: boolean) => {
182        console.info('subscribe caption manager enable state change, result: ' + JSON.stringify(data));
183    });
184} catch (exception) {
185    console.error('failed to subscribe caption manager enable state change, because ' + JSON.stringify(exception));
186}
187```
188
189### on('styleChange')
190
191on(type: 'styleChange', callback: Callback&lt;CaptionsStyle&gt;): void;
192
193监听字幕风格变化事件,使用callback异步回调。
194
195**系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing
196
197**参数:**
198
199| 参数名      | 类型                                       | 必填   | 说明                                 |
200| -------- | ---------------------------------------- | ---- | ---------------------------------- |
201| type     | string                                   | 是    | 监听的事件名,固定为‘styleChange’,即字幕风格变化事件。 |
202| callback | Callback&lt;[CaptionsStyle](#captionsstyle8)&gt; | 是    | 回调函数,在字幕风格变化时通过此函数进行通知。            |
203
204**示例:**
205
206```ts
207import accessibility from '@ohos.accessibility';
208
209let captionStyle: accessibility.CaptionsStyle;
210let captionsManager = accessibility.getCaptionsManager();
211try {
212    captionsManager.on('styleChange', (data: accessibility.CaptionsStyle) => {
213        captionStyle = data;
214        console.info('subscribe caption manager style state change, result: ' + JSON.stringify(data));
215    });
216} catch (exception) {
217    console.error('failed to subscribe caption manager style state change, because ' + JSON.stringify(exception));
218}
219```
220
221### off('enableChange')
222
223off(type: 'enableChange', callback?: Callback&lt;boolean&gt;): void;
224
225取消监听字幕配置启用状态变化事件,使用callback异步回调。
226
227**系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing
228
229**参数:**
230
231| 参数名   | 类型                    | 必填 | 说明                                                         |
232| -------- | ----------------------- | ---- | ------------------------------------------------------------ |
233| type     | string                  | 是   | 取消监听的事件名,固定为‘enableChange’,即字幕配置启用状态变化事件。 |
234| callback | Callback&lt;boolean&gt; | 否   | 回调函数,取消指定callback对象的事件响应。需与on('enableChange')的callback一致。缺省时,表示注销所有已注册事件。 |
235
236**示例:**
237
238```ts
239import accessibility from '@ohos.accessibility';
240
241let captionsManager = accessibility.getCaptionsManager();
242try {
243    captionsManager.off('enableChange', (data: boolean) => {
244        console.info('Unsubscribe caption manager enable state change, result: ' + JSON.stringify(data));
245    });
246} catch (exception) {
247    console.error('failed to Unsubscribe caption manager enable state change, because ' + JSON.stringify(exception));
248}
249```
250
251### off('styleChange')
252
253off(type: 'styleChange', callback?: Callback&lt;CaptionsStyle&gt;): void;
254
255取消字幕风格变化监听事件,使用callback异步回调。
256
257**系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing
258
259**参数:**
260
261| 参数名   | 类型                                             | 必填 | 说明                                                         |
262| -------- | ------------------------------------------------ | ---- | ------------------------------------------------------------ |
263| type     | string                                           | 是   | 取消监听的事件名,固定为‘styleChange’,即字幕风格变化事件。  |
264| callback | Callback&lt;[CaptionsStyle](#captionsstyle8)&gt; | 否   | 回调函数,取消指定callback对象的事件响应。需与on('styleChange')的callback一致。缺省时,表示注销所有已注册事件。 |
265
266**示例:**
267
268```ts
269import accessibility from '@ohos.accessibility';
270
271let captionStyle: accessibility.CaptionsStyle;
272let captionsManager = accessibility.getCaptionsManager();
273try {
274    captionsManager.off('styleChange', (data: accessibility.CaptionsStyle) => {
275        captionStyle = data;
276        console.info('Unsubscribe caption manager style state change, result: ' + JSON.stringify(data));
277    });
278} catch (exception) {
279    console.error('failed to Unsubscribe caption manager style state change, because ' + JSON.stringify(exception));
280}
281```
282
283## EventInfo
284
285界面变更事件。
286
287**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core
288
289### 属性
290
291| 名称               | 类型                                    | 可读   | 可写   | 说明                    |
292| ---------------- | ------------------------------------- | ---- | ---- | --------------------- |
293| type             | [EventType](#eventtype)               | 是    | 是    | 无障碍事件类型。              |
294| windowUpdateType | [WindowUpdateType](#windowupdatetype) | 是    | 是    | 窗口变化类型。               |
295| bundleName       | string                                | 是    | 是    | 目标应用名。                |
296| componentType    | string                                | 是    | 是    | 事件源组件类型,如按钮、图表。       |
297| pageId           | number                                | 是    | 是    | 事件源的页面 ID。            |
298| description      | string                                | 是    | 是    | 事件描述;当前版本暂不支持。        |
299| triggerAction    | [Action](#action)                     | 是    | 是    | 触发事件的 Action。         |
300| textMoveUnit     | [TextMoveUnit](#textmoveunit)         | 是    | 是    | 文本移动粒度;当前版本暂不支持。      |
301| contents         | Array&lt;string&gt;                   | 是    | 是    | 内容列表。                 |
302| lastContent      | string                                | 是    | 是    | 最新内容。                 |
303| beginIndex       | number                                | 是    | 是    | 画面显示条目的开始序号;当前版本暂不支持。 |
304| currentIndex     | number                                | 是    | 是    | 当前条目序号;当前版本暂不支持。      |
305| endIndex         | number                                | 是    | 是    | 画面显示条目的结束序号;当前版本暂不支持。 |
306| itemCount        | number                                | 是    | 是    | 条目总数;当前版本暂不支持。        |
307
308### constructor
309
310constructor(jsonObject)
311
312构造函数。
313
314**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
315
316**参数:**
317
318| 参数名        | 类型     | 必填   | 说明                   |
319| ---------- | ------ | ---- | -------------------- |
320| jsonObject | string | 是    | 创建对象所需要的 JSON 格式字符串。 |
321
322**示例:**
323
324  ```ts
325  import accessibility from '@ohos.accessibility';
326
327  let eventInfo: accessibility.EventInfo = ({
328    type: 'click',
329    bundleName: 'com.example.MyApplication',
330    triggerAction: 'click'
331  });
332  ```
333
334## EventType
335
336无障碍事件类型。
337
338**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core
339
340| 名称                      | 描述                     |
341| ----------------------- | ---------------------- |
342| click                   | 描述点击组件的事件。             |
343| longClick               | 描述长按组件的事件。             |
344| select                  | 描述选择组件的事件;当前版本暂不支持。    |
345| focus                   | 描述组件获得焦点的事件;当前版本暂不支持。  |
346| textUpdate              | 描述组件文本已更改的事件;当前版本暂不支持。 |
347| hoverEnter              | 描述悬停进入组件的事件;当前版本暂不支持。  |
348| hoverExit               | 描述悬停离开组件的事件;当前版本暂不支持。  |
349| scroll                  | 描述滚动视图的事件;当前版本暂不支持。    |
350| textSelectionUpdate     | 描述选定文本已更改的事件;当前版本暂不支持。 |
351| accessibilityFocus      | 描述获得无障碍焦点的事件。          |
352| accessibilityFocusClear | 描述清除无障碍焦点的事件。          |
353
354## TextMoveUnit
355
356文本无障碍导航移动粒度。
357
358**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core
359
360| 名称        | 描述              |
361| --------- | --------------- |
362| char      | 以字符为移动粒度遍历节点文本。 |
363| word      | 以词为移动粒度遍历节点文本。  |
364| line      | 以行为移动粒度遍历节点文本。  |
365| page      | 以页为移动粒度遍历节点文本。  |
366| paragraph | 以段落为移动粒度遍历节点文本。 |
367
368## WindowUpdateType
369
370窗口变化类型。
371
372**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core
373
374| 名称     | 描述                 |
375| ------ | ------------------ |
376| add    | 添加窗口的窗口变化事件。       |
377| remove | 一个窗口被删除的窗口变化事件。    |
378| bounds | 窗口边界已更改的窗口变化事件。    |
379| active | 窗口变为活动或不活动的窗口变化事件。 |
380| focus  | 窗口焦点发生变化的窗口变化事件。   |
381
382## accessibility.getAbilityLists<sup>(deprecated)</sup>
383
384getAbilityLists(abilityType: AbilityType, stateType: AbilityState): Promise&lt;Array&lt;AccessibilityAbilityInfo&gt;&gt;
385
386查询辅助应用列表,使用Promise异步回调。
387
388> **说明:**
389>
390> 从API version 7开始支持,从API version 9开始废弃。
391> 推荐使用[getAccessibilityExtensionList()](#accessibilitygetaccessibilityextensionlist9)。
392
393**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
394
395**参数:**
396
397| 参数名         | 类型                            | 必填   | 说明       |
398| ----------- | ----------------------------- | ---- | -------- |
399| abilityType | [AbilityType](#abilitytype)   | 是    | 辅助应用的类型。 |
400| stateType   | [AbilityState](#abilitystate) | 是    | 辅助应用的状态。 |
401
402**返回值:**
403
404| 类型                                       | 说明                    |
405| ---------------------------------------- | --------------------- |
406| Promise&lt;Array&lt;[AccessibilityAbilityInfo](#accessibilityabilityinfo)&gt;&gt; | Promise对象,返回辅助应用信息列表。 |
407
408**示例:**
409
410```ts
411import accessibility from '@ohos.accessibility';
412
413let abilityType : accessibility.AbilityType = 'spoken';
414let abilityState : accessibility.AbilityState = 'enable';
415let abilityList: accessibility.AccessibilityAbilityInfo[];
416try {
417  accessibility.getAbilityLists(abilityType, abilityState)
418    .then((data: accessibility.AccessibilityAbilityInfo[]) => {
419      for (let item of data) {
420        console.info(item.id);
421        console.info(item.name);
422        console.info(item.description);
423        console.info(item.bundleName);
424        abilityList.push(item);
425      }
426      console.info('get accessibility extension list success');
427    })
428    .catch((err: object) => {
429      console.error('failed to get accessibility extension list because ' + JSON.stringify(err));
430    });
431} catch (exception) {
432  console.error('failed to get accessibility extension list because ' + JSON.stringify(exception));
433}
434```
435
436## accessibility.getAbilityLists<sup>(deprecated)</sup>
437
438getAbilityLists(abilityType: AbilityType, stateType: AbilityState,callback: AsyncCallback&lt;Array&lt;AccessibilityAbilityInfo&gt;&gt;): void
439
440查询辅助应用列表,使用callback异步回调。
441
442> **说明:**
443>
444> 从API version 7开始支持,从API version 9开始废弃。
445> 推荐使用[getAccessibilityExtensionList()](#accessibilitygetaccessibilityextensionlist9-1)。
446
447**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
448
449**参数:**
450
451| 参数名         | 类型                                       | 必填   | 说明               |
452| ----------- | ---------------------------------------- | ---- | ---------------- |
453| abilityType | [AbilityType](#abilitytype)              | 是    | 辅助应用的类型。         |
454| stateType   | [AbilityState](#abilitystate)            | 是    | 辅助应用的状态。         |
455| callback    | AsyncCallback&lt;Array&lt;[AccessibilityAbilityInfo](#accessibilityabilityinfo)&gt;&gt; | 是    | 回调函数,返回辅助应用信息列表。 |
456
457**示例:**
458
459```ts
460import accessibility from '@ohos.accessibility';
461import { BusinessError } from '@ohos.base';
462
463let abilityType : accessibility.AbilityType = 'spoken';
464let abilityState : accessibility.AbilityState = 'enable';
465let abilityList: accessibility.AccessibilityAbilityInfo[];
466try {
467    accessibility.getAbilityLists(abilityType, abilityState,
468    (err: BusinessError<void>, data: accessibility.AccessibilityAbilityInfo[]) => {
469        if (err) {
470            console.error('failed to get accessibility extension list because ' + JSON.stringify(err));
471            return;
472        }
473        for (let item of data) {
474            console.info(item.id);
475            console.info(item.name);
476            console.info(item.description);
477            console.info(item.bundleName);
478            abilityList.push(item);
479        }
480        console.info('get accessibility extension list success');
481    })
482} catch (exception) {
483    console.error('failed to get accessibility extension list because ' + JSON.stringify(exception));
484}
485```
486
487## accessibility.getAccessibilityExtensionList<sup>9+</sup>
488
489getAccessibilityExtensionList(abilityType: AbilityType, stateType: AbilityState): Promise&lt;Array&lt;AccessibilityAbilityInfo&gt;&gt;
490
491查询辅助应用列表,使用Promise异步回调。
492
493**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
494
495**参数:**
496
497| 参数名         | 类型                            | 必填   | 说明       |
498| ----------- | ----------------------------- | ---- | -------- |
499| abilityType | [AbilityType](#abilitytype)   | 是    | 辅助应用的类型。 |
500| stateType   | [AbilityState](#abilitystate) | 是    | 辅助应用的状态。 |
501
502**返回值:**
503
504| 类型                                       | 说明                    |
505| ---------------------------------------- | --------------------- |
506| Promise&lt;Array&lt;[AccessibilityAbilityInfo](#accessibilityabilityinfo)&gt;&gt; | Promise对象,返回辅助应用信息列表。 |
507
508**示例:**
509
510```ts
511import accessibility from '@ohos.accessibility';
512
513let abilityType : accessibility.AbilityType = 'spoken';
514let abilityState : accessibility.AbilityState = 'enable';
515let extensionList: accessibility.AccessibilityAbilityInfo[] = [];
516try {
517    accessibility.getAccessibilityExtensionList(abilityType, abilityState)
518    .then((data: accessibility.AccessibilityAbilityInfo[]) => {
519        for (let item of data) {
520            console.info(item.id);
521            console.info(item.name);
522            console.info(item.description);
523            console.info(item.bundleName);
524            extensionList.push(item);
525        }
526        console.info('get accessibility extension list success');
527    })
528    .catch((err: object) => {
529        console.error('failed to get accessibility extension list because ' + JSON.stringify(err));
530    });
531} catch (exception) {
532    console.error('failed to get accessibility extension list because ' + JSON.stringify(exception));
533}
534```
535
536## accessibility.getAccessibilityExtensionList<sup>9+</sup>
537
538getAccessibilityExtensionList(abilityType: AbilityType, stateType: AbilityState, callback: AsyncCallback&lt;Array&lt;AccessibilityAbilityInfo&gt;&gt;): void
539
540查询辅助应用列表,使用callback异步回调。
541
542**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
543
544**参数:**
545
546| 参数名         | 类型                                       | 必填   | 说明               |
547| ----------- | ---------------------------------------- | ---- | ---------------- |
548| abilityType | [AbilityType](#abilitytype)              | 是    | 辅助应用的类型。         |
549| stateType   | [AbilityState](#abilitystate)            | 是    | 辅助应用的状态。         |
550| callback    | AsyncCallback&lt;Array&lt;[AccessibilityAbilityInfo](#accessibilityabilityinfo)&gt;&gt; | 是    | 回调函数,返回辅助应用信息列表。 |
551
552**示例:**
553
554```ts
555import accessibility from '@ohos.accessibility';
556import { BusinessError } from '@ohos.base';
557
558let abilityType : accessibility.AbilityType = 'spoken';
559let abilityState : accessibility.AbilityState = 'enable';
560let extensionList: accessibility.AccessibilityAbilityInfo[] = [];
561try {
562    accessibility.getAccessibilityExtensionList(abilityType, abilityState,
563    (err: BusinessError<void>, data: accessibility.AccessibilityAbilityInfo[]) => {
564        if (err) {
565            console.error('failed to get accessibility extension list because ' + JSON.stringify(err));
566            return;
567        }
568        for (let item of data) {
569            console.info(item.id);
570            console.info(item.name);
571            console.info(item.description);
572            console.info(item.bundleName);
573            extensionList.push(item);
574        }
575        console.info('get accessibility extension list success');
576    });
577} catch (exception) {
578    console.error('failed to get accessibility extension list because ' + JSON.stringify(exception));
579}
580```
581
582## accessibility.getCaptionsManager<sup>8+</sup>
583
584getCaptionsManager(): CaptionsManager
585
586获取无障碍字幕配置管理实例。
587
588**系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing
589
590**返回值:**
591
592| 类型                                   | 说明         |
593| ------------------------------------ | ---------- |
594| [CaptionsManager](#captionsmanager8) | 无障碍字幕配置管理。 |
595
596**示例:**
597
598```ts
599import accessibility from '@ohos.accessibility';
600
601let captionsManager = accessibility.getCaptionsManager();
602```
603
604## accessibility.on('accessibilityStateChange')
605
606on(type: 'accessibilityStateChange', callback: Callback&lt;boolean&gt;): void
607
608监听辅助应用启用状态变化事件,使用callback异步回调。
609
610**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
611
612**参数:**
613
614| 参数名   | 类型                    | 必填 | 说明                                                         |
615| -------- | ----------------------- | ---- | ------------------------------------------------------------ |
616| type     | string                  | 是   | 监听的事件名,固定为‘accessibilityStateChange’,即辅助应用启用状态变化事件。 |
617| callback | Callback&lt;boolean&gt; | 是   | 回调函数,在辅助应用启用状态变化时将状态通过此函数进行通知。此状态为全局辅助应用启用状态。 |
618
619**示例:**
620
621```ts
622import accessibility from '@ohos.accessibility';
623
624try {
625    accessibility.on('accessibilityStateChange', (data: boolean) => {
626        console.info('subscribe accessibility state change, result: ' + JSON.stringify(data));
627    });
628} catch (exception) {
629    console.error('failed to subscribe accessibility state change, because ' + JSON.stringify(exception));
630}
631```
632
633## accessibility.on('touchGuideStateChange')
634
635on(type: 'touchGuideStateChange', callback: Callback&lt;boolean&gt;): void
636
637监听触摸浏览功能启用状态变化事件,使用callback异步回调。
638
639**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision
640
641**参数:**
642
643| 参数名      | 类型                      | 必填   | 说明                                       |
644| -------- | ----------------------- | ---- | ---------------------------------------- |
645| type     | string                  | 是    | 监听的事件名,固定为‘touchGuideStateChange’,即触摸浏览启用状态变化事件。 |
646| callback | Callback&lt;boolean&gt; | 是    | 回调函数,在触摸浏览启用状态变化时将状态通过此函数进行通知。           |
647
648**示例:**
649
650```ts
651import accessibility from '@ohos.accessibility';
652
653try {
654    accessibility.on('touchGuideStateChange', (data: boolean) => {
655        console.info('subscribe touch guide state change, result: ' + JSON.stringify(data));
656    });
657} catch (exception) {
658    console.error('failed to subscribe touch guide state change, because ' + JSON.stringify(exception));
659}
660```
661
662## accessibility.off('accessibilityStateChange')
663
664off(type: 'accessibilityStateChange', callback?: Callback&lt;boolean&gt;): void
665
666取消监听辅助应用启用状态变化事件,使用callback异步回调。
667
668**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
669
670**参数:**
671
672| 参数名   | 类型                    | 必填 | 说明                                                         |
673| -------- | ----------------------- | ---- | ------------------------------------------------------------ |
674| type     | string                  | 是   | 取消监听的事件名,固定为‘accessibilityStateChange’,即辅助应用启用状态变化事件。 |
675| callback | Callback&lt;boolean&gt; | 否   | 回调函数,取消指定callback对象的事件响应。需与accessibility.on('accessibilityStateChange')的callback一致。缺省时,表示注销所有已注册事件。 |
676
677**示例:**
678
679```ts
680import accessibility from '@ohos.accessibility';
681
682try {
683    accessibility.off('accessibilityStateChange', (data: boolean) => {
684        console.info('Unsubscribe accessibility state change, result: ' + JSON.stringify(data));
685    });
686} catch (exception) {
687    console.error('failed to Unsubscribe accessibility state change, because ' + JSON.stringify(exception));
688}
689```
690
691## accessibility.off('touchGuideStateChange')
692
693off(type: 'touchGuideStateChange', callback?: Callback&lt;boolean&gt;): void
694
695取消监听触摸浏览启用状态变化事件,使用callback异步回调。
696
697**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
698
699**参数:**
700
701| 参数名   | 类型                    | 必填 | 说明                                                         |
702| -------- | ----------------------- | ---- | ------------------------------------------------------------ |
703| type     | string                  | 是   | 取消监听的事件名,固定为‘touchGuideStateChange’,即触摸浏览启用状态变化事件。 |
704| callback | Callback&lt;boolean&gt; | 否   | 回调函数,取消指定callback对象的事件响应。需与accessibility.on('touchGuideStateChange')的callback一致。缺省时,表示注销所有已注册事件。 |
705
706**示例:**
707
708```ts
709import accessibility from '@ohos.accessibility';
710
711try {
712    accessibility.off('touchGuideStateChange', (data: boolean) => {
713        console.info('Unsubscribe touch guide state change, result: ' + JSON.stringify(data));
714    });
715} catch (exception) {
716    console.error('failed to Unsubscribe touch guide state change, because ' + JSON.stringify(exception));
717}
718```
719
720## accessibility.isOpenAccessibility<sup>(deprecated)</sup>
721
722isOpenAccessibility(): Promise&lt;boolean&gt;
723
724判断是否启用了辅助功能, 使用Promise异步回调。
725
726**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
727
728**返回值:**
729
730| 类型                     | 说明                                       |
731| ---------------------- | ---------------------------------------- |
732| Promise&lt;boolean&gt; | Promise对象,如果辅助功能已启用,则返回 true;否则返回 false。 |
733
734**示例:**
735
736```ts
737import accessibility from '@ohos.accessibility';
738
739accessibility.isOpenAccessibility().then((data: boolean) => {
740    console.info('success data:isOpenAccessibility : ' + JSON.stringify(data))
741}).catch((err: object) => {
742    console.error('failed to  isOpenAccessibility because ' + JSON.stringify(err));
743});
744```
745
746## accessibility.isOpenAccessibility<sup>(deprecated)</sup>
747
748isOpenAccessibility(callback: AsyncCallback&lt;boolean&gt;): void
749
750判断是否启用了辅助功能,使用callback异步回调。
751
752**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
753
754**参数:**
755
756| 参数名      | 类型                           | 必填   | 说明                                  |
757| -------- | ---------------------------- | ---- | ----------------------------------- |
758| callback | AsyncCallback&lt;boolean&gt; | 是    | 回调函数,如果辅助功能已启用,则返回 true;否则返回 false。 |
759
760**示例:**
761
762```ts
763import accessibility from '@ohos.accessibility';
764import { BusinessError } from '@ohos.base';
765
766accessibility.isOpenAccessibility((err: BusinessError<void>, data: boolean) => {
767    if (err) {
768        console.error('failed to isOpenAccessibility because ' + JSON.stringify(err));
769        return;
770    }
771    console.info('success data:isOpenAccessibility : ' + JSON.stringify(data))
772});
773```
774
775## accessibility.isOpenAccessibilitySync<sup>10+</sup>
776
777isOpenAccessibilitySync(): boolean
778
779是否启用了辅助功能。
780
781**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
782
783**返回值:**
784
785| 类型        | 说明                                  |
786| ----------- | ------------------------------------- |
787| boolean&gt; | 启用辅助功能返回true,否则返回false。 |
788
789**示例:**
790
791```ts
792import accessibility from '@ohos.accessibility';
793import { BusinessError } from '@ohos.base';
794
795try {
796    let status: boolean = accessibility.isOpenAccessibilitySync();
797} catch (exception) {
798    console.error('failed to isOpenAccessibilitySync because ' + JSON.stringify(exception));
799}
800```
801
802## accessibility.isOpenTouchGuide<sup>(deprecated)</sup>
803
804isOpenTouchGuide(): Promise&lt;boolean&gt;
805
806判断触摸浏览模式是否开启, 使用Promise异步回调。
807
808**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision
809
810**返回值:**
811
812| 类型                     | 说明                                       |
813| ---------------------- | ---------------------------------------- |
814| Promise&lt;boolean&gt; | Promise对象,如果触摸浏览模式已开启,则返回 true;否则返回 false。 |
815
816**示例:**
817
818```ts
819import accessibility from '@ohos.accessibility';
820
821accessibility.isOpenTouchGuide().then((data: boolean) => {
822    console.info('success data:isOpenTouchGuide : ' + JSON.stringify(data))
823}).catch((err: object) => {
824    console.error('failed to  isOpenTouchGuide because ' + JSON.stringify(err));
825});
826```
827
828## accessibility.isOpenTouchGuide<sup>(deprecated)</sup>
829
830isOpenTouchGuide(callback: AsyncCallback&lt;boolean&gt;): void
831
832判断触摸浏览模式是否开启, 使用callback异步回调。
833
834**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision
835
836**参数:**
837
838| 参数名      | 类型                           | 必填   | 说明                                    |
839| -------- | ---------------------------- | ---- | ------------------------------------- |
840| callback | AsyncCallback&lt;boolean&gt; | 是    | 回调函数,如果触摸浏览模式已开启,则返回 true;否则返回 false。 |
841
842**示例:**
843
844```ts
845import accessibility from '@ohos.accessibility';
846import { BusinessError } from '@ohos.base';
847
848accessibility.isOpenTouchGuide((err: BusinessError<void>, data: boolean) => {
849    if (err) {
850        console.error('failed to isOpenTouchGuide because ' + JSON.stringify(err));
851        return;
852    }
853    console.info('success data:isOpenTouchGuide : ' + JSON.stringify(data))
854});
855```
856
857## accessibility.isOpenTouchGuideSync<sup>10+</sup>
858
859isOpenTouchGuideSync(): boolean
860
861是否开启了触摸浏览模式。
862
863**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision
864
865**返回值:**
866
867| 类型    | 说明                                  |
868| ------- | ------------------------------------- |
869| boolean | 启用辅助功能返回true,否则返回false。 |
870
871**示例:**
872
873```ts
874import accessibility from '@ohos.accessibility';
875import { BusinessError } from '@ohos.base';
876
877try {
878    let status: boolean = accessibility.isOpenTouchGuideSync();
879} catch (exception) {
880    console.error('failed to isOpenTouchGuideSync because ' + JSON.stringify(exception));
881}
882```
883
884## accessibility.sendEvent<sup>(deprecated)</sup>
885
886sendEvent(event: EventInfo): Promise&lt;void&gt;
887
888发送无障碍事件, 使用Promise异步回调。
889
890> **说明:**
891>
892> 从API version 7开始支持,从API version 9开始废弃。
893> 推荐使用[sendAccessibilityEvent()](#accessibilitysendaccessibilityevent9)。
894
895**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
896
897**参数:**
898
899| 参数名   | 类型                      | 必填   | 说明       |
900| ----- | ----------------------- | ---- | -------- |
901| event | [EventInfo](#eventinfo) | 是    | 无障碍事件对象。 |
902
903**返回值:**
904
905| 类型                  | 说明               |
906| ------------------- | ---------------- |
907| Promise&lt;void&gt; | 无返回结果的Promise对象。 |
908
909**示例:**
910
911```ts
912import accessibility from '@ohos.accessibility';
913
914let eventInfo: accessibility.EventInfo = ({
915  type: 'click',
916  bundleName: 'com.example.MyApplication',
917  triggerAction: 'click'
918});
919accessibility.sendEvent(eventInfo).then(() => {
920    console.info('send event success');
921}).catch((err: object) => {
922    console.error('failed to sendEvent because ' + JSON.stringify(err));
923});
924```
925
926## accessibility.sendEvent<sup>(deprecated)</sup>
927
928sendEvent(event: EventInfo, callback: AsyncCallback&lt;void&gt;): void
929
930发送无障碍事件, 使用callback异步回调。
931
932> **说明:**
933>
934> 从API version 7开始支持,从API version 9开始废弃。
935> 推荐使用[sendAccessibilityEvent()](#accessibilitysendaccessibilityevent9-1)。
936
937**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
938
939**参数:**
940
941| 参数名      | 类型                        | 必填   | 说明                                       |
942| -------- | ------------------------- | ---- | ---------------------------------------- |
943| event    | [EventInfo](#eventinfo)   | 是    | 辅助事件对象。                                  |
944| callback | AsyncCallback&lt;void&gt; | 是    | 回调函数,如果发送无障碍事件失败,则 AsyncCallback中err有数据返回。 |
945
946**示例:**
947
948```ts
949import accessibility from '@ohos.accessibility';
950import { BusinessError } from '@ohos.base';
951
952let eventInfo: accessibility.EventInfo = ({
953  type: 'click',
954  bundleName: 'com.example.MyApplication',
955  triggerAction: 'click'
956});
957accessibility.sendEvent(eventInfo, (err: BusinessError<void>) => {
958    if (err) {
959        console.error('failed to sendEvent because ' + JSON.stringify(err));
960        return;
961    }
962    console.info('sendEvent success');
963});
964```
965
966## accessibility.sendAccessibilityEvent<sup>9+</sup>
967
968sendAccessibilityEvent(event: EventInfo): Promise&lt;void&gt;
969
970发送无障碍事件, 使用Promise异步回调。
971
972**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
973
974**参数:**
975
976| 参数名   | 类型                      | 必填   | 说明       |
977| ----- | ----------------------- | ---- | -------- |
978| event | [EventInfo](#eventinfo) | 是    | 无障碍事件对象。 |
979
980**返回值:**
981
982| 类型                  | 说明               |
983| ------------------- | ---------------- |
984| Promise&lt;void&gt; | 无返回结果的Promise对象。 |
985
986**示例:**
987
988```ts
989import accessibility from '@ohos.accessibility';
990
991let eventInfo: accessibility.EventInfo = ({
992  type: 'click',
993  bundleName: 'com.example.MyApplication',
994  triggerAction: 'click'
995});
996try {
997    accessibility.sendAccessibilityEvent(eventInfo).then(() => {
998        console.info('send event success');
999    }).catch((err: object) => {
1000        console.error('failed to send event because ' + JSON.stringify(err));
1001    });
1002} catch (exception) {
1003    console.error('failed to send event because ' + JSON.stringify(exception));
1004}
1005```
1006
1007## accessibility.sendAccessibilityEvent<sup>9+</sup>
1008
1009sendAccessibilityEvent(event: EventInfo, callback: AsyncCallback&lt;void&gt;): void
1010
1011发送无障碍事件, 使用callback异步回调。
1012
1013**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
1014
1015**参数:**
1016
1017| 参数名      | 类型                        | 必填   | 说明                                       |
1018| -------- | ------------------------- | ---- | ---------------------------------------- |
1019| event    | [EventInfo](#eventinfo)   | 是    | 辅助事件对象。                                  |
1020| callback | AsyncCallback&lt;void&gt; | 是    | 回调函数,如果发送无障碍事件失败,则 AsyncCallback中err有数据返回。 |
1021
1022**示例:**
1023
1024```ts
1025import accessibility from '@ohos.accessibility';
1026import { BusinessError } from '@ohos.base';
1027
1028let eventInfo: accessibility.EventInfo = ({
1029  type: 'click',
1030  bundleName: 'com.example.MyApplication',
1031  triggerAction: 'click'
1032});
1033try {
1034    accessibility.sendAccessibilityEvent(eventInfo, (err: BusinessError<void>) => {
1035        if (err) {
1036            console.error('failed to send event because ' + JSON.stringify(err));
1037            return;
1038        }
1039        console.info('send event success');
1040    });
1041} catch (exception) {
1042    console.error('failed to send event because ' + JSON.stringify(exception));
1043}
1044```
1045