According to a 2011 report by the World Health Organization (WHO) and the World Bank, approximately 15% of the global population–that is, about one in six people–experience a significant or temporary disability in their lifetime. Accessibility in design, then, is fundamental to creating an inclusive, usable, and high-quality app–it leads to the best results for users and can prevent costly rework. Android ships with a variety of features to help you build your app to support accessibility options by default.
Design for vision
Ensure your app's content is as legible as possible by checking color contrast and text sizing, and that components are visually comprehensible and easy to discern from each other.
Follow these guidelines to design for vision accessibility.
- To allow users to adjust the font size, specify font size in scalable pixels (sp)
- Don't make the body size any smaller than 12 sp. This guideline aligns with the Material typescale as a default.
- Ensure the contrast between the background and text is at least 4.5:1. Learn how to check color contrast.
- Use a 3:1 ratio between surfaces and non-text elements. For example, the ratio of a background to an icon would be 3:1.
- Use more than one visual affordance for actions like links.
Use Material's Accessible color system . This color system is based on tonal palettes, and is central to making color schemes accessible by default.
Design for sound
TalkBack is a Google screen reader included on Android devices that gives users eyes-free control. You can manually test this by exploring your app with TalkBack or with the A11y scanner.
Follow these guidelines to ensure your app is prepared for screen readers:
- Describe UI elements in your code. Compose uses Semantics properties to inform accessibility services about the information shown in UI elements.
- To satisfy Android framework requirements, provide additional textual description of icons and images.
- Set decorative item descriptions to null.
- To allow skipping between blocks of actions and content, consider UI granularity and group UI elements..
Check out Material's Design to Implementation Walk, which walks you through accessibility considerations and notation using Web Content Accessibility Guidelines (WCAG).
Design for audio
Android provides features to enable users to interact with their devices through a variety of voice commands and queries.
The Voice Access app for Android lets you control your device with spoken commands. Use your voice to open apps, navigate, and edit text hands-free.
Design for motor skill
Switch Access lets users interact with your Android device using one or more devices, which can be helpful for users with limited dexterity who have trouble interacting directly with a touch screen.
Manually test by exploring switch access.
- Don't rely on gestures to complete all actions; create accessibility actions to support all user flows in your app.
- Ensure all touch targets are at least 48 dp, even if this extends past the UI element visual.
- Consider haptic feedback to help inform the user with additional, real-time sensory input.