@ohos.application.AccessibilityExtensionAbility (辅助功能扩展能力)

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

说明:

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

导入模块

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 事件时间戳,单位是毫秒。

AccessibilityElement10+

AccessibilityElement二级模块

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

示例:

import { AccessibilityElement } from '@ohos.application.AccessibilityExtensionAbility';

let accessibilityElement: AccessibilityElement;

ElementAttributeValues10+

ElementAttributeValues二级模块

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

示例:

import { ElementAttributeValues } from '@ohos.application.AccessibilityExtensionAbility';

let elementAttributeValues: ElementAttributeValues;

FocusDirection10+

FocusDirection二级模块,表示查询下一焦点元素的方向。

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

示例:

import { FocusDirection } from '@ohos.application.AccessibilityExtensionAbility';

let focusDirection: FocusDirection;

ElementAttributeKeys10+

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

名称 类型 可读 可写 说明
ElementAttributeKeys keyof ElementAttributeValues 表示ElementAttributeValues的key。

示例:

import { ElementAttributeKeys } from '@ohos.application.AccessibilityExtensionAbility';

let elementAttributeKeys: ElementAttributeKeys;

FocusType10+

FocusType二级模块,表示查询焦点元素的类型。

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

示例:

import { FocusType } from '@ohos.application.AccessibilityExtensionAbility';

let focusType: FocusType;

WindowType 10+

WindowType二级模块,表示窗口的类型。

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

示例:

import { WindowType } from '@ohos.application.AccessibilityExtensionAbility';

let windowType: WindowType;

Rect10+

Rect二级模块,表示矩形区域。

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

示例:

import { Rect } from '@ohos.application.AccessibilityExtensionAbility';

let rect: Rect;

GestureType

手势事件类型。

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

名称 类型 描述
left string 表示向左的手势。
leftThenRight string 表示先向左再向右的手势。
leftThenUp string 表示先向左再向上的手势。
leftThenDown string 表示先向左再向下的手势。
right string 表示向右的手势。
rightThenLeft string 表示先向右再向左的手势。
rightThenUp string 表示先向右再向上的手势。
rightThenDown string 表示先向右再向下的手势。
up string 表示向上的手势。
upThenLeft string 表示先向上再向左的手势。
upThenRight string 表示先向上再向右的手势。
upThenDown string 表示先向上再向下的手势。
down string 表示向下的手势。
downThenLeft string 表示先向下再向左的手势。
downThenRight string 表示先向下再向右的手势。
downThenUp string 表示先向下再向上的手势。
twoFingerSingleTap11+ string 表示双指单击的手势。
twoFingerDoubleTap11+ string 表示双指双击的手势。
twoFingerDoubleTapAndHold11+ string 表示双指双击长按的手势。
twoFingerTripleTap11+ string 表示双指三击的手势。
twoFingerTripleTapAndHold11+ string 表示双指三击长按的手势。
threeFingerSingleTap11+ string 表示三指单击的手势。
threeFingerDoubleTap11+ string 表示三指双击的手势。
threeFingerDoubleTapAndHold11+ string 表示三指双击长按的手势。
threeFingerTripleTap11+ string 表示三指三击的手势。
threeFingerTripleTapAndHold11+ string 表示三指三击长按的手势。
fourFingerSingleTap11+ string 表示四指单击的手势。
fourFingerDoubleTap11+ string 表示四指双击的手势。
fourFingerDoubleTapAndHold11+ string 表示四指双击长按的手势。
fourFingerTripleTap11+ string 表示四指三击的手势。
fourFingerTripleTapAndHold11+ string 表示四指三击长按的手势。
threeFingerSwipeUp11+ string 表示三指向上滑动的手势。
threeFingerSwipeDown11+ string 表示三指向下滑动的手势。
threeFingerSwipeLeft11+ string 表示三指向左滑动的手势。
threeFingerSwipeRight11+ string 表示三指向右滑动的手势。
fourFingerSwipeUp11+ string 表示四指向上滑动的手势。
fourFingerSwipeDown11+ string 表示四指向下滑动的手势。
fourFingerSwipeLeft11+ string 表示四指向左滑动的手势。
fourFingerSwipeRight11+ string 表示四指向右滑动的手势。

PageUpdateType

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

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

名称 类型 描述
pageContentUpdate string 表示页面内容刷新。
pageStateUpdate string 表示页面状态刷新。

TouchGuideType

触摸浏览事件类型。

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

名称 类型 描述
touchBegin string 表示触摸浏览时开始触摸。
touchEnd string 表示触摸浏览时结束触摸。

AccessibilityExtensionAbility.onConnect

onConnect(): void;

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

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

示例:

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

class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  onConnect(): void {
    console.log('AxExtensionAbility onConnect');
  }
}

AccessibilityExtensionAbility.onDisconnect

onDisconnect(): void;

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

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

示例:

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

class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  onDisconnect(): void {
    console.log('AxExtensionAbility onDisconnect');
  }
}

AccessibilityExtensionAbility.onAccessibilityEvent

onAccessibilityEvent(event: AccessibilityEvent): void;

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

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

参数:

参数名 类型 必填 说明
event AccessibilityEvent 无障碍事件回调函数。无返回值。

示例:

import AccessibilityExtensionAbility , { AccessibilityEvent } from '@ohos.application.AccessibilityExtensionAbility';

class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  onAccessibilityEvent(event: AccessibilityEvent): void {
    console.log('AxExtensionAbility onAccessibilityEvent');
    if (event.eventType === 'click') {
      console.log('AxExtensionAbility onAccessibilityEvent: click');
    }
  }
}

AccessibilityExtensionAbility.onKeyEvent

onKeyEvent(keyEvent: KeyEvent): boolean;

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

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

参数:

参数名 类型 必填 说明
keyEvent KeyEvent 按键事件回调函数。返回true表示拦截此按键。

示例:

import AccessibilityExtensionAbility from '@ohos.application.AccessibilityExtensionAbility';
import { KeyEvent } from '@ohos.multimodalInput.keyEvent';

class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  onKeyEvent(keyEvent: KeyEvent): boolean {
    console.log('AxExtensionAbility onKeyEvent');
    if (keyEvent.key.code === 16) {
      console.log('AxExtensionAbility onKeyEvent: intercept 16');
      return true;
    }
    return false;
  }
}