Switch access. What is it? Simply put, switch access is a way for people with limited mobility to interact with various communication and mobility devices. Switch access existed long before the advent of touchscreens. For example, Stephen Hawking used various switches to communicate long before mobile enabled switch control options were as seamless as they are today.
These days, not only can users map buttons on external USB or Bluetooth devices, but switch access features are enabled natively on mobile devices. This allows users to use their phones to interact with digital content. They can map buttons on their phone, tap anywhere on the screen, or even perform head movements that are picked up by the built-in camera to switches that allow them to select items, enter text, and use their mobile device.
An important word of warning: before you start to play around with switch access on your device, please turn off any security measures you may have on your lock screen. There are some types of locks that require the user to trace a particular pattern on their lock screen in order to access their device, and something like this will be extremely difficult to replicate using a switch. At a workshop that I was assisting with not long ago, we wrapped up a mobile accessibility session with an invitation for the participants to try out switch access on their own devices. One participant had the type of security measure on her phone that I just described, and… well, let’s just say that it took multiple people more than an hour to figure out how to unlock the phone without doing a factory reset on it. And it was more dumb luck than anything else that got us out of that situation.
Disabled your lock screen? Great! Let’s get started.
Switch Access on iOS
If you are a Mac user, you may already be familiar with switch access, since this feature has been built into the OS for quite some time.
On your iPhone, you can find switch access here: Settings > General > Accessibility > Switch Control.
iOS gives you a lot of flexibility in the switches you can map. In addition to mapping to external switches, it allows you to map to screen taps (from anywhere on the screen) as well as right and left head movements which are detected by the front-facing camera.
For the sake of simplicity here, we will use the full screen switch.
- In Switch Control, tap on Switches.
- “Full Screen” should be set up by default (this allows you ought to select an item by tapping anywhere on the screen. If you don’t see this, then you can tap on “Add New Switch” to set it up.
- Under “Source” select Screen
- Select “Full Screen”
- Under actions, select “Select”
- Once you have your switch selected, you may want to adjust some of the other switch settings. I recommend “Auto scanning” as the scanning style, and an Auto Scanning Time of about 3 seconds, at least to start until you get used to it.
When switch access is running, you will see a broad blue bar scan back and forth across the device screen. When the bar passes over whatever it is you would like to interact with, tap anywhere on the screen to activate the switch. This will freeze the bar, and a thin line will start to scan back and forth within the boundaries of the blue bar, to help pinpoint the target on the Y axis. Tap on the screen again.
Once you have the target set on that axis, you need to set it on the X axis as well, so you will repeat the process starting with the broad blue bar, only this time scanning up and down the screen.
Once you have successfully placed the crosshairs on whatever it is you want to interact with, a menu will pop up showing you the different actions that you can take. The menu is contextual, so the options you see depend entirely on what you have selected with the crosshairs.
Switch access scans the contextual menu first by row. When you see the row that contains what you want, tap the screen. Switch access will then start to scan through the items in the row one at a time, so that you can complete your selection.
Switch Access on Android
Switch access has only been included in the Android OS for a couple of years, but it’s similar to switch access on the iPhone, though somewhat less robust.
On your Android, you can find switch access here: Settings > Accessibility > Switch Access.
Before you turn on switch access, you will want to assign some switches and maybe also tweak some of the other switch access settings.
- In the Switch Access settings, select “Assign switches for scanning”.
- Tap “Select”, and then press the key you want to map to the “Select” function. I chose the volume up key.
- I then repeated this and chose the volume down button for the “Next” action. This will allow you to navigate through your Android phone using the volume up and down buttons only.
Unlike iOS, unless you are using an external switch, Android only allows you to map switches to physical buttons on the phone, like the volume buttons. There is currently no support for mapping to taps on the screen or to head movements.
Start out with Point Scan on. This scanning method uses moving lines to pinpoint a specific location, and is similar to auto scanning on iOS. However, on Android, there is only a single moving line in each direction; you are not given an opportunity to fine tune your target.
The menu button at the top of the screen gives you some additional options for switch access, but is not contextual.
If you decide to exit point scanning, switch access will scan through the screen, one element at a time.
How can I tell if my product is accessible with a switch?
Good question! Before you test with switch access, start with best practices. If all views and interactions are clickable/tappable and can be reached by a keyboard, then odds are good that they can be accessed by a switch as well.
However, if you create anything that requires a swipe gesture (such as navigating a carousel or turning the page in a book app) it won’t work well when switch access is enabled. You will need to make sure that all views that require swipe gestures can also be properly navigated to without using those gestures. To solve for this, you could add focusable fields onto these views which have click listeners attached.
If you are looking at a responsive site, you can get pretty far by using Chrome dev tools to emulate a mobile device and then use your keyboard to interact with it. But after a certain point, and especially if you are testing a native app, you will want to enable switch access on your device and test it out to ensure that your app is accessible for users with limited dexterity.
Of course, this is just the tip of the iceberg with switches. If you recall, there were a lot of other options and settings available for switch access for both iOS and Android devices. I encourage you to experiment and try them all out.
This is the third of a series of articles taking you through mobile accessibility basics for Android and iPhone. We have already introduced TalkBack and VoiceOver, and we discussed the ins-and-outs of color, contrast, and magnification. Next, we’ll wind up the series with a game plan for conducting an accessibility assessment on your mobile device.