Amazon Developer

as

Settings
Sign out
Notifications
Alexa
Amazon Appstore
Ring
AWS
Documentation
Support
Contact Us
My Cases
Get Started
Design and Develop
Publish
Reference
Support

AccessibilityInfo

AccessibilityInfo

Sometimes it's useful to know whether or not the device has a screen reader that is currently active. The AccessibilityInfo API is designed for this purpose. You can use it to query the current state of the screen reader as well as to register to be notified when the state of the screen reader changes.

Vega Support

In order to properly use this module, the target Vega applications needs to include com.amazon.devconf.privilege.accessibility privilege in the manifest.toml file.

Implemented Methods

addEventListener

Use the AccessibilityInfo.addEventListener to listen for accessibility events, such as when a screen reader is turned on or off. This helps developers make their apps more accessible by responding dynamically to user settings.

Supported events
Event Description
screenReaderChanged Fires when the state of the screen reader changes. The argument to the event handler is a boolean. The boolean is true when a screen reader is enabled and false otherwise.
highTextContrastChanged Fires when the state of the high text contrast setting changes. The argument to the event handler is a boolean. The boolean is true when high text contrast is enabled and false otherwise.
Sample usage reference

Copied to clipboard.


//Method signature
static addEventListener(
  eventName: AccessibilityChangeEventName | AccessibilityAnnouncementEventName,
  handler: (
    event: AccessibilityChangeEvent | AccessibilityAnnouncementFinishedEvent,
  ) => void,
): EmitterSubscription;

// Usage 

//here enabled is a state variable
const subscription = AccessibilityInfo.addEventListener(
  'screenReaderChanged',
  (enabled) => {
    setIsScreenReaderEnabled(enabled);
  }
);

announceForAccessibility

Trigger an accessibility announcement for screen reader. It programmatically announces the specified message to notify users of important changes in the app’s UI, such as status updates or alerts. The announcement does not associate with a specific UI element and is best for general notifications.

Sample usage reference


AccessibilityInfo.announceForAccessibility('Your changes have been saved.');

announceForAccessibilityWithOptions

It extends the functionality of announceForAccessibility by allowing developers to customize the behavior of announcements like waiting for existing announcements to complete before announcing a new message.

Sample usage reference

AccessibilityInfo.announceForAccessibilityWithOptions( 'Form submitted successfully.', { queue: false } /* Interrupt ongoing announcements*/ );

Accepted values
Name Type Description
announcement string The string to be announced
options object queue - queue the announcement behind existing speech

Post a string to be announced by the screen reader with modification options. By default, announcements interrupt any existing speech. However, on Vega, they can be queued behind existing speech by setting queue to true in the options object.

isScreenReaderEnabled

Query whether a screen reader is currently enabled. Returns a promise which resolves to a boolean. The result is true when a screen reader is enabled and false otherwise.

Sample usage reference

static isScreenReaderEnabled(): Promise<boolean>;

isHighTextContrastEnabled Android Vega

Query whether high text contrast is currently enabled. Returns a promise which resolves to a boolean. The result is true when high text contrast is enabled and false otherwise.

Sample usage reference

static isHighTextContrastEnabled(): Promise<boolean>


Last updated: May 13, 2026