• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.accessibility.config
2
3The System Accessibility Configuration module allows you to configure system accessibility features, including accessibility extension, high-contrast text, mouse buttons, and captions.
4
5> **NOTE**
6>
7> - The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.
8> - The APIs provided by this module are system APIs.
9
10## Modules to Import
11
12```ts
13import config from '@ohos.accessibility.config';
14```
15
16## Attributes
17
18**System capability**: SystemCapability.BarrierFree.Accessibility.Core
19
20| Name| Type| Readable| Writable| Description|
21| -------- | -------- | -------- | -------- | -------- |
22| highContrastText | [Config](#config)\<boolean>| Yes| Yes| Whether to enable high-contrast text.|
23| invertColor | [Config](#config)\<boolean>| Yes| Yes| Whether to enable color inversion.|
24| daltonizationColorFilter | [Config](#config)&lt;[DaltonizationColorFilter](#daltonizationcolorfilter)&gt;| Yes| Yes| Configuration of the daltonization filter.|
25| contentTimeout | [Config](#config)\<number>| Yes| Yes| Recommended duration for content display. The value ranges from 0 to 5000, in milliseconds.|
26| animationOff | [Config](#config)\<boolean>| Yes| Yes| Whether to disable animation.|
27| brightnessDiscount | [Config](#config)\<number>| Yes| Yes| Brightness discount. The value ranges from 0 to 1.0.|
28| mouseKey | [Config](#config)\<boolean>| Yes| Yes| Whether to enable the mouse button feature.|
29| mouseAutoClick | [Config](#config)\<number>| Yes| Yes| Interval for automatic mouse clicks. The value ranges from 0 to 5000, in milliseconds.|
30| shortkey | [Config](#config)\<boolean>| Yes| Yes| Whether to enable the accessibility extension shortcut key.|
31| shortkeyTarget | [Config](#config)\<string>| Yes| Yes| Target application for the accessibility extension shortcut key. The value format is 'bundleName/abilityName'.|
32| captions | [Config](#config)\<boolean>| Yes| Yes| Whether to enable captions.|
33| captionsStyle | [Config](#config)\<[accessibility.CaptionsStyle](js-apis-accessibility.md#captionsstyle8)>| Yes| Yes| Captions style.|
34
35## enableAbility
36
37enableAbility(name: string, capability: Array&lt;accessibility.Capability&gt;): Promise&lt;void&gt;;
38
39Enables an accessibility extension ability. This API uses a promise to return the result.
40
41**System capability**: SystemCapability.BarrierFree.Accessibility.Core
42
43**Parameters**
44
45| Name| Type| Mandatory| Description|
46| -------- | -------- | -------- | -------- |
47| name | string | Yes| Name of the accessibility extension ability. The format is 'bundleName/abilityName'.|
48| capability | Array&lt;[accessibility.Capability](js-apis-accessibility.md#capability)&gt; | Yes| Capability of the accessibility extension ability.|
49
50**Return value**
51
52| Type| Description|
53| -------- | -------- |
54| Promise&lt;void&gt; | Promise that returns no value.|
55
56**Error codes**
57
58For details about the error codes, see [Accessibility Error Codes](../errorcodes/errorcode-accessibility.md).
59
60| ID| Error Message|
61| ------- | -------------------------------- |
62| 9300001 | Invalid bundle name or ability name.  |
63| 9300002 | Target ability already enabled. |
64
65**Example**
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&lt;accessibility.Capability&gt;, callback: AsyncCallback&lt;void&gt;): void;
85
86Enables an accessibility extension ability. This API uses an asynchronous callback to return the result.
87
88**System capability**: SystemCapability.BarrierFree.Accessibility.Core
89
90**Parameters**
91
92| Name| Type| Mandatory| Description|
93| -------- | -------- | -------- | -------- |
94| name | string | Yes| Name of the accessibility extension ability. The format is 'bundleName/abilityName'.|
95| capability | Array&lt;[accessibility.Capability](js-apis-accessibility.md#capability)&gt; | Yes| Capability of the accessibility extension ability.|
96| callback | AsyncCallback&lt;void&gt; | Yes| Callback used to return the result.|
97
98**Error codes**
99
100For details about the error codes, see [Accessibility Error Codes](../errorcodes/errorcode-accessibility.md).
101
102| ID| Error Message|
103| ------- | -------------------------------- |
104| 9300001 | Invalid bundle name or ability name.  |
105| 9300002 | Target ability already enabled. |
106
107**Example**
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&lt;void&gt;;
129
130Disables an accessibility extension ability. This API uses a promise to return the result.
131
132**System capability**: SystemCapability.BarrierFree.Accessibility.Core
133
134**Parameters**
135
136| Name| Type| Mandatory| Description|
137| -------- | -------- | -------- | -------- |
138| name | string | Yes| Name of the accessibility extension ability. The format is 'bundleName/abilityName'.|
139
140**Return value**
141
142| Type| Description|
143| -------- | -------- |
144| Promise&lt;void&gt; | Promise that returns no value.|
145
146**Error codes**
147
148For details about the error codes, see [Accessibility Error Codes](../errorcodes/errorcode-accessibility.md).
149
150| ID| Error Message|
151| ------- | -------------------------------- |
152| 9300001 | Invalid bundle name or ability name.  |
153
154**Example**
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&lt;void&gt;): void;
172
173Disables an accessibility extension ability. This API uses an asynchronous callback to return the result.
174
175**System capability**: SystemCapability.BarrierFree.Accessibility.Core
176
177**Parameters**
178
179| Name| Type| Mandatory| Description|
180| -------- | -------- | -------- | -------- |
181| name | string | Yes| Name of the accessibility extension ability. The format is 'bundleName/abilityName'.|
182| callback | AsyncCallback&lt;void&gt; | Yes| Callback used to return the result.|
183
184**Error codes**
185
186For details about the error codes, see [Accessibility Error Codes](../errorcodes/errorcode-accessibility.md).
187
188| ID| Error Message|
189| ------- | -------------------------------- |
190| 9300001 | Invalid bundle name or ability name.  |
191
192**Example**
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&lt;void&gt;): void;
212
213Adds a listener for changes in the list of enabled accessibility extension abilities. This API uses an asynchronous callback to return the result.
214
215**System capability**: SystemCapability.BarrierFree.Accessibility.Core
216
217**Parameters**
218
219| Name| Type| Mandatory| Description|
220| -------- | -------- | -------- | -------- |
221| type | string | Yes| Listening type. The value is fixed at **'enabledAccessibilityExtensionListChange'**, indicating listening for changes in the list of enabled accessibility extension abilities.|
222| callback | Callback&lt;void&gt; | Yes| Callback invoked when the list of enabled accessibility extension abilities changes.|
223
224**Example**
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&lt;void&gt;): void;
240
241Cancels the listener for changes in the list of enabled accessibility extension abilities. This API uses an asynchronous callback to return the result.
242
243**System capability**: SystemCapability.BarrierFree.Accessibility.Core
244
245**Parameters**
246
247| Name| Type| Mandatory| Description|
248| -------- | -------- | -------- | -------- |
249| type |  string | Yes| Listening type. The value is fixed at **'enabledAccessibilityExtensionListChange'**, indicating listening for changes in the list of enabled accessibility extension abilities.|
250| callback | Callback&lt;void&gt; | No| Callback invoked when the list of enabled accessibility extension abilities changes.|
251
252**Example**
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
267Implements configuration, acquisition, and listening for attributes.
268
269### set
270
271set(value: T): Promise&lt;void&gt;;
272
273Sets the attribute value. This API uses a promise to return the result.
274
275**System capability**: SystemCapability.BarrierFree.Accessibility.Core
276
277**Parameters**
278
279| Name| Type| Mandatory| Description|
280| -------- | -------- | -------- | -------- |
281| value | T | Yes| Attribute value to set.|
282
283**Return value**
284
285| Type| Description|
286| -------- | -------- |
287| Promise&lt;void&gt; | Promise that returns no value.|
288
289**Example**
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&lt;void&gt;): void;
307
308Sets the attribute value. This API uses an asynchronous callback to return the result.
309
310**System capability**: SystemCapability.BarrierFree.Accessibility.Core
311
312**Parameters**
313
314| Name| Type| Mandatory| Description|
315| -------- | -------- | -------- | -------- |
316| value | T | Yes| Attribute value to set.|
317| callback | AsyncCallback&lt;void&gt; | Yes| Callback used to return the result.|
318
319**Example**
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&lt;T&gt;;
339
340Obtains the attribute value. This API uses a promise to return the result.
341
342**System capability**: SystemCapability.BarrierFree.Accessibility.Core
343
344**Return value**
345
346| Type| Description|
347| -------- | -------- |
348| Promise&lt;T&gt; | Promise used to return the value obtained.|
349
350**Example**
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&lt;T&gt;): void;
365
366Obtains the attribute value. This API uses an asynchronous callback to return the result.
367
368**System capability**: SystemCapability.BarrierFree.Accessibility.Core
369
370**Parameters**
371
372| Name| Type| Mandatory| Description|
373| -------- | -------- | -------- | -------- |
374| callback | AsyncCallback&lt;T&gt; | Yes| Callback used to return the attribute value.|
375
376**Example**
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&lt;T&gt;): void;
393
394Adds a listener for attribute changes. This API uses an asynchronous callback to return the result.
395
396**System capability**: SystemCapability.BarrierFree.Accessibility.Core
397
398**Parameters**
399
400| Name| Type| Mandatory| Description|
401| -------- | -------- | -------- | -------- |
402| callback | Callback&lt;T&gt; | Yes| Callback invoked when the attribute changes.|
403
404**Example**
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&lt;T&gt;): void;
419
420Cancels the listener for attribute changes. This API uses an asynchronous callback to return the result.
421
422**System capability**: SystemCapability.BarrierFree.Accessibility.Core
423
424**Parameters**
425
426| Name| Type| Mandatory| Description|
427| -------- | -------- | -------- | -------- |
428| callback | Callback&lt;T&gt; | No| Callback invoked when the list of enabled accessibility extension abilities changes.|
429
430**Example**
431
432```ts
433config.highContrastText.off((data) => {
434    console.info('Unsubscribe highContrastText success, result: ' + JSON.stringify(data));
435});
436```
437
438## DaltonizationColorFilter
439
440Enumerates the daltonization filters.
441
442**System capability**: SystemCapability.BarrierFree.Accessibility.Core
443
444| Name| Description|
445| -------- | -------- |
446| Normal | Filter for normal users.|
447| Protanomaly | Filter for protanomaly.|
448| Deuteranomaly | Filter for deuteranomaly.|
449| Tritanomaly  | Filter for tritanomaly.|
450