辅助功能扩展能力

2024-01-23 17:16 更新

AccessibilityExtensionAbility基于ExtensionAbility框架,提供辅助功能业务的能力。

说明

本模块首批接口从API version 9开始支持,后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

  1. import AccessibilityExtensionAbility from '@ohos.application.AccessibilityExtensionAbility';

属性

系统能力: SystemCapability.BarrierFree.Accessibility.Core

名称

类型

可读

可写

说明

context

AccessibilityExtensionContext

表示辅助扩展能力上下文。

AccessibilityEvent

辅助事件信息。

系统能力:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core

属性

名称

类型

可读

可写

说明

eventType

accessibility.EventType | accessibility.WindowUpdateType | TouchGuideType | GestureType | PageUpdateType

具体事件类型。

EventType :无障碍事件类型;WindowUpdateType:窗口变化类型;

TouchGuideType:触摸浏览类型;

GestureType:手势事件类型;

PageUpdateType:页面刷新类型;当前版本暂不支持。

target

AccessibilityElement

发生事件的目标组件。

timeStamp

number

事件时间戳。

GestureType

手势事件类型;当前版本暂不支持。

系统能力:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core

名称

描述

left

类型为字符串,表示向左的手势。

leftThenRight

类型为字符串,表示先向左再向右的手势。

leftThenUp

类型为字符串,表示先向左再向上的手势。

leftThenDown

类型为字符串,表示先向左再向下的手势。

right

类型为字符串,表示向右的手势。

rightThenLeft

类型为字符串,表示先向右再向左的手势。

rightThenUp

类型为字符串,表示先向右再向上的手势。

rightThenDown

类型为字符串,表示先向右再向下的手势。

up

类型为字符串,表示向上的手势。

upThenLeft

类型为字符串,表示先向上再向左的手势。

upThenRight

类型为字符串,表示先向上再向右的手势。

upThenDown

类型为字符串,表示先向上再向下的手势。

down

类型为字符串,表示向下的手势。

downThenLeft

类型为字符串,表示先向下再向左的手势。

downThenRight

类型为字符串,表示先向下再向右的手势。

downThenUp

类型为字符串,表示先向下再向上的手势。

PageUpdateType

页面刷新类型;当前版本暂不支持。

系统能力:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core

名称

描述

pageContentUpdate

类型为字符串,表示页面内容刷新。

pageStateUpdate

类型为字符串,表示页面状态刷新。

TouchGuideType

触摸浏览事件类型。

系统能力:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core

名称

描述

touchBegin

类型为字符串,表示触摸浏览时开始触摸。

touchEnd

类型为字符串,表示触摸浏览时结束触摸。

AccessibilityExtensionAbility.onConnect

onConnect(): void;

用户启用AccessibilityExtensionAbility时,系统服务完成连接后,回调此接口,可以该方法中执行初始化业务逻辑操作。该方法可以选择性重写。

系统能力: SystemCapability.BarrierFree.Accessibility.Core

示例:

  1. class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  2. onConnect() {
  3. console.log('AxExtensionAbility onConnect');
  4. }
  5. };

AccessibilityExtensionAbility.onDisconnect

onDisconnect(): void;

用户停用AccessibilityExtensionAbility时,系统服务完成断开连接后,回调此接口,可以该方法中执行资源回收退出业务逻辑操作。该方法可以选择性重写。

系统能力: SystemCapability.BarrierFree.Accessibility.Core

示例:

  1. class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  2. onDisconnect() {
  3. console.log('AxExtensionAbility onDisconnect');
  4. }
  5. };

AccessibilityExtensionAbility.onAccessibilityEvent

onAccessibilityEvent(event: AccessibilityEvent): void;

在关注的应用及事件类型对应的事件发生时回调此接口,可以在该方法中根据事件信息进行业务逻辑处理。一般情况下需要重写该方法完成业务。

系统能力: SystemCapability.BarrierFree.Accessibility.Core

参数:

参数名

类型

必填

说明

event

AccessibilityEvent

无障碍事件回调函数。无返回值。

AccessibilityEvent中同时设置了EventTypeWindowUpdateType,则优先生效WindowUpdateType

示例:

  1. class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  2. onAccessibilityEvent(event) {
  3. console.log('AxExtensionAbility onAccessibilityEvent');
  4. if (event.eventType === 'click') {
  5. console.log('AxExtensionAbility onAccessibilityEvent: click');
  6. }
  7. }
  8. };

AccessibilityExtensionAbility.onKeyEvent

onKeyEvent(keyEvent: KeyEvent): boolean;

在物理按键按下时回调此方法,可以在该方法中根据业务判断是否对事件进行拦截。

系统能力: SystemCapability.BarrierFree.Accessibility.Core

参数:

参数名

类型

必填

说明

keyEvent

KeyEvent

按键事件回调函数。返回true表示拦截此按键。

示例:

  1. class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  2. onKeyEvent(keyEvent) {
  3. console.log('AxExtensionAbility onKeyEvent');
  4. if (keyEvent.keyCode === 22) {
  5. console.log('AxExtensionAbility onKeyEvent: intercept 22');
  6. return true;
  7. }
  8. return false;
  9. }
  10. };
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号