Accessibility in Jetpack Compose

Developing with accessibility in mind means making your apps usable for everyone, including people with accessibility needs, who may use Android devices in many different ways. Compose provides a foundation for building more accessible UIs with its declarative APIs and tools that help make your apps more inclusive.

There are several key and supporting concepts in Compose accessibility:

  • API defaults: Learn how Compose handles accessibility by default and how to leverage semantics and patterns to support accessibility from the start, and use them for custom components.
  • Semantics: Understand the system of representing the meaning and role of UI elements for accessibility services, and how to choose appropriate semantics to represent properties like content types, descriptions, and states.
  • Modify traversal order: Modify the order in which accessibility services navigate through elements on screen, which can be customized for better user experience.
  • Merging and clearing: Understand semantic merging and clearing strategies and APIs, and when it is appropriate to hide semantics from accessibility services.
  • Inspect and debug: Inspect your composables' accessibility semantics with tools and debug unexpected behaviors when using Android's assistive technologies.
  • Testing: Detect common accessibility issues and automate some aspects of testing with Compose accessibility checks.

Additional resources