openharmony 鸿蒙 js-apis-application-accessibilityExtensionAbility-sys

2026-08-25 浏览 (1)

@ohos.application.AccessibilityExtensionAbility (辅助功能扩展能力)(系统接口)

AccessibilityExtensionAbility基于ExtensionAbility框架,提供辅助功能业务的能力,能力包括成功连接无障碍服务、断开无障碍服务、处理无障碍服务事件和无障碍按键事件等。

说明:

  • 本模块首批接口从API version 20开始支持,后续版本的新增接口,采用上角标单独标记接口的起始版本。
  • 当前页面仅包含本模块的系统接口。其他公开接口参见@ohos.application.AccessibilityExtensionAbility

导入模块

import { AccessibilityExtensionAbility } from '@kit.AccessibilityKit';

AccessibilityEventInfo

无障碍事件信息。

系统接口:此接口为系统接口。

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

属性

名称类型只读可选说明
eventTypeAccessibilityEventType无障碍事件类型。
targetAccessibilityElement发生事件的目标组件。
timeStampnumber事件时间戳,单位是毫秒。默认值为0。
extraInfostring针对TextArea、TextInput、SearchField、RichEdit组件, 组件文本内容有新增或删除时,新增或删除的文本内容。

AccessibilityExtensionAbility.onAccessibilityConnect

onAccessibilityConnect(): void

连接无障碍服务成功后的回调函数。

用户启用AccessibilityExtensionAbility时,系统服务完成连接后回调该接口,在该方法中完成初始化业务逻辑操作。 该方法可以选择性重写。 无障碍服务通过该回调,通知Ability已成功连接。

系统接口:此接口为系统接口。

需要权限:ohos.permission.ACCESSIBILITY_EXTENSION_ABILITY

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

错误码:

以下错误码的详细介绍请参见通用错误码

错误码ID错误信息
201Permission verification failed. The application does not have the permission required to call the API.
202Permission verification failed. A non-system application calls a system API.

示例:

import { AccessibilityExtensionAbility } from '@kit.AccessibilityKit';

class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  onAccessibilityConnect(): void {
    console.info('AxExtensionAbility onAccessibilityConnect');
  }
}

AccessibilityExtensionAbility.onAccessibilityDisconnect

onAccessibilityDisconnect(): void

断开无障碍服务成功后的回调函数。

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

系统接口:此接口为系统接口。

需要权限:ohos.permission.ACCESSIBILITY_EXTENSION_ABILITY

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

错误码:

以下错误码的详细介绍请参见通用错误码

错误码ID错误信息
201Permission verification failed. The application does not have the permission required to call the API.
202Permission verification failed. A non-system application calls a system API.

示例:

import { AccessibilityExtensionAbility } from '@kit.AccessibilityKit';

class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  onAccessibilityDisconnect(): void {
    console.info('AxExtensionAbility onAccessibilityDisconnect');
  }
}

AccessibilityExtensionAbility.onAccessibilityEventInfo

onAccessibilityEventInfo(event: AccessibilityEventInfo): void;

在应用和事件发生时回调该接口,根据事件信息处理业务逻辑。通常需要重写。

系统接口:此接口为系统接口。

需要权限:ohos.permission.ACCESSIBILITY_EXTENSION_ABILITY

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

参数:

参数名类型必填说明
eventAccessibilityEventInfo无障碍事件

错误码:

以下错误码的详细介绍请参见通用错误码

错误码ID错误信息
201Permission verification failed. The application does not have the permission required to call the API.
202Permission verification failed. A non-system application calls a system API.

示例:

import { AccessibilityExtensionAbility, AccessibilityEventInfo, AccessibilityEventType } from '@kit.AccessibilityKit';

class MyAccessibilityExtensionAbility extends AccessibilityExtensionAbility {
  onAccessibilityEventInfo(event: AccessibilityEventInfo): void {
    console.info('AxExtensionAbility onAccessibilityEventInfo');
    if (event.eventType === AccessibilityEventType.TYPE_CLICK) {
      console.info('AxExtensionAbility onAccessibilityEventInfo: click');
    }
  }
}

AccessibilityExtensionAbility.onAccessibilityKeyEvent

onAccessibilityKeyEvent(keyEvent: KeyEvent): boolean;

在物理按键按下时回调该方法,在该方法中根据业务判断是否消费事件。

系统接口:此接口为系统接口。

需要权限:ohos.permission.ACCESSIBILITY_EXTENSION_ABILITY

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

参数:

参数名类型必填说明
keyEventKeyEvent按键事件。

返回值:

类型说明
boolean返回true表示此事件被消费,不会继续传递。
返回false表示些事件未被消费,会继续传递。

错误码:

以下错误码的详细介绍请参见通用错误码

错误码ID错误信息
201Permission verification failed. The application does not have the permission required to call the API.
202Permission verification failed. A non-system application calls a system API.

示例:

import { AccessibilityExtensionAbility } from '@kit.AccessibilityKit';
import { KeyEvent, KeyCode } from '@kit.InputKit';

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

你可能感兴趣的鸿蒙文章

openharmony 鸿蒙 js-apis-accessibility-GesturePoint

openharmony 鸿蒙 js-apis-inner-application-accessibilityExtensionContext

openharmony 鸿蒙 js-apis-accessibility

openharmony 鸿蒙 Readme-CN

openharmony 鸿蒙 js-apis-accessibility-sys

openharmony 鸿蒙 js-apis-accessibility-config-sys

openharmony 鸿蒙 js-apis-inner-application-accessibilityExtensionContext-sys

openharmony 鸿蒙 errorcode-accessibility

openharmony 鸿蒙 js-apis-application-accessibilityExtensionAbility

openharmony 鸿蒙 js-apis-accessibility-GesturePath

  • 所属分类: 后端技术
  • 本文标签: 鸿蒙 软件
  • 版权声明: 本文链接 https://seaxiang.com/blog/IN5OX29F