Accessibility in mobile applications refers to the design and implementation of features and services that make an application usable by everyone, regardless of their capabilities. It considers individuals with a different range of challenges, including but not limited to vision, hearing, mobility and cognitive impairments.
A study carried out in 2016 by the Rehabilitation Engineering Research Center for Wireless Technologies at Shepherd Center, interviewed a total of 7,500 people with a type of disability and revealed that:
- 84% of responders use a smartphone on a daily basis (91% when including the use of tablets)
- People with disabilities use their smartphone’s GPS 30% more than the rest of the population
- 70% use mobile apps (in addition to email, voice/video calling, internet browsing, SMS, social media and maps)
Given the increasing use of smartphones worldwide and the continuing improvements in accessibility, the percentage of people with disabilities using smartphones has increased since then. In today’s digital age, mobile apps play a vital role in our lives, so it’s important to make sure that we ensure accessibility for mobile apps. In this post, we will explain the different accessibility standards for mobile apps and introduce certain accessibility guidelines. Some of them will work right out of the box, but specific design and development actions will need to be taken to offer a completely seamless experience to all users.
Let’s go through the mobile app accessibility checklist:
People experience a wide range of visual impairments: some have full sight, partial sight or no sight at all, and there’s a lot in between colour blindness, light sensitivity and motion sensitivity. Vision accessibility features aim to assist users with visual impairments, and both iOS and Android provide assisting technologies for this:
- Voice Over / TalkBack: screen reader that enables people to experience an app’s interface without having to see the screen. With different touch gestures, users can navigate the screen and text, buttons and items will be announced; then actions will be suggested
- Text-to-Speech: allows users to have the app’s content read aloud
- Dynamic Types: support for dynamic font size allows users to customise the appearance of the app to suit their visual needs
Apart from these features, there are some other considerations that designers and developers need to have in order to provide an inclusive visual experience.
- Voice Over is a great tool, but we should group elements so that the information is read in the correct way. For example, VoiceOver reads English from left-to-right and it reads Arabic and Farsi from right-to-left, so the order and how items are grouped is important.
- Using colour is often a great way to create emphasis, but we don’t want to rely on colour alone. Colour blind people can get lost if they don’t have any other indicators, like shapes, text or icons.
- Users should be able to change the contrast settings to make elements stand out, so developers should provide alternate colours for high-contrast appearances. As a general rule, colours should get darker in light mode and lighter in dark mode.
- As we’ve said, users can customise the font size of our app, so we need to make sure our design will look fine not only for different screen sizes, but also for every content size.
- Check the user’s device settings to know if they want to disable or simplify motion animations, blurred backgrounds or dim flashing lights, as this can be disorienting for some people (yes, there are user settings for all these things and more).
Mobile apps can be made more inclusive for users with hearing impairments if we provide captions and descriptions for audio and video content. But there’s more that developers and designers can do in order to help users:
- Add flashing lights or visual cues to grab the attention of users in alerts or notifications.
- Use the vibration capabilities to provide haptic feedback for important events or notifications.
- Design visual representations or animations of sound. For example, a sound wave can help users understand the rhythm or intensity of audio input.
- Use speech synthesis to show live transcription of a video call or stream video.
Some other features will be available already depending on the mobile device used, such as hearing aid compatibility that lets the users pair hearing aids with the device, mono audio for people with hearing loss in one ear, and real-time text during calls that works with TTY.
Users with limited mobility may face challenges when interacting with mobile apps. Here are some features to improve access:
- Voice Control: integrated voice control allows users to use voice commands, communicate and use app functions.
- Switch Control: using switch control users can use external switches or adaptive devices to navigate through elements.
- Haptics: tactile feedback can give users confirmation or information through vibration, assisting those with limited dexterity or touch sensitivity.
App developers need to have these considerations in mind, so people can use the above mentioned features:
- We should group elements in screen, so that it doesn’t take too long to reach each section of the app. At the same time, if an accidental tap is made, it should be easy to seamlessly navigate back without having to go back too many steps.
- Custom actions can be created to choose between different actions for the same item selection. This way, users can fully use the app with the tap gesture alone.
- Always use confirmation on destructive behaviours or important actions such as payments.
- Avoiding timeouts across the app, at least when Switch Control is running, where users might enter information more slowly.
People may have different ways of learning or communicating, and developers can help users with autism or other attention and sensory challenges stay focused on the task at hand:
- Use clear and simple language: Using plain language and concise instructions allows users with cognitive challenges to understand and interact with the app more easily.
- Guided Access / Restricted Mode: We can tailor the experience of an app during Guided Access by restricting or adjusting parts of the app where someone with a cognitive disability might feel lost or overwhelmed with options.
- Single App Mode / Kiosk Mode: This allows the device to be locked to a single app, which can prevent people from swiping to go home, modifying things in Settings, or even looking something up in the browser. Availability of this mode can be accessed through the Accessibility APIs.
Final Thoughts on Mobile App Accessibility
So, does your app implement accessibility features? If not, try to consider the importance of reaching out to every potential user of your app. Think about our duty as mobile app developers to provide the best experience for everyone, and start designing with accessibility in mind from the start. This will not only create a very loyal and grateful user base for your app, but also allow you to minimise the cost of adding these features in your app.
Pablo Gómez is a senior mobile software developer, with around 10 years of experience in the field. He is specialized in iOS and Android native development, as well as Flutter, and has a passion for software architecture.
Also written by Pablo: Green Software Engineering Principles | Mobile Development Best Practices