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

2025-06-12 浏览 (1)

@ohos.accessibility.config (系统辅助功能配置)(系统接口)

本模块提供系统辅助功能的配置,包括辅助扩展的启用与关闭、高对比度文字显示、鼠标键、无障碍字幕配置等。

说明:

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

导入模块

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

属性

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

名称类型只读可选说明
highContrastTextConfig<boolean>表示高对比度文字功能启用状态。true表示已启用高对比度文字功能,false表示未启用高对比度文字功能,默认值为false。
invertColorConfig<boolean>表示颜色反转功能启用状态。true表示已启用颜色反转功能,false表示未启用颜色反转功能,默认值为false。
daltonizationState11+Config<boolean>表示颜色滤镜功能启动状态。配合daltonizationColorFilter使用。true表示已启用颜色滤镜功能,false表示未启用颜色滤镜功能,默认值为false。
daltonizationColorFilterConfig<DaltonizationColorFilter>表示颜色滤镜功能配置。
contentTimeoutConfig<number>表示内容显示建议时长配置。取值范围为0~5000,单位为毫秒。默认值为0。
animationOffConfig<boolean>表示关闭动画功能启用状态。true表示已启用关闭动画功能,false表示未启用关闭动画功能,默认值为false。
brightnessDiscountConfig<number>表示亮度折扣系统配置。取值范围为0~1.0。默认值为0.0。
mouseKeyConfig<boolean>表示鼠标键功能启用状态。true表示已启用鼠标键功能,false表示未启用鼠标键功能,默认值为false。
mouseAutoClickConfig<number>表示鼠标自动点击操作的配置。取值范围0-5000,单位为毫秒,0表示不生效,其他值表示鼠标悬停相应的时长即触发自动点击操作,默认值为0,即默认不生效。
shortkeyConfig<boolean>表示辅助扩展快捷键功能启用状态。true表示已启用辅助扩展快捷键功能,false表示未启用辅助扩展快捷键功能,默认值为false。
shortkeyTargetConfig<string>表示辅助扩展快捷键的目标配置。取值为辅助应用的名称,格式为:'bundleName/abilityName'。
captionsConfig<boolean>表示辅助字幕功能启用状态。true表示已启用辅助字幕功能,false表示未启用辅助字幕功能,默认值为false。
captionsStyleConfig<accessibility.CaptionsStyle>表示辅助字幕的配置。
audioMono10+Config<boolean>表示单声道音频的配置。true表示已启用单声道音频,false表示未启用单声道音频,默认值为false。
audioBalance10+Config<number>表示左右声道音量平衡的配置。取值范围为-1.0~1.0。默认值为0.0。
shortkeyMultiTargets11+Config<Array<string>>表示辅助扩展快捷键的列表配置。取值为辅助应用的名称,格式为:['bundleName/abilityName']。
clickResponseTime11+Config<ClickResponseTime>表示点击持续时间功能配置。
ignoreRepeatClick11+Config<boolean>表示忽略重复点击功能启用状态。配合repeatClickInterval使用。true表示已启用忽略重复点击功能,false表示未启用忽略重复点击功能,默认值为false。
repeatClickInterval11+Config<RepeatClickInterval>表示忽略重复点击功能配置。

boolean返回值的含义:True表示开启,False表示关闭。

enableAbility

enableAbility(name: string, capability: Array<accessibility.Capability>): Promise<void>;

需要权限:ohos.permission.WRITE_ACCESSIBILITY_CONFIG

启用辅助扩展,使用Promise异步回调。

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

参数:

参数名类型必填说明
namestring辅助应用的名称,格式为:'bundleName/abilityName'。
capabilityArray<accessibility.Capability>辅助应用的能力属性。

返回值:

类型说明
Promise<void>无返回结果的Promise对象。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
9300001Invalid bundle name or ability name.
9300002Target ability already enabled.

示例:

import { accessibility, config } from '@kit.AccessibilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let name: string = 'com.ohos.example/axExtension';
let capability: accessibility.Capability[] = ['retrieve'];

config.enableAbility(name, capability).then(() => {
  console.info(`Succeeded  in enable ability, name is ${name}, capability is ${capability}`);
}).catch((err: BusinessError) => {
  console.error(`failed to enable ability, Code is ${err.code}, message is ${err.message}`);
});

enableAbility

enableAbility(name: string, capability: Array<accessibility.Capability>, callback: AsyncCallback<void>): void;

需要权限:ohos.permission.WRITE_ACCESSIBILITY_CONFIG

启用辅助扩展,使用callback异步回调。

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

参数:

参数名类型必填说明
namestring辅助应用的名称,格式为:'bundleName/abilityName'。
capabilityArray<accessibility.Capability>辅助应用的能力属性。
callbackAsyncCallback<void>回调函数。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
9300001Invalid bundle name or ability name.
9300002Target ability already enabled.

示例:

