辅助功能扩展能力
AccessibilityExtensionAbility基于ExtensionAbility框架,提供辅助功能业务的能力。
本模块首批接口从API version 9开始支持,后续版本的新增接口,采用上角标单独标记接口的起始版本。
属性
名称 | 类型 | 可读 | 可写 | 说明 |
---|---|---|---|---|
eventType | accessibility.EventType | accessibility.WindowUpdateType | TouchGuideType | GestureType | PageUpdateType | 是 | 否 | 具体事件类型。 EventType :无障碍事件类型;WindowUpdateType:窗口变化类型; TouchGuideType:触摸浏览类型; GestureType:手势事件类型; PageUpdateType:页面刷新类型;当前版本暂不支持。 |
target | 是 | 否 | 发生事件的目标组件。 | |
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
示例:
- class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
- onConnect() {
- console.log('AxExtensionAbility onConnect');
- }
- };
AccessibilityExtensionAbility.onDisconnect
onDisconnect(): void;
用户停用AccessibilityExtensionAbility时,系统服务完成断开连接后,回调此接口,可以该方法中执行资源回收退出业务逻辑操作。该方法可以选择性重写。
系统能力: SystemCapability.BarrierFree.Accessibility.Core
示例:
- class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
- onDisconnect() {
- console.log('AxExtensionAbility onDisconnect');
- }
- };
AccessibilityExtensionAbility.onAccessibilityEvent
onAccessibilityEvent(event: AccessibilityEvent): void;
在关注的应用及事件类型对应的事件发生时回调此接口,可以在该方法中根据事件信息进行业务逻辑处理。一般情况下需要重写该方法完成业务。
系统能力: SystemCapability.BarrierFree.Accessibility.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
event | 是 | 无障碍事件回调函数。无返回值。 若AccessibilityEvent中同时设置了EventType与WindowUpdateType,则优先生效WindowUpdateType。 |
示例:
- class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
- onAccessibilityEvent(event) {
- console.log('AxExtensionAbility onAccessibilityEvent');
- if (event.eventType === 'click') {
- console.log('AxExtensionAbility onAccessibilityEvent: click');
- }
- }
- };
AccessibilityExtensionAbility.onKeyEvent
onKeyEvent(keyEvent: KeyEvent): boolean;
在物理按键按下时回调此方法,可以在该方法中根据业务判断是否对事件进行拦截。
系统能力: SystemCapability.BarrierFree.Accessibility.Core
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
keyEvent | 是 | 按键事件回调函数。返回true表示拦截此按键。 |
示例:
- class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
- onKeyEvent(keyEvent) {
- console.log('AxExtensionAbility onKeyEvent');
- if (keyEvent.keyCode === 22) {
- console.log('AxExtensionAbility onKeyEvent: intercept 22');
- return true;
- }
- return false;
- }
- };
更多建议: