1# @ohos.accessibility (辅助应用) 2 3<!--Kit: Accessibility Kit--> 4<!--Subsystem: BarrierFree--> 5<!--Owner: @qiiiiiiian--> 6<!--Designer: @z7o--> 7<!--Tester: @A_qqq--> 8<!--Adviser: @w_Machine_cc--> 9 10本模块提供辅助应用查询能力,包括获取辅助应用列表、获取辅助应用启用状态、获取无障碍字幕配置等。 11 12> **说明:** 13> 14> - 本模块首批接口从 API version 7 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 15 16## 导入模块 17 18```ts 19import { accessibility } from '@kit.AccessibilityKit'; 20``` 21 22## AbilityState 23 24type AbilityState = 'enable' | 'disable' | 'install' 25 26辅助应用状态类型。 27 28**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core 29 30| 类型 | 说明 | 31| ------- | -------- | 32| 'enable' | 表示辅助应用已启用。 | 33| 'disable' | 辅助应用已禁用。 | 34| 'install' | 辅助应用已安装。 | 35 36## AbilityType 37 38无障碍辅助应用类型。 39 40**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core 41 42| 名称 | 描述 | 43| ---------------- | --------- | 44| audible | 表示具有听觉反馈。 | 45| generic | 表示具有通用反馈。 | 46| haptic | 表示具有触觉反馈。 | 47| spoken | 表示具有语音反馈。 | 48| visual | 表示具有视觉反馈。 | 49| all<sup>9+</sup> | 表示以上所有类别。 | 50 51## AccessibilityAbilityInfo 52 53辅助应用信息。 54 55**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core 56 57### 属性 58 59| 名称 | 类型 | 只读 | 可选 | 说明 | 60| ------------------------------ | ---------------------------------------- | ---- | ---- | ---------------- | 61| id | string | 是 | 否 | ability id。 | 62| name | string | 是 | 否 | ability 名。 | 63| bundleName | string | 是 | 否 | Bundle名称。 | 64| targetBundleNames<sup>9+</sup> | Array<string> | 是 | 否 | 关注的目标Bundle名称。 | 65| abilityTypes | Array<[AbilityType](#abilitytype)> | 是 | 否 | 辅助应用类型。 | 66| capabilities | Array<[Capability](#capability)> | 是 | 否 | 辅助应用能力列表。 | 67| description | string | 是 | 否 | 辅助应用描述。 | 68| eventTypes | Array<[EventType](#eventtype)> | 是 | 否 | 辅助应用关注的无障碍事件列表。 | 69| needHide<sup>12+</sup> | boolean | 是 | 否 | 辅助应用是否在已安装的扩展服务列表中被隐藏,true表示隐藏服务,false表示显示服务。 | 70| label<sup>12+</sup> | string | 是 | 否 | 扩展应用在扩展服务列表中的名称。 | 71 72## Action 73 74type Action = 'accessibilityFocus' | 'clearAccessibilityFocus' | 'focus' | 'clearFocus' | 'clearSelection' | 75 'click' | 'longClick' | 'cut' | 'copy' | 'paste' | 'select' | 'setText' | 'delete' | 76 'scrollForward' | 'scrollBackward' | 'setSelection' | 'setCursorPosition' | 'home' | 77 'back' | 'recentTask' | 'notificationCenter' | 'controlCenter' | 'common' 78 79应用所支持的目标动作,需要配置参数的目标动作已在描述中标明。 80 81**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core 82 83| 类型 | 说明 | 84| ----------------------- |--------------------| 85| 'click' | 表示点击操作。 | 86| 'longClick' | 表示长按操作。 | 87| 'scrollForward' | 表示向前滚动操作。 | 88| 'scrollBackward' | 表示向后滚动操作。 | 89| 'focus' | 表示获得焦点操作。 | 90| 'clearFocus' | 表示清除焦点操作。 | 91| 'clearSelection' | 表示清除选择操作。当前版本暂不支持。 | 92| 'accessibilityFocus' | 表示获得无障碍焦点操作。 | 93| 'clearAccessibilityFocus' | 表示清除无障碍焦点操作。 | 94| 'cut' | 表示剪切操作。 | 95| 'copy' | 表示复制操作。 | 96| 'paste' | 表示粘贴操作。 | 97| 'select' | 表示选择操作。 | 98| 'setText' | 表示设置文本操作,需配置参数setText。 | 99| 'delete' | 表示删除操作。当前版本暂不支持。 | 100| 'setSelection' | 表示选择操作,需配置参数selectTextBegin、selectTextEnd、selectTextInForWard。 | 101| 'common' | 表示没有特定操作,用于主动聚焦、主动播报等场景。 | 102| 'home' | 表示返回桌面操作。 | 103| 'back' | 表示返回上一级操作。 | 104| 'recentTask' | 表示打开最近任务操作。 | 105| 'notificationCenter' | 表示打开通知栏操作。 | 106| 'controlCenter' | 表示打开控制中心操作。 | 107| 'setCursorPosition' | 表示设置光标位置操作,需配置参数offset。 | 108 109## Capability 110 111type Capability = 'retrieve' | 'touchGuide' | 'keyEventObserver' | 'zoom' | 'gesture' 112 113辅助应用能力类型。 114 115**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core 116 117| 类型 | 说明 | 118| ---------------- |-----------------------| 119| 'retrieve' | 具有检索窗口内容的能力。 | 120| 'touchGuide' | 具有触摸探索模式的能力。 | 121| 'keyEventObserver' | 具有过滤按键事件的能力。 | 122| 'zoom' | 具有控制显示放大的能力,当前版本暂不支持。 | 123| 'gesture' | 具有执行手势动作的能力。 | 124 125## CaptionsFontEdgeType<sup>8+</sup> 126 127type CaptionsFontEdgeType = 'none' | 'raised' | 'depressed' | 'uniform' | 'dropShadow' 128 129字幕字体边缘类型。 130 131**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Hearing 132 133| 类型 | 说明 | 134| ---------- | ----- | 135| 'none' | 表示无效果。 | 136| 'raised' | 表示凸起效果。 | 137| 'depressed' | 表示凹陷效果。 | 138| 'uniform' | 表示轮廓效果。 | 139| 'dropShadow' | 表示阴影效果。 | 140 141## CaptionsFontFamily<sup>8+</sup> 142 143type CaptionsFontFamily = 'default' | 'monospacedSerif' | 'serif' | 'monospacedSansSerif' | 144 'sansSerif' | 'casual' | 'cursive' | 'smallCapitals' 145 146字幕字体。 147 148**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Hearing 149 150| 类型 | 说明 | 151| ------------------- | ----------------- | 152| 'default' | 表示默认字体。 | 153| 'monospacedSerif' | 表示等宽 Serif 字体。 | 154| 'serif' | 表示Serif 字体。 | 155| 'monospacedSansSerif' | 表示等宽 Sans Serif 字体。 | 156| 'sansSerif' | 表示Sans Serif 字体。 | 157| 'casual' | 表示非正式字体。 | 158| 'cursive' | 表示手写字体。 | 159| 'smallCapitals' | 表示小型大写字母字体。 | 160 161## CaptionsStyle<sup>8+</sup> 162 163字幕风格。 164 165**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Hearing 166 167| 名称 | 类型 | 只读 | 可选 | 说明 | 168| --------------- | ---------------------------------------- | ---- | ---- | ----------- | 169| fontFamily | [CaptionsFontFamily](#captionsfontfamily8) | 否 | 否 | 描述字幕字体。 | 170| fontScale | number | 否 | 否 | 描述字幕字体缩放系数,单位%,参数范围1~200。 | 171| fontColor | number \| string | 否 | 否 | 描述字幕字体颜色。<br>number:HEX 格式颜色,支持 rgb 或 argb。<br>string:支持 '#rrggbb', '#rrggbbaa', '#rgb', '#rgba' 格式。<br>例:不透明红色,number: 0xffff0000,string: '#ff0000', '#ff0000ff', '#f00', '#f00f'。 | 172| fontEdgeType | [CaptionsFontEdgeType](#captionsfontedgetype8) | 否 | 否 | 描述字幕字体边缘。 | 173| backgroundColor | number \| string | 否 | 否 | 描述字幕背景颜色。<br>number:HEX 格式颜色,支持 rgb 或 argb。<br>string:支持 '#rrggbb', '#rrggbbaa', '#rgb', '#rgba' 格式。<br>例:不透明红色,number: 0xffff0000,string: '#ff0000', '#ff0000ff', '#f00', '#f00f'。 | 174| windowColor | number \| string | 否 | 否 | 描述字幕窗口颜色。<br>number:HEX 格式颜色,支持 rgb 或 argb。<br>string:支持 '#rrggbb', '#rrggbbaa', '#rgb', '#rgba' 格式。<br>例:不透明红色,number: 0xffff0000,string: '#ff0000', '#ff0000ff', '#f00', '#f00f'。 | 175 176## CaptionsManager<sup>8+</sup> 177 178字幕配置管理,在调用CaptionsManager的方法前,需要先通过 [accessibility.getCaptionsManager() ](#accessibilitygetcaptionsmanagerdeprecated)获取 CaptionsManager实例。 179 180**系统能力**:以下各项对应的系统能力均为SystemCapability.BarrierFree.Accessibility.Hearing 181 182### 属性 183 184| 名称 | 类型 | 只读 | 可选 | 说明 | 185| ------- | -------------------------------- | ---- | ---- | ----------- | 186| enabled | boolean | 否 | 否 | 表示是否启用字幕配置。true表示字幕配置开启,false表示字幕配置关闭。 | 187| style | [CaptionsStyle](#captionsstyle8) | 否 | 否 | 表示字幕风格。 | 188 189### on('enableChange')<sup>(deprecated)</sup> 190 191on(type: 'enableChange', callback: Callback<boolean>): void; 192 193监听字幕配置启用状态变化事件,使用callback异步回调。 194 195> **说明:** 196> 197> 从API version 12开始废弃。系统不再开放相关功能。 198 199**系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing 200 201**参数:** 202 203| 参数名 | 类型 | 必填 | 说明 | 204| -------- | ----------------------- | ---- | --------------------------------------- | 205| type | string | 是 | 监听的事件名,固定为‘enableChange’,即字幕配置启用状态变化事件。 | 206| callback | Callback<boolean> | 是 | 回调函数,在启用状态变化时将状态通过此函数进行通知。 | 207 208**错误码:** 209 210以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 211 212| 错误码ID | 错误信息 | 213| ------- | -------------------------------- | 214| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 215 216**示例:** 217 218```ts 219import { accessibility } from '@kit.AccessibilityKit'; 220 221@Entry 222@Component 223struct Index { 224 callback: (data: boolean) => void = this.eventCallback; 225 eventCallback(data: boolean): void { 226 console.info(`subscribe caption manager enable state change, result: ${JSON.stringify(data)}`); 227 } 228 229 aboutToAppear(): void { 230 let captionsManager = accessibility.getCaptionsManager(); 231 captionsManager.on('enableChange', this.callback); 232 } 233 234 build() { 235 Column() { 236 } 237 } 238} 239``` 240 241### on('styleChange')<sup>(deprecated)</sup> 242 243on(type: 'styleChange', callback: Callback<CaptionsStyle>): void; 244 245监听字幕风格变化事件,使用callback异步回调。 246 247> **说明:** 248> 249> 从API version 12开始废弃。系统不再开放相关功能。 250 251**系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing 252 253**参数:** 254 255| 参数名 | 类型 | 必填 | 说明 | 256| -------- | ---------------------------------------- | ---- | ---------------------------------- | 257| type | string | 是 | 监听的事件名,固定为‘styleChange’,即字幕风格变化事件。 | 258| callback | Callback<[CaptionsStyle](#captionsstyle8)> | 是 | 回调函数,在字幕风格变化时通过此函数进行通知。 | 259 260**错误码:** 261 262以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 263 264| 错误码ID | 错误信息 | 265| ------- | -------------------------------- | 266| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 267 268**示例:** 269 270```ts 271import { accessibility } from '@kit.AccessibilityKit'; 272 273@Entry 274@Component 275struct Index { 276 callback: (data: accessibility.CaptionsStyle) => void = this.eventCallback; 277 eventCallback(data: accessibility.CaptionsStyle): void { 278 console.info(`subscribe caption manager style state change, result: ${JSON.stringify(data)}`); 279 } 280 281 aboutToAppear(): void { 282 let captionsManager = accessibility.getCaptionsManager(); 283 captionsManager.on('styleChange', this.callback); 284 } 285 286 build() { 287 Column() { 288 } 289 } 290} 291``` 292 293### off('enableChange')<sup>(deprecated)</sup> 294 295off(type: 'enableChange', callback?: Callback<boolean>): void; 296 297取消监听字幕配置启用状态变化事件,使用callback异步回调。 298 299> **说明:** 300> 301> 从API version 12开始废弃。系统不再开放相关功能。 302 303**系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing 304 305**参数:** 306 307| 参数名 | 类型 | 必填 | 说明 | 308| -------- | ----------------------- | ---- | ------------------------------------------------------------ | 309| type | string | 是 | 取消监听的事件名,固定为‘enableChange’,即字幕配置启用状态变化事件。 | 310| callback | Callback<boolean> | 否 | 回调函数,取消指定callback对象的事件响应。需与on('enableChange')的callback一致。缺省时,表示注销所有已注册事件。 | 311 312**错误码:** 313 314以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 315 316| 错误码ID | 错误信息 | 317| ------- | -------------------------------- | 318| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 319 320**示例:** 321 322```ts 323import { accessibility } from '@kit.AccessibilityKit'; 324 325@Entry 326@Component 327struct Index { 328 callback: (data: boolean) => void = this.eventCallback; 329 eventCallback(data: boolean): void { 330 console.info(`subscribe caption manager enable state change, result: ${JSON.stringify(data)}`); 331 } 332 333 aboutToAppear(): void { 334 let captionsManager = accessibility.getCaptionsManager(); 335 captionsManager.on('enableChange', this.callback); 336 } 337 338 aboutToDisappear(): void { 339 let captionsManager = accessibility.getCaptionsManager(); 340 captionsManager.off('enableChange', this.callback); 341 } 342 343 build() { 344 Column() { 345 } 346 } 347} 348``` 349 350### off('styleChange')<sup>(deprecated)</sup> 351 352off(type: 'styleChange', callback?: Callback<CaptionsStyle>): void; 353 354取消字幕风格变化监听事件,使用callback异步回调。 355 356> **说明:** 357> 358> 从API version 12开始废弃。系统不再开放相关功能。 359 360**系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing 361 362**参数:** 363 364| 参数名 | 类型 | 必填 | 说明 | 365| -------- | ------------------------------------------------ | ---- | ------------------------------------------------------------ | 366| type | string | 是 | 取消监听的事件名,固定为‘styleChange’,即字幕风格变化事件。 | 367| callback | Callback<[CaptionsStyle](#captionsstyle8)> | 否 | 回调函数,取消指定callback对象的事件响应。需与on('styleChange')的callback一致。缺省时,表示注销所有已注册事件。 | 368 369**错误码:** 370 371以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 372 373| 错误码ID | 错误信息 | 374| ------- | -------------------------------- | 375| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 376 377**示例:** 378 379```ts 380import { accessibility } from '@kit.AccessibilityKit'; 381 382@Entry 383@Component 384struct Index { 385 callback: (data: accessibility.CaptionsStyle) => void = this.eventCallback; 386 eventCallback(data: accessibility.CaptionsStyle): void { 387 console.info(`subscribe caption manager style state change, result: ${JSON.stringify(data)}`); 388 } 389 390 aboutToAppear(): void { 391 let captionsManager = accessibility.getCaptionsManager(); 392 captionsManager.on('styleChange', this.callback); 393 } 394 395 aboutToDisappear(): void { 396 let captionsManager = accessibility.getCaptionsManager(); 397 captionsManager.off('styleChange', this.callback); 398 } 399 400 build() { 401 Column() { 402 } 403 } 404} 405``` 406 407## EventInfo 408 409界面变更事件。 410 411**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core 412 413### 属性 414 415| 名称 | 类型 | 只读 | 可选 | 说明 | 416| ---------------- | ------------------------------------- |----- |------|-----------------------| 417| type | [EventType](#eventtype) | 否 | 否 | 无障碍事件类型,不可缺省。 | 418| windowUpdateType | [WindowUpdateType](#windowupdatetype) | 否 | 是 | 窗口变化类型。 | 419| bundleName | string | 否 | 否 | 目标应用名;不可缺省。 | 420| componentType | string | 否 | 是 | 应与事件源组件类型对应,如:按钮Button类型->'Button'、图片Image类型->'Image'。 | 421| pageId | number | 否 | 是 | 事件源的页面ID,默认值为0。 | 422| description | string | 否 | 是 | 事件描述,根据实际场景设置,无特殊限制。 | 423| triggerAction | [Action](#action) | 否 | 否 | 触发事件的Action,不可缺省。 | 424| textMoveUnit | [TextMoveUnit](#textmoveunit) | 否 | 是 | 文本移动粒度。 | 425| contents | Array<string> | 否 | 是 | 内容列表,根据实际场景设置,无特殊限制。 | 426| lastContent | string | 否 | 是 | 最新内容,根据实际场景设置,无特殊限制。 | 427| beginIndex | number | 否 | 是 | 画面显示条目的开始序号,默认值为0。 | 428| currentIndex | number | 否 | 是 | 当前条目序号,默认值为0。 | 429| endIndex | number | 否 | 是 | 画面显示条目的结束序号,默认值为0。 | 430| itemCount | number | 否 | 是 | 条目总数,默认值为0。 | 431| elementId<sup>12+</sup> | number | 否 | 是 | 组件elementId,默认值为0。 | 432| textAnnouncedForAccessibility<sup>12+</sup> | string | 否 | 是 | 主动播报的内容。当应用需要主动播报时,根据实际场景设置播报内容,无特殊限制。 | 433| textResourceAnnouncedForAccessibility<sup>18+</sup> | Resource | 否 | 是 | 主动播报的内容支持传入Resource类型,且只能传入string。 | 434| customId<sup>12+</sup> | string | 否 | 是 | 主动聚焦的组件ID。 | 435 436### constructor 437 438constructor(jsonObject: Object) 439 440构造函数。 441 442**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 443 444**参数:** 445 446| 参数名 | 类型 | 必填 | 说明 | 447| ---------- | ------ | ---- | -------------------- | 448| jsonObject | Object | 是 | 包含 type、bundleName 和 triggerAction 三个字段的 JSON对象,详见示例。 | 449 450**示例:** 451 452 ```ts 453 import { accessibility } from '@kit.AccessibilityKit'; 454 455 let eventInfo: accessibility.EventInfo = ({ 456 type: 'click', 457 bundleName: 'com.example.MyApplication', 458 triggerAction: 'click', 459 }); 460 ``` 461 462### constructor<sup>11+</sup> 463 464constructor(type: EventType, bundleName: string, triggerAction: Action) 465 466构造函数。 467 468**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 469 470**参数:** 471 472| 参数名 | 类型 | 必填 | 说明 | 473|------|-------------------|---|---------------| 474| type | [EventType](#eventtype) | 是 | 无障碍事件类型。 | 475| bundleName | string | 是 | 目标应用名。 | 476| triggerAction | [Action](#action) | 是 | 触发事件的 Action。 | 477 478**示例:** 479 480 ```ts 481 import { accessibility } from '@kit.AccessibilityKit'; 482 483 let eventInfo = new accessibility.EventInfo('click', 'com.example.MyApplication', 'click'); 484 ``` 485 486## EventType 487 488type EventType = 'accessibilityFocus' | 'accessibilityFocusClear' | 489'click' | 'longClick' | 'focus' | 'select' | 'hoverEnter' | 'hoverExit' | 490'textUpdate' | 'textSelectionUpdate' | 'scroll' | 'requestFocusForAccessibility' | 491'announceForAccessibility' | 'requestFocusForAccessibilityNotInterrupt' | 492'announceForAccessibilityNotInterrupt' | 'scrolling' 493 494无障碍事件类型。 495 496**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core 497 498| 类型 | 说明 | 499| ----------------------- |------------------------| 500| 'accessibilityFocus' | 表示获得无障碍焦点的事件。 | 501| 'accessibilityFocusClear' | 表示清除无障碍焦点的事件。 | 502| 'click' | 表示点击组件的事件。 | 503| 'longClick' | 表示长按组件的事件。 | 504| 'select' | 表示选择组件的事件。 | 505| 'hoverEnter' | 表示悬停进入组件的事件。 | 506| 'hoverExit' | 表示悬停离开组件的事件。 | 507| 'focus' | 表示组件获得焦点的事件,当前版本暂不支持。 | 508| 'textUpdate' | 表示组件文本已更改的事件。 | 509| 'textSelectionUpdate' | 表示选定文本已更改的事件,当前版本暂不支持。 | 510| 'scroll' | 表示滚动视图的事件。 | 511| 'requestFocusForAccessibility' | 表示主动聚焦的事件。 | 512| 'announceForAccessibility' | 表示主动播报的事件。 | 513| 'requestFocusForAccessibilityNotInterrupt' | 表示主动聚焦不打断的事件。<br>此事件从API version 18开始支持。 | 514| 'announceForAccessibilityNotInterrupt' | 表示主动播报不打断的事件。<br>此事件从API version 18开始支持。 | 515| 'scrolling' | 表示滚动视图中有item被滚出屏幕的事件。<br>此事件从API version 18开始支持。 | 516 517## TextMoveUnit 518 519type TextMoveUnit = 'char' | 'word' | 'line' | 'page' | 'paragraph' 520 521文本无障碍导航移动粒度。 522 523**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core 524 525| 类型 | 说明 | 526| --------- | --------------- | 527| 'char' | 表示以字符为移动粒度遍历节点文本。 | 528| 'word' | 表示以词为移动粒度遍历节点文本。 | 529| 'line' | 表示以行为移动粒度遍历节点文本。 | 530| 'page' | 表示以页为移动粒度遍历节点文本。 | 531| 'paragraph' | 表示以段落为移动粒度遍历节点文本。 | 532 533## WindowUpdateType 534 535type WindowUpdateType = 'add' | 'remove' | 'bounds' | 'active' | 'focus' 536 537窗口变化类型。 538 539**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core 540 541| 类型 | 说明 | 542| ------ | ------------------ | 543| 'add' | 表示添加窗口的窗口变化事件,值固定为'add'字符串。 | 544| 'remove' | 表示一个窗口被删除的窗口变化事件,值固定为'remove'字符串。 | 545| 'bounds' | 表示窗口边界已更改的窗口变化事件,值固定为'bounds'字符串。 | 546| 'active' | 表示窗口变为活动或不活动的窗口变化事件,值固定为'active'字符串。 | 547| 'focus' | 表示窗口焦点发生变化的窗口变化事件,值固定为'focus'字符串。 | 548 549## accessibility.getAbilityLists<sup>(deprecated)</sup> 550 551getAbilityLists(abilityType: AbilityType, stateType: AbilityState): Promise<Array<AccessibilityAbilityInfo>> 552 553查询辅助应用列表,使用Promise异步回调。 554 555> **说明:** 556> 557> 从API version 7开始支持,从API version 9开始废弃。 558> 推荐使用[accessibility.getAccessibilityExtensionList()](#accessibilitygetaccessibilityextensionlist9)。 559 560**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 561 562**参数:** 563 564| 参数名 | 类型 | 必填 | 说明 | 565| ----------- | ----------------------------- | ---- | -------- | 566| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 | 567| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 | 568 569**返回值:** 570 571| 类型 | 说明 | 572| ---------------------------------------- | --------------------- | 573| Promise<Array<[AccessibilityAbilityInfo](#accessibilityabilityinfo)>> | Promise对象,返回辅助应用信息列表。 | 574 575**示例:** 576 577```ts 578import { accessibility } from '@kit.AccessibilityKit'; 579import { BusinessError } from '@kit.BasicServicesKit'; 580 581let abilityType: accessibility.AbilityType = 'spoken'; 582let abilityState: accessibility.AbilityState = 'enable'; 583 584accessibility.getAbilityLists(abilityType, abilityState).then((data: accessibility.AccessibilityAbilityInfo[]) => { 585 console.info(`Succeeded in get accessibility extension list, ${JSON.stringify(data)}`); 586}).catch((err: BusinessError) => { 587 console.error(`failed to get accessibility extension list because ${JSON.stringify(err)}`); 588}); 589``` 590 591## accessibility.getAbilityLists<sup>(deprecated)</sup> 592 593getAbilityLists(abilityType: AbilityType, stateType: AbilityState,callback: AsyncCallback<Array<AccessibilityAbilityInfo>>): void 594 595查询辅助应用列表,使用callback异步回调。 596 597> **说明:** 598> 599> 从API version 7开始支持,从API version 9开始废弃。 600> 推荐使用[accessibility.getAccessibilityExtensionList()](#accessibilitygetaccessibilityextensionlist9-1)。 601 602**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 603 604**参数:** 605 606| 参数名 | 类型 | 必填 | 说明 | 607| ----------- | ---------------------------------------- | ---- | ---------------- | 608| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 | 609| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 | 610| callback | AsyncCallback<Array<[AccessibilityAbilityInfo](#accessibilityabilityinfo)>> | 是 | 回调函数,返回辅助应用信息列表。 | 611 612**示例:** 613 614```ts 615import { accessibility } from '@kit.AccessibilityKit'; 616import { BusinessError } from '@kit.BasicServicesKit'; 617 618let abilityType: accessibility.AbilityType = 'spoken'; 619let abilityState: accessibility.AbilityState = 'enable'; 620 621accessibility.getAbilityLists(abilityType, abilityState, (err: BusinessError, data: accessibility.AccessibilityAbilityInfo[]) => { 622 if (err) { 623 console.error(`failed to get accessibility extension list because ${JSON.stringify(err)}`); 624 return; 625 } 626 console.info(`Succeeded in get accessibility extension list, ${JSON.stringify(data)}`); 627}) 628``` 629 630## accessibility.getAccessibilityExtensionList<sup>9+</sup> 631 632getAccessibilityExtensionList(abilityType: AbilityType, stateType: AbilityState): Promise<Array<AccessibilityAbilityInfo>> 633 634查询辅助应用列表,使用Promise异步回调。 635 636**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 637 638**参数:** 639 640| 参数名 | 类型 | 必填 | 说明 | 641| ----------- | ----------------------------- | ---- | -------- | 642| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 | 643| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 | 644 645**返回值:** 646 647| 类型 | 说明 | 648| ---------------------------------------- | --------------------- | 649| Promise<Array<[AccessibilityAbilityInfo](#accessibilityabilityinfo)>> | Promise对象,返回辅助应用信息列表。 | 650 651**错误码:** 652 653以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 654 655| 错误码ID | 错误信息 | 656| ------- | -------------------------------- | 657| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 658 659**参数示例:** 660| 辅助应用类型 \ 辅助应用状态 | enable | disable |install| 661| ------- | -------- |----|----| 662| **audible** | 查询已启用的具有听觉反馈的辅助应用 |查询已禁用的具有听觉反馈的辅助应用|查询已安装的具有听觉反馈的辅助应用| 663|**generic**| 查询已启用的具有通用反馈的辅助应用 |查询已禁用的具有通用反馈的辅助应用|查询已安装的具有通用反馈的辅助应用| 664|**haptic**| 查询已启用的具有触觉反馈的辅助应用 |查询已禁用的具有触觉反馈的辅助应用|查询已安装的具有触觉反馈的辅助应用| 665|**spoken**| 查询已启用的具有语音反馈的辅助应用 |查询已禁用的具有语音反馈的辅助应用|查询已安装的具有语音反馈的辅助应用| 666|**visual**| 查询已启用的具有视觉反馈的辅助应用 |查询已禁用的具有视觉反馈的辅助应用|查询已安装的具有视觉反馈的辅助应用| 667|**all**| 查询所有已启用的辅助应用 |查询所有已禁用的辅助应用|查询所有已安装的辅助应用| 668 669**查询所有已安装的辅助应用示例:** 670```ts 671import { accessibility } from '@kit.AccessibilityKit'; 672import { BusinessError } from '@kit.BasicServicesKit'; 673 674let abilityType: accessibility.AbilityType = 'all'; // 辅助应用类型为所有类型 675let abilityState: accessibility.AbilityState = 'install'; // 辅助应用状态为已安装 676 677accessibility.getAccessibilityExtensionList(abilityType, abilityState).then((data: accessibility.AccessibilityAbilityInfo[]) => { 678 console.info(`Succeeded in get accessibility extension list, ${JSON.stringify(data)}`); 679}).catch((err: BusinessError) => { 680 console.error(`failed to get accessibility extension list, Code is ${err.code}, message is ${err.message}`); 681}); 682 683// 例如:系统内安装一个包名为com.example.myaccessibilityapp的辅助应用 684// 日志打印结果为: 685// [{"id":"com.example.myaccessibilityapp/AccessibilityExtAbility","name":"AccessibilityExtAbility", 686// "bundleName":"com.example.myaccessibilityapp","abilityTypes":[], 687// "capabilities":["retrieve","gesture"],"description":"$string:MainAbility_desc", 688// "eventTypes":["click","longClick","select","focus","textUpdate","hoverEnter","hoverExit","scroll", 689// "textSelectionUpdate","accessibilityFocus","accessibilityFocusClear","requestFocusForAccessibility", 690// "announceForAccessibility","announceForAccessibilityNotInterrupt", 691// "requestFocusForAccessibilityNotInterrupt","scrolling"],"targetBundleNames":[],"needHide":false}}] 692``` 693 694**查询所有已启用的具有语音反馈的辅助应用示例:** 695```ts 696import { accessibility } from '@kit.AccessibilityKit'; 697import { BusinessError } from '@kit.BasicServicesKit'; 698 699let abilityType: accessibility.AbilityType = 'spoken'; // 辅助应用类型为具有语音反馈类型 700let abilityState: accessibility.AbilityState = 'enable'; // 辅助应用状态为已启用 701 702accessibility.getAccessibilityExtensionList(abilityType, abilityState).then((data: accessibility.AccessibilityAbilityInfo[]) => { 703 console.info(`Succeeded in get accessibility extension list, ${JSON.stringify(data)}`); 704}).catch((err: BusinessError) => { 705 console.error(`failed to get accessibility extension list, Code is ${err.code}, message is ${err.message}`); 706}); 707``` 708 709## accessibility.getAccessibilityExtensionList<sup>9+</sup> 710 711getAccessibilityExtensionList(abilityType: AbilityType, stateType: AbilityState, callback: AsyncCallback<Array<AccessibilityAbilityInfo>>): void 712 713查询辅助应用列表,使用callback异步回调。 714 715**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 716 717**参数:** 718 719| 参数名 | 类型 | 必填 | 说明 | 720| ----------- | ---------------------------------------- | ---- | ---------------- | 721| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 | 722| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 | 723| callback | AsyncCallback<Array<[AccessibilityAbilityInfo](#accessibilityabilityinfo)>> | 是 | 回调函数,返回辅助应用信息列表。 | 724 725**错误码:** 726 727以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 728 729| 错误码ID | 错误信息 | 730| ------- | -------------------------------- | 731| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 732 733**参数示例:** 734| 辅助应用类型 \ 辅助应用状态 | enable | disable |install| 735| ------- | -------- |----|----| 736| **audible** | 查询已启用的具有听觉反馈的辅助应用 |查询已禁用的具有听觉反馈的辅助应用|查询已安装的具有听觉反馈的辅助应用| 737|**generic**| 查询已启用的具有通用反馈的辅助应用 |查询已禁用的具有通用反馈的辅助应用|查询已安装的具有通用反馈的辅助应用| 738|**haptic**| 查询已启用的具有触觉反馈的辅助应用 |查询已禁用的具有触觉反馈的辅助应用|查询已安装的具有触觉反馈的辅助应用| 739|**spoken**| 查询已启用的具有语音反馈的辅助应用 |查询已禁用的具有语音反馈的辅助应用|查询已安装的具有语音反馈的辅助应用| 740|**visual**| 查询已启用的具有视觉反馈的辅助应用 |查询已禁用的具有视觉反馈的辅助应用|查询已安装的具有视觉反馈的辅助应用| 741|**all**| 查询所有已启用的辅助应用 |查询所有已禁用的辅助应用|查询所有已安装的辅助应用| 742 743**查询所有已安装的辅助应用示例:** 744 745```ts 746import { accessibility } from '@kit.AccessibilityKit'; 747import { BusinessError } from '@kit.BasicServicesKit'; 748 749let abilityType: accessibility.AbilityType = 'all'; // 辅助应用类型为所有类型 750let abilityState: accessibility.AbilityState = 'install'; // 辅助应用状态为已安装 751 752accessibility.getAccessibilityExtensionList(abilityType, abilityState,(err: BusinessError, data: accessibility.AccessibilityAbilityInfo[]) => { 753 if (err) { 754 console.error(`failed to get accessibility extension list, Code is ${err.code}, message is ${err.message}`); 755 return; 756 } 757 console.info(`Succeeded in get accessibility extension list, ${JSON.stringify(data)}`); 758}); 759 760// 例如:系统内安装一个包名为com.example.myaccessibilityapp的辅助应用 761// 日志打印结果为: 762// [{"id":"com.example.myaccessibilityapp/AccessibilityExtAbility","name":"AccessibilityExtAbility", 763// "bundleName":"com.example.myaccessibilityapp","abilityTypes":[], 764// "capabilities":["retrieve","gesture"],"description":"$string:MainAbility_desc", 765// "eventTypes":["click","longClick","select","focus","textUpdate","hoverEnter","hoverExit","scroll", 766// "textSelectionUpdate","accessibilityFocus","accessibilityFocusClear","requestFocusForAccessibility", 767// "announceForAccessibility","announceForAccessibilityNotInterrupt", 768// "requestFocusForAccessibilityNotInterrupt","scrolling"],"targetBundleNames":[],"needHide":false}}] 769``` 770 771**查询所有已启用的具有语音反馈的辅助应用示例:** 772 773```ts 774import { accessibility } from '@kit.AccessibilityKit'; 775import { BusinessError } from '@kit.BasicServicesKit'; 776 777let abilityType: accessibility.AbilityType = 'spoken'; // 辅助应用类型为具有语音反馈类型 778let abilityState: accessibility.AbilityState = 'enable'; // 辅助应用状态为已启用 779 780accessibility.getAccessibilityExtensionList(abilityType, abilityState,(err: BusinessError, data: accessibility.AccessibilityAbilityInfo[]) => { 781 if (err) { 782 console.error(`failed to get accessibility extension list, Code is ${err.code}, message is ${err.message}`); 783 return; 784 } 785 console.info(`Succeeded in get accessibility extension list, ${JSON.stringify(data)}`); 786}); 787``` 788 789## accessibility.getAccessibilityExtensionListSync<sup>12+</sup> 790 791getAccessibilityExtensionListSync(abilityType: AbilityType, stateType: AbilityState): Array<AccessibilityAbilityInfo> 792 793查询当前系统内辅助应用列表,支持按条件查询。 794 795**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 796 797**参数:** 798 799| 参数名 | 类型 | 必填 | 说明 | 800| ----------- | ----------------------------- | ---- | -------- | 801| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 | 802| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 | 803 804**返回值:** 805 806| 类型 | 说明 | 807| ---------------------------------------- | --------------------- | 808| Array<[AccessibilityAbilityInfo](#accessibilityabilityinfo)> | 返回辅助应用信息列表。 | 809 810**参数示例:** 811| 辅助应用类型 \ 辅助应用状态 | enable | disable |install| 812| ------- | -------- |----|----| 813| **audible** | 查询已启用的具有听觉反馈的辅助应用 |查询已禁用的具有听觉反馈的辅助应用|查询已安装的具有听觉反馈的辅助应用| 814|**generic**| 查询已启用的具有通用反馈的辅助应用 |查询已禁用的具有通用反馈的辅助应用|查询已安装的具有通用反馈的辅助应用| 815|**haptic**| 查询已启用的具有触觉反馈的辅助应用 |查询已禁用的具有触觉反馈的辅助应用|查询已安装的具有触觉反馈的辅助应用| 816|**spoken**| 查询已启用的具有语音反馈的辅助应用 |查询已禁用的具有语音反馈的辅助应用|查询已安装的具有语音反馈的辅助应用| 817|**visual**| 查询已启用的具有视觉反馈的辅助应用 |查询已禁用的具有视觉反馈的辅助应用|查询已安装的具有视觉反馈的辅助应用| 818|**all**| 查询所有已启用的辅助应用 |查询所有已禁用的辅助应用|查询所有已安装的辅助应用| 819 820**查询所有已安装的辅助应用示例:** 821 822```ts 823import { accessibility } from '@kit.AccessibilityKit'; 824import { BusinessError } from '@kit.BasicServicesKit'; 825 826let abilityType: accessibility.AbilityType = 'all'; // 辅助应用类型为所有类型 827let abilityState: accessibility.AbilityState = 'install'; // 辅助应用状态为已安装 828let data: accessibility.AccessibilityAbilityInfo[]; 829 830try { 831 data = accessibility.getAccessibilityExtensionListSync(abilityType, abilityState); 832 console.info(`Succeeded in get accessibility extension list, ${JSON.stringify(data)}`); 833} catch (error) { 834 let err = error as BusinessError; 835 console.error(`error code: ${err.code}`); 836} 837 838// 例如:系统内安装一个包名为com.example.myaccessibilityapp的辅助应用 839// 日志打印结果为: 840// [{"id":"com.example.myaccessibilityapp/AccessibilityExtAbility","name":"AccessibilityExtAbility", 841// "bundleName":"com.example.myaccessibilityapp","abilityTypes":[], 842// "capabilities":["retrieve","gesture"],"description":"$string:MainAbility_desc", 843// "eventTypes":["click","longClick","select","focus","textUpdate","hoverEnter","hoverExit","scroll", 844// "textSelectionUpdate","accessibilityFocus","accessibilityFocusClear","requestFocusForAccessibility", 845// "announceForAccessibility","announceForAccessibilityNotInterrupt", 846// "requestFocusForAccessibilityNotInterrupt","scrolling"],"targetBundleNames":[],"needHide":false}}] 847``` 848 849**查询所有已启用的具有语音反馈的辅助应用示例:** 850 851```ts 852import { accessibility } from '@kit.AccessibilityKit'; 853import { BusinessError } from '@kit.BasicServicesKit'; 854 855let abilityType: accessibility.AbilityType = 'spoken'; // 辅助应用类型为具有语音反馈类型 856let abilityState: accessibility.AbilityState = 'enable'; // 辅助应用状态为已启用 857let data: accessibility.AccessibilityAbilityInfo[]; 858 859try { 860 data = accessibility.getAccessibilityExtensionListSync(abilityType, abilityState); 861 console.info(`Succeeded in get accessibility extension list, ${JSON.stringify(data)}`); 862} catch (error) { 863 let err = error as BusinessError; 864 console.error(`error code: ${err.code}`); 865} 866``` 867 868<!--RP1--> 869<!--RP1End--> 870 871## accessibility.getCaptionsManager<sup>(deprecated)</sup> 872 873getCaptionsManager(): CaptionsManager 874 875获取无障碍字幕配置管理实例。 876 877> **说明:** 878> 879> 从API version 12开始废弃。系统不再开放相关功能。 880 881**系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing 882 883**返回值:** 884 885| 类型 | 说明 | 886| ------------------------------------ | ---------- | 887| [CaptionsManager](#captionsmanager8) | 无障碍字幕配置管理。 | 888 889**示例:** 890 891```ts 892import { accessibility } from '@kit.AccessibilityKit'; 893 894let captionsManager = accessibility.getCaptionsManager(); 895``` 896 897## accessibility.on('accessibilityStateChange') 898 899on(type: 'accessibilityStateChange', callback: Callback<boolean>): void 900 901监听辅助应用启用状态变化事件,使用callback异步回调。如需获取系统内辅助应用信息,推荐使用[accessibility.getAccessibilityExtensionListSync](#accessibilitygetaccessibilityextensionlistsync12)。 902 903**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 904 905**参数:** 906 907| 参数名 | 类型 | 必填 | 说明 | 908| -------- | ----------------------- | ---- | ------------------------------------------------------------ | 909| type | string | 是 | 监听的事件名,固定为‘accessibilityStateChange’,即辅助应用启用状态变化事件。 | 910| callback | Callback<boolean> | 是 | 回调函数,在辅助应用启用状态变化时将状态通过此函数进行通知。此状态为全局辅助应用启用状态。 | 911 912**错误码:** 913 914以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 915 916| 错误码ID | 错误信息 | 917| ------- | -------------------------------- | 918| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 919 920**示例:** 921 922```ts 923import { accessibility } from '@kit.AccessibilityKit'; 924 925// 系统内已安装一个或多个辅助应用时: 926// 1. 启用辅助应用场景:第一个辅助应用启用后,回调函数会返回true 927// 2. 禁用辅助应用场景:若一个或多个辅助应用已启用,最后一个已启用的辅助应用被禁用时,回调函数会返回false 928accessibility.on('accessibilityStateChange', (data: boolean) => { 929 console.info(`subscribe accessibility state change, result: ${JSON.stringify(data)}`); 930}); 931``` 932 933<!--RP2--> 934<!--RP2End--> 935 936## accessibility.on('touchGuideStateChange') 937 938on(type: 'touchGuideStateChange', callback: Callback<boolean>): void 939 940监听触摸浏览功能启用状态变化事件,使用callback异步回调。如需获取系统内辅助应用信息,推荐使用[accessibility.getAccessibilityExtensionListSync](#accessibilitygetaccessibilityextensionlistsync12)。 941 942**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision 943 944**参数:** 945 946| 参数名 | 类型 | 必填 | 说明 | 947| -------- | ----------------------- | ---- | ---------------------------------------- | 948| type | string | 是 | 监听的事件名,固定为‘touchGuideStateChange’,即触摸浏览启用状态变化事件。 | 949| callback | Callback<boolean> | 是 | 回调函数,在触摸浏览启用状态变化时将状态通过此函数进行通知。 | 950 951**错误码:** 952 953以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 954 955| 错误码ID | 错误信息 | 956| ------- | -------------------------------- | 957| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 958 959**示例:** 960 961```ts 962import { accessibility } from '@kit.AccessibilityKit'; 963 964// 系统内已安装一个或多个具备触摸浏览能力的辅助应用(Capability配置中含有'touchGuide'的辅助应用)时: 965// 1. 启用触摸浏览辅助应用场景:第一个触摸浏览辅助应用启用后,回调函数会返回true 966// 2. 禁用触摸浏览辅助应用场景:若一个或多个触摸浏览辅助应用已启用,最后一个已启用的触摸浏览辅助应用被禁用时,回调函数会返回false 967accessibility.on('touchGuideStateChange', (data: boolean) => { 968 console.info(`subscribe touch guide state change, result: ${JSON.stringify(data)}`); 969}); 970``` 971 972## accessibility.on('screenReaderStateChange')<sup>18+</sup> 973 974on(type: 'screenReaderStateChange', callback: Callback<boolean>): void 975 976监听屏幕朗读功能启用状态变化事件,使用callback异步回调。 977 978**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 979 980**参数:** 981 982| 参数名 | 类型 | 必填 | 说明 | 983| -------- | ----------------------- | ---- | ---------------------------------------- | 984| type | string | 是 | 监听的事件名,固定为‘screenReaderStateChange’,即屏幕朗读启用状态变化事件。 | 985| callback | Callback<boolean> | 是 | 回调函数,在屏幕朗读启用状态变化时将状态通过此函数进行通知。 | 986 987**错误码:** 988 989以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 990 991| 错误码ID | 错误信息 | 992| ------- | -------------------------------- | 993| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 994 995**示例:** 996 997```ts 998import { accessibility } from '@kit.AccessibilityKit'; 999 1000accessibility.on('screenReaderStateChange', (data: boolean) => { 1001 console.info(`subscribe screen reader state change, result: ${JSON.stringify(data)}`); 1002}); 1003``` 1004 1005## accessibility.on('touchModeChange')<sup>20+</sup> 1006 1007on(type: 'touchModeChange', callback: Callback<string>): void 1008 1009监听触摸浏览功能下的单击/双击操作模式变化事件,使用callback异步回调。 1010 1011**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1012 1013**参数:** 1014 1015| 参数名 | 类型 | 必填 | 说明 | 1016| -------- | ----------------------- | ---- | ---------------------------------------- | 1017| type | string | 是 | 监听的事件名,固定为‘touchModeChange’,即触摸浏览功能下的单击/双击操作模式变化事件。 | 1018| callback | Callback<string> | 是 | 回调函数,在触摸浏览功能下的单击/双击操作模式变化时将状态通过此函数进行通知。 | 1019 1020**错误码:** 1021 1022以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 1023 1024| 错误码ID | 错误信息 | 1025| ------- | -------------------------------- | 1026| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 1027 1028**示例:** 1029 1030```ts 1031import { accessibility } from '@kit.AccessibilityKit'; 1032 1033@Entry 1034@Component 1035struct Index { 1036 callback: (mode: string) => void = this.eventCallback; 1037 eventCallback(mode: string): void { 1038 console.info(`current touch mode: ${JSON.stringify(mode)}`); 1039 } 1040 1041 aboutToAppear(): void { 1042 accessibility.on('touchModeChange', this.callback); 1043 } 1044 1045 build() { 1046 Column() { 1047 } 1048 } 1049} 1050``` 1051 1052## accessibility.off('accessibilityStateChange') 1053 1054off(type: 'accessibilityStateChange', callback?: Callback<boolean>): void 1055 1056取消监听辅助应用启用状态变化事件,使用callback异步回调。 1057 1058**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1059 1060**参数:** 1061 1062| 参数名 | 类型 | 必填 | 说明 | 1063| -------- | ----------------------- | ---- | ------------------------------------------------------------ | 1064| type | string | 是 | 取消监听的事件名,固定为‘accessibilityStateChange’,即辅助应用启用状态变化事件。 | 1065| callback | Callback<boolean> | 否 | 回调函数,取消指定callback对象的事件响应。需与accessibility.on('accessibilityStateChange')的callback一致。缺省时,表示注销所有已注册事件。 | 1066 1067**错误码:** 1068 1069以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 1070 1071| 错误码ID | 错误信息 | 1072| ------- | -------------------------------- | 1073| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 1074 1075**示例:** 1076 1077```ts 1078import { accessibility } from '@kit.AccessibilityKit'; 1079 1080accessibility.off('accessibilityStateChange', (data: boolean) => { 1081 console.info(`Unsubscribe accessibility state change, result: ${JSON.stringify(data)}`); 1082}); 1083``` 1084 1085## accessibility.off('touchGuideStateChange') 1086 1087off(type: 'touchGuideStateChange', callback?: Callback<boolean>): void 1088 1089取消监听触摸浏览启用状态变化事件,使用callback异步回调。 1090 1091**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1092 1093**参数:** 1094 1095| 参数名 | 类型 | 必填 | 说明 | 1096| -------- | ----------------------- | ---- | ------------------------------------------------------------ | 1097| type | string | 是 | 取消监听的事件名,固定为‘touchGuideStateChange’,即触摸浏览启用状态变化事件。 | 1098| callback | Callback<boolean> | 否 | 回调函数,取消指定callback对象的事件响应。需与accessibility.on('touchGuideStateChange')的callback一致。缺省时,表示注销所有已注册事件。 | 1099 1100**错误码:** 1101 1102以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 1103 1104| 错误码ID | 错误信息 | 1105| ------- | -------------------------------- | 1106| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 1107 1108**示例:** 1109 1110```ts 1111import { accessibility } from '@kit.AccessibilityKit'; 1112 1113accessibility.off('touchGuideStateChange', (data: boolean) => { 1114 console.info(`Unsubscribe touch guide state change, result: ${JSON.stringify(data)}`); 1115}); 1116``` 1117 1118## accessibility.off('screenReaderStateChange')<sup>18+</sup> 1119 1120off(type: 'screenReaderStateChange', callback?: Callback<boolean>): void 1121 1122取消监听屏幕朗读启用状态变化事件,使用callback异步回调。 1123 1124**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1125 1126**参数:** 1127 1128| 参数名 | 类型 | 必填 | 说明 | 1129| -------- | ----------------------- | ---- | ------------------------------------------------------------ | 1130| type | string | 是 | 取消监听的事件名,固定为‘screenReaderStateChange’,即屏幕朗读启用状态变化事件。 | 1131| callback | Callback<boolean> | 否 | 回调函数,取消指定callback对象的事件响应。需与accessibility.on('screenReaderStateChange')的callback一致。缺省时,表示注销所有已注册事件。 | 1132 1133**错误码:** 1134 1135以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 1136 1137| 错误码ID | 错误信息 | 1138| ------- | -------------------------------- | 1139| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 1140 1141**示例:** 1142 1143```ts 1144import { accessibility } from '@kit.AccessibilityKit'; 1145 1146accessibility.off('screenReaderStateChange', (data: boolean) => { 1147 console.info(`Unsubscribe screen reader state change, result: ${JSON.stringify(data)}`); 1148}); 1149``` 1150 1151## accessibility.off('touchModeChange')<sup>20+</sup> 1152 1153off(type: 'touchModeChange', callback?: Callback<string>): void 1154 1155取消监听触摸浏览功能下的单击/双击操作模式变化事件,使用callback异步回调。 1156 1157**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1158 1159**参数:** 1160 1161| 参数名 | 类型 | 必填 | 说明 | 1162| -------- | ----------------------- | ---- | ------------------------------------------------------------ | 1163| type | string | 是 | 取消监听的事件名,固定为‘touchModeChange’,即触摸浏览功能下的单击/双击操作模式变化事件。 | 1164| callback | Callback<string> | 否 | 回调函数,取消指定callback对象的事件响应。需与[accessibility.on('touchModeChange')](#accessibilityontouchmodechange20)的callback一致。缺省时,表示注销所有已注册事件。 | 1165 1166**错误码:** 1167 1168以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 1169 1170| 错误码ID | 错误信息 | 1171| ------- | -------------------------------- | 1172| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 1173 1174**示例:** 1175 1176```ts 1177import { accessibility } from '@kit.AccessibilityKit'; 1178 1179@Entry 1180@Component 1181struct Index { 1182 callback: (mode: string) => void = this.eventCallback; 1183 eventCallback(mode: string): void { 1184 console.info(`current touch mode: ${JSON.stringify(mode)}`); 1185 } 1186 1187 aboutToAppear(): void { 1188 accessibility.on('touchModeChange', this.callback); 1189 } 1190 1191 aboutToDisappear(): void { 1192 accessibility.off('touchModeChange', this.callback); 1193 } 1194 1195 build() { 1196 Column() { 1197 } 1198 } 1199} 1200``` 1201 1202## accessibility.isOpenAccessibility<sup>(deprecated)</sup> 1203 1204isOpenAccessibility(): Promise<boolean> 1205 1206判断是否启用了辅助应用,使用Promise异步回调。 1207 1208> **说明:** 1209> 1210> 从API version 10开始废弃。 1211> 1212> 推荐使用[accessibility.isOpenAccessibilitySync](#accessibilityisopenaccessibilitysync10)。 1213 1214**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1215 1216**返回值:** 1217 1218| 类型 | 说明 | 1219| ---------------------- | ---------------------------------------- | 1220| Promise<boolean> | Promise对象,如果辅助应用已启用,则返回 true;否则返回 false。 | 1221 1222**示例:** 1223 1224```ts 1225import { accessibility } from '@kit.AccessibilityKit'; 1226import { BusinessError } from '@kit.BasicServicesKit'; 1227 1228accessibility.isOpenAccessibility().then((data: boolean) => { 1229 console.info(`success data:isOpenAccessibility : ${JSON.stringify(data)}`) 1230}).catch((err: BusinessError) => { 1231 console.error(`failed to isOpenAccessibility, Code is ${err.code}, message is ${err.message}`); 1232}); 1233``` 1234 1235## accessibility.isOpenAccessibility<sup>(deprecated)</sup> 1236 1237isOpenAccessibility(callback: AsyncCallback<boolean>): void 1238 1239判断是否启用了辅助应用,使用callback异步回调。 1240 1241> **说明:** 1242> 1243> 从API version 10开始废弃。 1244> 1245> 推荐使用[accessibility.isOpenAccessibilitySync](#accessibilityisopenaccessibilitysync10)。 1246 1247**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1248 1249**参数:** 1250 1251| 参数名 | 类型 | 必填 | 说明 | 1252| -------- | ---------------------------- | ---- | ----------------------------------- | 1253| callback | AsyncCallback<boolean> | 是 | 回调函数,如果辅助应用已启用,则返回 true;否则返回 false。 | 1254 1255**示例:** 1256 1257```ts 1258import { accessibility } from '@kit.AccessibilityKit'; 1259import { BusinessError } from '@kit.BasicServicesKit'; 1260 1261accessibility.isOpenAccessibility((err: BusinessError, data: boolean) => { 1262 if (err) { 1263 console.error(`failed to isOpenAccessibility, Code is ${err.code}, message is ${err.message}`); 1264 return; 1265 } 1266 console.info(`success data:isOpenAccessibility : ${JSON.stringify(data)}`); 1267}); 1268``` 1269 1270## accessibility.isOpenAccessibilitySync<sup>10+</sup> 1271 1272isOpenAccessibilitySync(): boolean 1273 1274查询当前系统内是否存在已开启的辅助应用。如需获取系统内辅助应用信息,推荐使用[accessibility.getAccessibilityExtensionListSync](#accessibilitygetaccessibilityextensionlistsync12)。 1275 1276**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 1277 1278**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1279 1280**返回值:** 1281 1282| 类型 | 说明 | 1283| ----------- | ------------------------------------- | 1284| boolean | 表示当前系统内是否有辅助应用开启。true表示启用了一个或多个辅助应用,false表示未启用任何辅助应用。<!--RP3--><!--RP3End--> | 1285 1286**示例:** 1287 1288```ts 1289import { accessibility } from '@kit.AccessibilityKit'; 1290import { BusinessError } from '@kit.BasicServicesKit'; 1291 1292// 1、系统内已安装多个辅助应用,若都没有开启,返回false 1293// 2、系统内已安装多个辅助应用,若开启任意一个,返回true 1294let status: boolean = accessibility.isOpenAccessibilitySync(); 1295``` 1296 1297## accessibility.isOpenTouchGuide<sup>(deprecated)</sup> 1298 1299isOpenTouchGuide(): Promise<boolean> 1300 1301判断触摸浏览模式是否开启,使用Promise异步回调。 1302 1303> **说明:** 1304> 1305> 从API version 10开始废弃。 1306> 1307> 推荐使用[accessibility.isOpenTouchGuideSync](#accessibilityisopentouchguidesync10)。 1308 1309**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision 1310 1311**返回值:** 1312 1313| 类型 | 说明 | 1314| ---------------------- | ---------------------------------------- | 1315| Promise<boolean> | Promise对象,如果触摸浏览模式已开启,则返回 true;否则返回 false。 | 1316 1317**示例:** 1318 1319```ts 1320import { accessibility } from '@kit.AccessibilityKit'; 1321import { BusinessError } from '@kit.BasicServicesKit'; 1322 1323accessibility.isOpenTouchGuide().then((data: boolean) => { 1324 console.info(`success data:isOpenTouchGuide : ${JSON.stringify(data)}`); 1325}).catch((err: BusinessError) => { 1326 console.error(`failed to isOpenTouchGuide, Code is ${err.code}, message is ${err.message}`); 1327}); 1328``` 1329 1330## accessibility.isOpenTouchGuide<sup>(deprecated)</sup> 1331 1332isOpenTouchGuide(callback: AsyncCallback<boolean>): void 1333 1334判断触摸浏览模式是否开启,使用callback异步回调。 1335 1336> **说明:** 1337> 1338> 从API version 10开始废弃。 1339> 1340> 推荐使用[accessibility.isOpenTouchGuideSync](#accessibilityisopentouchguidesync10)。 1341 1342**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision 1343 1344**参数:** 1345 1346| 参数名 | 类型 | 必填 | 说明 | 1347| -------- | ---------------------------- | ---- | ------------------------------------- | 1348| callback | AsyncCallback<boolean> | 是 | 回调函数,如果触摸浏览模式已开启,则返回 true;否则返回 false。 | 1349 1350**示例:** 1351 1352```ts 1353import { accessibility } from '@kit.AccessibilityKit'; 1354import { BusinessError } from '@kit.BasicServicesKit'; 1355 1356accessibility.isOpenTouchGuide((err: BusinessError, data: boolean) => { 1357 if (err) { 1358 console.error(`failed to isOpenTouchGuide, Code is ${err.code}, message is ${err.message}`); 1359 return; 1360 } 1361 console.info(`success data:isOpenTouchGuide : ${JSON.stringify(data)}`); 1362}); 1363``` 1364 1365## accessibility.isOpenTouchGuideSync<sup>10+</sup> 1366 1367isOpenTouchGuideSync(): boolean 1368 1369是否开启了触摸浏览模式。 1370 1371**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 1372 1373**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision 1374 1375**返回值:** 1376 1377| 类型 | 说明 | 1378| ------- | ------------------------------------- | 1379| boolean | 表示是否开启了触摸浏览模式。true表示开启了触摸浏览,false表示未开启触摸浏览。| 1380 1381**示例:** 1382 1383```ts 1384import { accessibility } from '@kit.AccessibilityKit'; 1385 1386let status: boolean = accessibility.isOpenTouchGuideSync(); 1387``` 1388 1389## accessibility.isScreenReaderOpenSync<sup>18+</sup> 1390 1391isScreenReaderOpenSync(): boolean 1392 1393是否开启了屏幕朗读模式。 1394 1395**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision 1396 1397**返回值:** 1398 1399| 类型 | 说明 | 1400| ------- | ------------------------------------- | 1401| boolean | 表示是否开启了屏幕朗读。true表示开启了屏幕朗读,false表示未开启屏幕朗读。 | 1402 1403**示例:** 1404 1405```ts 1406import { accessibility } from '@kit.AccessibilityKit'; 1407 1408let status: boolean = accessibility.isScreenReaderOpenSync(); 1409``` 1410 1411## accessibility.sendEvent<sup>(deprecated)</sup> 1412 1413sendEvent(event: EventInfo): Promise<void> 1414 1415发送无障碍事件,使用Promise异步回调。 1416 1417> **说明:** 1418> 1419> 从API version 7开始支持,从API version 9开始废弃。 1420> 推荐使用[accessibility.sendAccessibilityEvent()](#accessibilitysendaccessibilityevent9)。 1421 1422**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1423 1424**参数:** 1425 1426| 参数名 | 类型 | 必填 | 说明 | 1427| ----- | ----------------------- | ---- | -------- | 1428| event | [EventInfo](#eventinfo) | 是 | 无障碍事件对象。 | 1429 1430**返回值:** 1431 1432| 类型 | 说明 | 1433| ------------------- | ---------------- | 1434| Promise<void> | 无返回结果的Promise对象。 | 1435 1436**示例:** 1437 1438```ts 1439import { accessibility } from '@kit.AccessibilityKit'; 1440import { BusinessError } from '@kit.BasicServicesKit'; 1441 1442let eventInfo: accessibility.EventInfo = ({ 1443 type: 'click', 1444 bundleName: 'com.example.MyApplication', 1445 triggerAction: 'click', 1446}); 1447 1448accessibility.sendEvent(eventInfo).then(() => { 1449 console.info(`Succeeded in send event,eventInfo is ${eventInfo}`); 1450}).catch((err: BusinessError) => { 1451 console.error(`failed to sendEvent, Code is ${err.code}, message is ${err.message}`); 1452}); 1453``` 1454 1455## accessibility.sendEvent<sup>(deprecated)</sup> 1456 1457sendEvent(event: EventInfo, callback: AsyncCallback<void>): void 1458 1459发送无障碍事件,使用callback异步回调。 1460 1461> **说明:** 1462> 1463> 从API version 7开始支持,从API version 9开始废弃。 1464> 推荐使用[accessibility.sendAccessibilityEvent()](#accessibilitysendaccessibilityevent9-1)。 1465 1466**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1467 1468**参数:** 1469 1470| 参数名 | 类型 | 必填 | 说明 | 1471| -------- | ------------------------- | ---- | ---------------------------------------- | 1472| event | [EventInfo](#eventinfo) | 是 | 辅助事件对象。 | 1473| callback | AsyncCallback<void> | 是 | 回调函数,如果发送无障碍事件失败,则 AsyncCallback中err有数据返回。 | 1474 1475**示例:** 1476 1477```ts 1478import { accessibility } from '@kit.AccessibilityKit'; 1479import { BusinessError } from '@kit.BasicServicesKit'; 1480 1481let eventInfo: accessibility.EventInfo = ({ 1482 type: 'click', 1483 bundleName: 'com.example.MyApplication', 1484 triggerAction: 'click', 1485}); 1486 1487accessibility.sendEvent(eventInfo, (err: BusinessError) => { 1488 if (err) { 1489 console.error(`failed to sendEvent, Code is ${err.code}, message is ${err.message}`); 1490 return; 1491 } 1492 console.info(`Succeeded in sendEvent, eventInfo is ${eventInfo}`); 1493}); 1494``` 1495 1496## accessibility.sendAccessibilityEvent<sup>9+</sup> 1497 1498sendAccessibilityEvent(event: EventInfo): Promise<void> 1499 1500发送无障碍事件,使用Promise异步回调。 1501 1502**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1503 1504**参数:** 1505 1506| 参数名 | 类型 | 必填 | 说明 | 1507| ----- | ----------------------- | ---- | -------- | 1508| event | [EventInfo](#eventinfo) | 是 | 无障碍事件对象。 | 1509 1510**返回值:** 1511 1512| 类型 | 说明 | 1513| ------------------- | ---------------- | 1514| Promise<void> | 无返回结果的Promise对象。 | 1515 1516**错误码:** 1517 1518以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 1519 1520| 错误码ID | 错误信息 | 1521| ------- | -------------------------------- | 1522| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 1523 1524**示例:** 1525 1526```ts 1527import { accessibility } from '@kit.AccessibilityKit'; 1528import { BusinessError } from '@kit.BasicServicesKit'; 1529 1530let eventInfo: accessibility.EventInfo = ({ 1531 type: 'click', 1532 bundleName: 'com.example.MyApplication', 1533 triggerAction: 'click', 1534}); 1535 1536accessibility.sendAccessibilityEvent(eventInfo).then(() => { 1537 console.info(`Succeeded in send event,eventInfo is ${eventInfo}`); 1538}).catch((err: BusinessError) => { 1539 console.error(`failed to send event , Code is ${err.code}, message is ${err.message}`); 1540}); 1541``` 1542 1543## accessibility.sendAccessibilityEvent<sup>9+</sup> 1544 1545sendAccessibilityEvent(event: EventInfo, callback: AsyncCallback<void>): void 1546 1547发送无障碍事件,使用callback异步回调。 1548 1549**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1550 1551**参数:** 1552 1553| 参数名 | 类型 | 必填 | 说明 | 1554| -------- | ------------------------- | ---- | ---------------------------------------- | 1555| event | [EventInfo](#eventinfo) | 是 | 辅助事件对象。 | 1556| callback | AsyncCallback<void> | 是 | 回调函数,如果发送无障碍事件失败,则 AsyncCallback中err有数据返回。 | 1557 1558**错误码:** 1559 1560以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 1561 1562| 错误码ID | 错误信息 | 1563| ------- | -------------------------------- | 1564| 401 |Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 1565 1566**示例:** 1567 1568```ts 1569import { accessibility } from '@kit.AccessibilityKit'; 1570import { BusinessError } from '@kit.BasicServicesKit'; 1571 1572let eventInfo: accessibility.EventInfo = ({ 1573 type: 'click', 1574 bundleName: 'com.example.MyApplication', 1575 triggerAction: 'click', 1576}); 1577 1578accessibility.sendAccessibilityEvent(eventInfo, (err: BusinessError) => { 1579 if (err) { 1580 console.error(`failed to send event, Code is ${err.code}, message is ${err.message}`); 1581 return; 1582 } 1583 console.info(`Succeeded in send event, eventInfo is ${eventInfo}`); 1584}); 1585``` 1586 1587**主动聚焦示例:** 1588 1589```ts 1590@Entry 1591@Component 1592struct Index { 1593 1594 build() { 1595 Column() { 1596 // 待聚焦组件添加id属性,id唯一性由使用者保证 1597 Button('待聚焦组件').id('click') 1598 } 1599 } 1600} 1601``` 1602```ts 1603import { accessibility } from '@kit.AccessibilityKit'; 1604import { BusinessError } from '@kit.BasicServicesKit'; 1605 1606let eventInfo: accessibility.EventInfo = ({ 1607 type: 'requestFocusForAccessibility', 1608 bundleName: 'com.example.MyApplication', 1609 triggerAction: 'common', 1610 customId: 'click' // 对应待聚焦组件id属性值 1611}); 1612 1613accessibility.sendAccessibilityEvent(eventInfo, (err: BusinessError) => { 1614 if (err) { 1615 console.error(`failed to send event, Code is ${err.code}, message is ${err.message}`); 1616 return; 1617 } 1618 console.info(`Succeeded in send event, eventInfo is ${eventInfo}`); 1619}); 1620``` 1621 1622**主动播报支持Resource示例<sup>18+</sup>:** 1623 1624```ts 1625import { accessibility } from '@kit.AccessibilityKit'; 1626import { BusinessError } from '@kit.BasicServicesKit'; 1627 1628let eventInfo: accessibility.EventInfo = ({ 1629 type: 'announceForAccessibility', 1630 bundleName: 'com.example.MyApplication', 1631 triggerAction: 'common', 1632 textResourceAnnouncedForAccessibility: $r('app.string.ResourceName'), 1633}); 1634 1635accessibility.sendAccessibilityEvent(eventInfo, (err: BusinessError) => { 1636 if (err) { 1637 console.error(`failed to send event, Code is ${err.code}, message is ${err.message}`); 1638 return; 1639 } 1640 console.info(`Succeeded in send event, eventInfo is ${eventInfo}`); 1641}); 1642``` 1643 1644## accessibility.getTouchModeSync<sup>20+</sup> 1645 1646getTouchModeSync(): string 1647 1648查询触摸浏览功能下的单击/双击操作模式。 1649 1650**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 1651 1652**返回值:** 1653 1654| 类型 | 说明 | 1655| ----------- | ------------------------------------- | 1656| string | 表示当前操作模式。<br>- singleTouchMode:表示单击操作模式。<br>- doubleTouchMode:表示双击操作模式。<br>- none:表示未开启触摸浏览功能。 | 1657 1658```ts 1659import { accessibility } from '@kit.AccessibilityKit'; 1660 1661@Entry 1662@Component 1663struct Index { 1664 aboutToAppear(): void { 1665 let touchMode: string = accessibility.getTouchModeSync(); 1666 console.info(`current touch mode: ${JSON.stringify(touchMode)}`); 1667 } 1668 1669 build() { 1670 Column() { 1671 } 1672 } 1673} 1674```