import { accessibility, config } from '@kit.AccessibilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let name: string = 'com.ohos.example/axExtension';
let capability: accessibility.Capability[] = ['retrieve'];

config.enableAbility(name, capability, (err: BusinessError) => {
  if (err) {
    console.error(`failed to enable ability, Code is ${err.code}, message is ${err.message}`);
    return;
  }
  console.info(`Succeeded in enable ability, name is ${name}, capability is ${capability}`); 
});

disableAbility

disableAbility(name: string): Promise<void>;

需要权限:ohos.permission.WRITE_ACCESSIBILITY_CONFIG

关闭辅助扩展,使用Promise异步回调。

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

参数:

参数名类型必填说明
namestring辅助应用的名称,格式为:'bundleName/abilityName'。

返回值:

类型说明
Promise<void>无返回结果的Promise对象。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
9300001Invalid bundle name or ability name.

示例:

import { accessibility, config } from '@kit.AccessibilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let name: string = 'com.ohos.example/axExtension';

config.disableAbility(name).then(() => {
  console.info(`Succeeded in disable ability, name is ${name}`);
}).catch((err: BusinessError) => {
  console.error(`failed to disable ability, Code is ${err.code}, message is ${err.message}`);
})

disableAbility

disableAbility(name: string, callback: AsyncCallback<void>): void;

需要权限:ohos.permission.WRITE_ACCESSIBILITY_CONFIG

关闭辅助扩展,使用callback异步回调。

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

参数:

参数名类型必填说明
namestring辅助应用的名称,格式为:'bundleName/abilityName'。
callbackAsyncCallback<void>回调函数。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.
9300001Invalid bundle name or ability name.

示例:

import { accessibility, config } from '@kit.AccessibilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let name: string = 'com.ohos.example/axExtension';

config.disableAbility(name, (err: BusinessError) => {
  if (err) {
    console.error(`failed to enable ability, Code is ${err.code}, message is ${err.message}`);
    return;
  }
  console.info(`Succeeded in disable, name is ${name}`);
});

on('enabledAccessibilityExtensionListChange')

on(type: 'enabledAccessibilityExtensionListChange', callback: Callback<void>): void;

需要权限:ohos.permission.READ_ACCESSIBILITY_CONFIG

添加启用的辅助扩展的列表变化监听,使用callback异步回调。

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

参数:

参数名类型必填说明
typestring参数固定为enabledAccessibilityExtensionListChange,监听启用的辅助扩展的列表变化。
callbackCallback<void>回调函数,在启用的辅助扩展的列表变化时通过此函数进行通知。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

示例:

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

config.on('enabledAccessibilityExtensionListChange', () => {
  console.info('subscribe enabled accessibility extension list change state success');
});

off('enabledAccessibilityExtensionListChange')

off(type: 'enabledAccessibilityExtensionListChange', callback?: Callback<void>): void;

需要权限:ohos.permission.READ_ACCESSIBILITY_CONFIG

取消启用的辅助扩展的列表变化监听,使用callback异步回调。

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

参数:

参数名类型必填说明
typestring参数固定为enabledAccessibilityExtensionListChange,监听启用的辅助扩展的列表变化。
callbackCallback<void>取消指定callback对象的事件响应。需与on('enabledAccessibilityExtensionListChange')的callback一致。缺省时,表示注销所有已注册事件。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

示例:

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

config.off('enabledAccessibilityExtensionListChange', () => {
  console.info('Unsubscribe enabled accessibility extension list change state success');
});

on('installedAccessibilityListChange')12+

on(type: 'installedAccessibilityListChange', callback: Callback<void>): void;

需要权限:ohos.permission.READ_ACCESSIBILITY_CONFIG

添加已安装的辅助扩展的列表变化监听,使用callback异步回调。

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

参数:

参数名类型必填说明
typestring参数固定为installedAccessibilityListChange,监听已安装的辅助扩展的列表变化。
callbackCallback<void>回调函数,在已安装的辅助扩展的列表变化时通过此函数进行通知。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

示例:

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

config.on('installedAccessibilityListChange', () => {
  console.info('subscribe installed accessibility extension list change state success');
});

off('installedAccessibilityListChange')12+

off(type: 'installedAccessibilityListChange', callback?: Callback<void>): void;

需要权限:ohos.permission.READ_ACCESSIBILITY_CONFIG

取消已安装的辅助扩展的列表变化监听,使用callback异步回调。

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

参数:

参数名类型必填说明
typestring参数固定为installedAccessibilityListChange,监听已安装的辅助扩展的列表变化。
callbackCallback<void>取消指定callback对象的事件响应。需与on('installedAccessibilityListChange')的callback一致。缺省时,表示注销所有已注册事件。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

示例:

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

config.off('installedAccessibilityListChange', () => {
  console.info('Unsubscribe installed accessibility extension list change state success');
});

Config

用于属性的设置、获取与监听。

set

set(value: T): Promise<void>;

需要权限:ohos.permission.WRITE_ACCESSIBILITY_CONFIG

