1# @ohos.accessibility.config (系统辅助功能配置) 2 3本模块提供系统辅助功能的配置,包括辅助扩展的启用与关闭、高对比度文字显示、鼠标键、无障碍字幕配置等。 4 5> **说明:** 6> 7> - 本模块首批接口从 API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> - 本模块接口为系统接口。 9 10## 导入模块 11 12```ts 13import config from '@ohos.accessibility.config'; 14``` 15 16## 属性 17 18**系统能力**:以下各项对应的系统能力均为SystemCapability.BarrierFree.Accessibility.Core 19 20| 名称 | 类型 | 可读 | 可写 | 说明 | 21| -------- | -------- | -------- | -------- | -------- | 22| highContrastText | [Config](#config)\<boolean>| 是 | 是 | 表示高对比度文字功能启用状态。 | 23| invertColor | [Config](#config)\<boolean>| 是 | 是 | 表示颜色反转功能启用状态。 | 24| daltonizationColorFilter | [Config](#config)<[DaltonizationColorFilter](#daltonizationcolorfilter)>| 是 | 是 | 表示颜色滤镜功能配置。 | 25| contentTimeout | [Config](#config)\<number>| 是 | 是 | 表示内容显示建议时长配置。取值 0~5000,单位为毫秒。 | 26| animationOff | [Config](#config)\<boolean>| 是 | 是 | 表示关闭动画功能启用状态。 | 27| brightnessDiscount | [Config](#config)\<number>| 是 | 是 | 表示亮度折扣系统配置。取值 0~1.0。 | 28| mouseKey | [Config](#config)\<boolean>| 是 | 是 | 表示鼠标键功能启用状态。 | 29| mouseAutoClick | [Config](#config)\<number>| 是 | 是 | 表示鼠标自动点击功能启用状态。取值 0~5000,单位为毫秒。 | 30| shortkey | [Config](#config)\<boolean>| 是 | 是 | 表示辅助扩展快捷键功能启用状态。 | 31| shortkeyTarget | [Config](#config)\<string>| 是 | 是 | 表示辅助扩展快捷键的目标配置。取值为辅助应用的名称,格式为:'bundleName/abilityName'。 | 32| captions | [Config](#config)\<boolean>| 是 | 是 | 表示辅助字幕功能启用状态。 | 33| captionsStyle | [Config](#config)\<[accessibility.CaptionsStyle](js-apis-accessibility.md#captionsstyle8)>| 是 | 是 | 表示辅助字幕的配置。 | 34 35## enableAbility 36 37enableAbility(name: string, capability: Array<accessibility.Capability>): Promise<void>; 38 39启用辅助扩展,使用Promise异步回调。 40 41**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 42 43**参数:** 44 45| 参数名 | 类型 | 必填 | 说明 | 46| -------- | -------- | -------- | -------- | 47| name | string | 是 | 辅助应用的名称,格式为:'bundleName/abilityName'。 | 48| capability | Array<[accessibility.Capability](js-apis-accessibility.md#capability)> | 是 | 辅助应用的能力属性。 | 49 50**返回值:** 51 52| 类型 | 说明 | 53| -------- | -------- | 54| Promise<void> | 无返回结果的Promise对象。 | 55 56**错误码:** 57 58以下错误码的详细介绍请参见[无障碍子系统错误码](../errorcodes/errorcode-accessibility.md)。 59 60| 错误码ID | 错误信息 | 61| ------- | -------------------------------- | 62| 9300001 | Invalid bundle name or ability name. | 63| 9300002 | Target ability already enabled. | 64 65**示例:** 66 67```ts 68import accessibility from '@ohos.accessibility'; 69let name = 'com.ohos.example/axExtension'; 70let capability : accessibility.Capability[] = ['retrieve']; 71try { 72 config.enableAbility(name, capability).then(() => { 73 console.info('enable ability succeed'); 74 }).catch((err) => { 75 console.error('failed to enable ability, because ' + JSON.stringify(err)); 76 }); 77} catch (exception) { 78 console.error('failed to enable ability, because ' + JSON.stringify(exception)); 79}; 80``` 81 82## enableAbility 83 84enableAbility(name: string, capability: Array<accessibility.Capability>, callback: AsyncCallback<void>): void; 85 86启用辅助扩展,使用callback异步回调。 87 88**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 89 90**参数:** 91 92| 参数名 | 类型 | 必填 | 说明 | 93| -------- | -------- | -------- | -------- | 94| name | string | 是 | 辅助应用的名称,格式为:'bundleName/abilityName'。 | 95| capability | Array<[accessibility.Capability](js-apis-accessibility.md#capability)> | 是 | 辅助应用的能力属性。 | 96| callback | AsyncCallback<void> | 是 | 回调函数。 | 97 98**错误码:** 99 100以下错误码的详细介绍请参见[无障碍子系统错误码](../errorcodes/errorcode-accessibility.md)。 101 102| 错误码ID | 错误信息 | 103| ------- | -------------------------------- | 104| 9300001 | Invalid bundle name or ability name. | 105| 9300002 | Target ability already enabled. | 106 107**示例:** 108 109```ts 110import accessibility from '@ohos.accessibility'; 111let name = 'com.ohos.example/axExtension'; 112let capability : accessibility.Capability[] = ['retrieve']; 113try { 114 config.enableAbility(name, capability, (err) => { 115 if (err) { 116 console.error('failed to enable ability, because ' + JSON.stringify(err)); 117 return; 118 } 119 console.info('enable ability succeed'); 120 }); 121} catch (exception) { 122 console.error('failed to enable ability, because ' + JSON.stringify(exception)); 123}; 124``` 125 126## disableAbility 127 128disableAbility(name: string): Promise<void>; 129 130关闭辅助扩展,使用Promise异步回调。 131 132**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 133 134**参数:** 135 136| 参数名 | 类型 | 必填 | 说明 | 137| -------- | -------- | -------- | -------- | 138| name | string | 是 | 辅助应用的名称,格式为:'bundleName/abilityName'。 | 139 140**返回值:** 141 142| 类型 | 说明 | 143| -------- | -------- | 144| Promise<void> | 无返回结果的Promise对象。 | 145 146**错误码:** 147 148以下错误码的详细介绍请参见[无障碍子系统错误码](../errorcodes/errorcode-accessibility.md)。 149 150| 错误码ID | 错误信息 | 151| ------- | -------------------------------- | 152| 9300001 | Invalid bundle name or ability name. | 153 154**示例:** 155 156```ts 157let name = 'com.ohos.example/axExtension'; 158try { 159 config.disableAbility(name).then(() => { 160 console.info('disable ability succeed'); 161 }).catch((err) => { 162 console.error('failed to disable ability, because ' + JSON.stringify(err)); 163 }); 164} catch (exception) { 165 console.error('failed to disable ability, because ' + JSON.stringify(exception)); 166}; 167``` 168 169## disableAbility 170 171disableAbility(name: string, callback: AsyncCallback<void>): void; 172 173关闭辅助扩展,使用callback异步回调。 174 175**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 176 177**参数:** 178 179| 参数名 | 类型 | 必填 | 说明 | 180| -------- | -------- | -------- | -------- | 181| name | string | 是 | 辅助应用的名称,格式为:'bundleName/abilityName'。 | 182| callback | AsyncCallback<void> | 是 | 回调函数。 | 183 184**错误码:** 185 186以下错误码的详细介绍请参见[无障碍子系统错误码](../errorcodes/errorcode-accessibility.md)。 187 188| 错误码ID | 错误信息 | 189| ------- | -------------------------------- | 190| 9300001 | Invalid bundle name or ability name. | 191 192**示例:** 193 194```ts 195let name = 'com.ohos.example/axExtension'; 196try { 197 config.disableAbility(name, (err, data) => { 198 if (err) { 199 console.error('failed to enable ability, because ' + JSON.stringify(err)); 200 return; 201 } 202 console.info('disable succeed'); 203 }); 204} catch (exception) { 205 console.error('failed to enable ability, because ' + JSON.stringify(exception)); 206}; 207``` 208 209## on('enabledAccessibilityExtensionListChange') 210 211on(type: 'enabledAccessibilityExtensionListChange', callback: Callback<void>): void; 212 213添加启用的辅助扩展的列表变化监听,使用callback异步回调。 214 215**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 216 217**参数:** 218 219| 参数名 | 类型 | 必填 | 说明 | 220| -------- | -------- | -------- | -------- | 221| type | string | 是 | 参数固定为enabledAccessibilityExtensionListChange,监听启用的辅助扩展的列表变化。 | 222| callback | Callback<void> | 是 | 回调函数,在启用的辅助扩展的列表变化时通过此函数进行通知。 | 223 224**示例:** 225 226```ts 227try { 228 config.on('enabledAccessibilityExtensionListChange', () => { 229 console.info('subscribe enabled accessibility extension list change state success'); 230 }); 231} catch (exception) { 232 console.error('failed to subscribe enabled accessibility extension list change state, because ' + 233 JSON.stringify(exception)); 234}; 235``` 236 237## off('enabledAccessibilityExtensionListChange') 238 239off(type: 'enabledAccessibilityExtensionListChange', callback?: Callback<void>): void; 240 241取消启用的辅助扩展的列表变化监听,使用callback异步回调。 242 243**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 244 245**参数:** 246 247| 参数名 | 类型 | 必填 | 说明 | 248| -------- | -------- | -------- | -------- | 249| type | string | 是 | 参数固定为enabledAccessibilityExtensionListChange,监听启用的辅助扩展的列表变化。 | 250| callback | Callback<void> | 否 | 要取消的监听回调函数。 | 251 252**示例:** 253 254```ts 255try { 256 config.off('enabledAccessibilityExtensionListChange', () => { 257 console.info('Unsubscribe enabled accessibility extension list change state success'); 258 }); 259} catch (exception) { 260 console.error('failed to Unsubscribe enabled accessibility extension list change state, because ' + 261 JSON.stringify(exception)); 262}; 263``` 264 265## Config 266 267用于属性的设置、获取与监听。 268 269### set 270 271set(value: T): Promise<void>; 272 273设置属性,使用Promise异步回调。 274 275**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 276 277**参数:** 278 279| 参数名 | 类型 | 必填 | 说明 | 280| -------- | -------- | -------- | -------- | 281| value | T | 是 | 设置的属性值。 | 282 283**返回值:** 284 285| 类型 | 说明 | 286| -------- | -------- | 287| Promise<void> | 无返回结果的Promise对象。 | 288 289**示例:** 290 291```ts 292let value = true; 293try { 294 config.highContrastText.set(value).then(() => { 295 console.info('set highContrastText succeed'); 296 }).catch((err) => { 297 console.error('failed to set highContrastText, because ' + JSON.stringify(err)); 298 }); 299} catch (exception) { 300 console.error('failed to set config, because ' + JSON.stringify(exception)); 301}; 302``` 303 304### set 305 306set(value: T, callback: AsyncCallback<void>): void; 307 308设置属性,使用callback异步回调。 309 310**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 311 312**参数:** 313 314| 参数名 | 类型 | 必填 | 说明 | 315| -------- | -------- | -------- | -------- | 316| value | T | 是 | 设置的属性值。 | 317| callback | AsyncCallback<void> | 是 | 回调函数。 | 318 319**示例:** 320 321```ts 322let value = true; 323try { 324 config.highContrastText.set(value, (err, data) => { 325 if (err) { 326 console.error('failed to set highContrastText, because ' + JSON.stringify(err)); 327 return; 328 } 329 console.info('set highContrastText succeed'); 330 }); 331} catch (exception) { 332 console.error('failed to set config, because ' + JSON.stringify(exception)); 333}; 334``` 335 336### get 337 338get(): Promise<T>; 339 340获取属性,使用Promise异步回调。 341 342**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 343 344**返回值:** 345 346| 类型 | 说明 | 347| -------- | -------- | 348| Promise<T> | Promise对象,返回对应属性值。 | 349 350**示例:** 351 352```ts 353let value; 354config.highContrastText.get().then((data) => { 355 value = data; 356 console.info('get highContrastText success'); 357}).catch((err) => { 358 console.error('failed to get highContrastText, because ' + JSON.stringify(err)); 359}); 360``` 361 362### get 363 364get(callback: AsyncCallback<T>): void; 365 366获取属性,使用callback异步回调。 367 368**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 369 370**参数:** 371 372| 参数名 | 类型 | 必填 | 说明 | 373| -------- | -------- | -------- | -------- | 374| callback | AsyncCallback<T> | 是 | 回调函数,返回属性值。 | 375 376**示例:** 377 378```ts 379let value; 380config.highContrastText.get((err, data) => { 381 if (err) { 382 console.error('failed to get highContrastText, because ' + JSON.stringify(err)); 383 return; 384 } 385 value = data; 386 console.info('get highContrastText success'); 387}); 388``` 389 390### on 391 392on(callback: Callback<T>): void; 393 394添加属性变化监听,使用callback异步回调。 395 396**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 397 398**参数:** 399 400| 参数名 | 类型 | 必填 | 说明 | 401| -------- | -------- | -------- | -------- | 402| callback | Callback<T> | 是 | 回调函数,在属性变化时通过此函数进行通知。 | 403 404**示例:** 405 406```ts 407try { 408 config.highContrastText.on((data) => { 409 console.info('subscribe highContrastText success, result: ' + JSON.stringify(data)); 410 }); 411} catch (exception) { 412 console.error('failed subscribe highContrastText, because ' + JSON.stringify(exception)); 413} 414``` 415 416### off 417 418off(callback?: Callback<T>): void; 419 420取消属性变化监听,使用callback异步回调。 421 422**系统能力**:SystemCapability.BarrierFree.Accessibility.Core 423 424**参数:** 425 426| 参数名 | 类型 | 必填 | 说明 | 427| -------- | -------- | -------- | -------- | 428| callback | Callback<T> | 否 | 要取消的监听回调函数。 | 429 430**示例:** 431 432```ts 433config.highContrastText.off((data) => { 434 console.info('Unsubscribe highContrastText success, result: ' + JSON.stringify(data)); 435}); 436``` 437 438## DaltonizationColorFilter 439 440用于不同弱视类型的校正颜色滤镜。 441 442**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core 443 444| 名称 | 说明 | 445| -------- | -------- | 446| Normal | 表示正常类型。 | 447| Protanomaly | 表示红色弱视类型。 | 448| Deuteranomaly | 表示绿色弱视类型。 | 449| Tritanomaly | 表示蓝色弱视类型。 | 450