设置属性,使用Promise异步回调。

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

参数:

参数名类型必填说明
valueT设置的属性值。

返回值:

类型说明
Promise<void>无返回结果的Promise对象。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

示例:

import { config } from '@kit.AccessibilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let value: boolean = true;

config.highContrastText.set(value).then(() => {
  console.info(`Succeeded in set highContrastText value is ${value}`);
}).catch((err: BusinessError) => {
  console.error(`failed to set highContrastText, Code is ${err.code}, message is ${err.message}`);
});

set

set(value: T, callback: AsyncCallback<void>): void;

需要权限:ohos.permission.WRITE_ACCESSIBILITY_CONFIG

设置属性,使用callback异步回调。

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

参数:

参数名类型必填说明
valueT设置的属性值。
callbackAsyncCallback<void>回调函数。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

示例:

import { config } from '@kit.AccessibilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let value: boolean = true;

config.highContrastText.set(value, (err: BusinessError) => {
  if (err) {
    console.error(`failed to set highContrastText, Code is ${err.code}, message is ${err.message}`);
    return;
  }
  console.info(`Succeeded in set highContrastText, value is ${value}`);
});

get

get(): Promise<T>;

获取属性,使用Promise异步回调。

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

返回值:

类型说明
Promise<T>Promise对象,返回对应属性值。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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 { config } from '@kit.AccessibilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

config.highContrastText.get().then((data: boolean) => {
  console.info(`Succeeded in get highContrastText, data is ${data}`);
}).catch((err: BusinessError) => {
  console.error(`failed to get highContrastText, Code is ${err.code}, message is ${err.message}`);
});

get

get(callback: AsyncCallback<T>): void;

获取属性,使用callback异步回调。

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

参数:

参数名类型必填说明
callbackAsyncCallback<T>回调函数,返回属性值。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码ID错误信息
202Permission verification failed. A non-system application calls a system API.

示例:

import { config } from '@kit.AccessibilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

config.highContrastText.get((err: BusinessError, data: boolean) => {
  if (err) {
    console.error(`failed to get highContrastText, Code is ${err.code}, message is ${err.message}`);
    return;
  }
  console.info(`Succeeded in get highContrastText, data is ${data}`);
});

on

on(callback: Callback<T>): void;

需要权限:ohos.permission.READ_ACCESSIBILITY_CONFIG

添加属性变化监听,使用callback异步回调。

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

参数:

参数名类型必填说明
callbackCallback<T>回调函数,在属性变化时通过此函数进行通知。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.

示例:

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

config.highContrastText.on((data: boolean) => {
  console.info(`subscribe highContrastText success, result: ${JSON.stringify(data)}`);
});

off

off(callback?: Callback<T>): void;

需要权限:ohos.permission.READ_ACCESSIBILITY_CONFIG

取消属性变化监听,使用callback异步回调。

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

参数:

参数名类型必填说明
callbackCallback<T>取消指定callback对象的事件响应。需与on()的callback一致。缺省时,表示注销所有已注册事件。

错误码:

以下错误码的详细介绍请参见无障碍子系统错误码

错误码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 { config } from '@kit.AccessibilityKit';

config.highContrastText.off((data: boolean) => {
  console.info(`Unsubscribe highContrastText success, result: ${JSON.stringify(data)}`);
});

DaltonizationColorFilter

用于不同弱视类型的校正颜色滤镜。
颜色滤镜功能开启时(daltonizationState设置为true),颜色滤镜的配置(即设置的DaltonizationColorFilter的值)生效;颜色滤镜功能关闭时(daltonizationState设置为false),显示为正常类型11+

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

名称说明
Normal表示正常类型。
Protanomaly表示红色弱视类型。
Deuteranomaly表示绿色弱视类型。
Tritanomaly表示蓝色弱视类型。

ClickResponseTime11+

用于不同时间长短的点击重复时间。

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

名称说明
Short表示短 (默认)。
Medium表示中。
Long表示长。

RepeatClickInterval11+

用于不同时间间隔的忽略重复点击。
忽略重复点击功能开启时(ignoreRepeatClick设置为true),忽略重复点击的配置(即设置的RepeatClickInterval的值)生效;忽略重复点击功能关闭时(ignoreRepeatClick设置为false),显示为正常类型。

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

名称说明
Shortest表示最短。
Short表示短。
Medium表示中。
Long表示长。
Longest表示最长。

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Accessibility Kit(无障碍开发服务)

harmony 鸿蒙无障碍子系统错误码

harmony 鸿蒙@ohos.accessibility.GesturePath (手势路径)

harmony 鸿蒙@ohos.accessibility.GesturePoint (手势触摸点)

harmony 鸿蒙@ohos.accessibility (辅助功能)

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

harmony 鸿蒙AccessibilityExtensionContext (辅助功能扩展上下文)(系统接口)

harmony 鸿蒙AccessibilityExtensionContext (辅助功能扩展上下文)

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