Voice Access on Android
This guide is for developers, product managers, and auditors who don't work with assistive technology (AT) day to day. It walks you through Voice Access, the voice input app for Android phones and tablets, so you can confirm accessibility issues in your own apps.
Note: The screenshots in this guide were taken with Voice Access 17.1. On other Voice Access versions and devices, some screens may look different, and some settings may be in different locations.
Why this guide matters
People who can't use touch, or for whom touch is tiring or painful, can operate their whole device by speaking. Voice Access lets them tap, scroll, and type with spoken commands, and they refer to on-screen elements by their names. Many accessibility issues, such as an icon button with no accessible name, can only be confirmed by trying to use the app this way. Ten minutes with Voice Access is often enough to confirm or rule out an issue that automated testing flagged.
Voice Access in a nutshell
Voice Access listens for commands and acts on the element you name. It finds elements through the accessibility tree: the elements your app exposes and their accessible names, such as the contentDescription or the text of a view. When you say “Tap Send,” Voice Access looks for an element that matches “Send.”
When you don't know what to call an element, Voice Access can label the screen for you:
| Layer | What it shows | Sample commands |
|---|---|---|
| Labels | Names that Voice Access suggests for icons, based on their appearance | “Show labels”, then “Tap [label]” |
| Numbers | A number next to each element you can interact with | “Show numbers”, then say the number, or “Tap [number]” |
| Grid | A numbered grid over the whole screen, for areas that have no element | “Show grid”, then “Tap [number]” |
Note: Voice Access can also tap any text it sees on the screen, even when that text isn't an element's accessible name. A command that works is therefore not proof that the element has a correct accessible name. To check names, turn off Recognize common icons, and use the steps in Your first walkthrough.
Before you start: staying in control
The first time Voice Access is on, it may react to things you say in conversation. That's normal. Know how to pause it before you turn it on:
- Pause listening – Say “Stop listening” to pause Voice Access, for example when you talk to someone. To resume, tap the Voice Access shortcut button, or tap Touch to start on the Voice Access notification.
- Use the shortcut – When you turn on Voice Access, a floating Voice Access button appears on the screen. Tap it to start or stop listening. You can still use touch while Voice Access is on.
- See what you can say – Say “What can I say?” to see the commands available on the current screen.
Note: While Voice Access is listening, a feedback bar at the top of the screen shows what it heard you say and how it responded. Use it to tell whether a failed command was a recognition problem or an app problem.
Setup and first-run checklist
-
Install Voice Access – Download Voice Access from Google Play, if it isn't already on the device. Voice Access supports a limited set of languages, such as English, French, German, Italian, and Spanish. The Voice Access screen in the settings lists the languages available on your device.
-
Turn on Voice Access – Go to Settings › Accessibility › Voice Access, and turn on Voice Access shortcut. This turns on Voice Access and adds the floating Voice Access button. On older versions of Voice Access, turn on Use Voice Access instead.
-
Run the tutorial – The first time you turn on Voice Access, an interactive tutorial opens. To run it again, say “Open tutorial.” We recommend it for every first-time user.
-
Review the settings – Go to Settings › Accessibility › Voice Access › Settings to see the commands list, the tutorial, and the options described in Settings worth changing.
Core concepts
Speaking to elements by name
The most common command is “Tap” followed by the name of an element, for example “Tap Settings.” Unless Require verbs is turned on, you can also just say the name. If several elements match what you said, Voice Access shows numbers on them, and you need to say the number of the element you want. This extra step is a sign that the elements may need unique names.
Show labels
Say “Show labels” to display suggested names next to elements. When Recognize common icons is on, Voice Access suggests these names from the icons' appearance, not from the names your app exposes. In the example below, it labels the weather icons “Weather 1” to “Weather 14,” and other icons “Clock” and “Calendar.” When Recognize common icons is off, “Show labels” shows numbers instead, just like “Show numbers.” Because these suggestions can hide a missing accessible name, don't rely on them when testing. Labels hide automatically when the screen changes, or when you say “Hide labels.”
Show numbers
Say “Show numbers” to display a number next to each element you can interact with. Then say a number, or a command followed by a number, such as “Tap 7” or “Long press 7.” If you're not sure which element a number belongs to, say “What is 7?” Numbers stay visible until you say “Hide numbers.”
Show grid
Say “Show grid” to place a numbered grid over the screen. Say a command followed by a grid number, such as “Tap 5,” to act on that area. Users fall back on the grid when an element doesn't get a number at all, which can be a sign that it isn't exposed to assistive technologies, or isn't recognized as interactive. Say “Hide grid” to remove it.
Typing text
To type into a text field, say “Type” followed by the text, for example “Type running 5 minutes late.” When a field is already being edited, you can just say the text. Say “Stop editing” so your next command isn't typed into the field.
Your first walkthrough
How to read the table
The command column shows what to say. The exact behavior and the on-screen feedback may vary by device, Voice Access version, and the settings you choose.
Basic app test
| Step | Command | What to check |
|---|---|---|
| Open the app you want to test | Tap its icon, or say “Open [app name]” | The app's first screen is displayed |
| Start Voice Access | Tap the Voice Access button | The feedback bar shows that Voice Access is listening |
| Turn off icon suggestions | In the Voice Access settings, turn off Recognize common icons | Voice Access only uses the names your app exposes |
| Find the interactive elements | “Show numbers” | Every element you can interact with shows a number |
| Activate a control by its visible label | “Tap [visible label]” | The control performs its action |
| Activate an icon-only button by its purpose | “Tap” followed by what the icon does, such as “Tap Search” | The button performs its action. If Voice Access can't find it, and it can only be reached by its number, it has no usable accessible name |
| Fill in a text field | “Tap [field name]”, then “Type [text]” | The field is selected, and the text is typed into it |
| Scroll the screen | “Scroll down” / “Scroll up” | The content scrolls |
| Stop Voice Access | “Stop listening” | The feedback bar shows that Voice Access stopped listening |
Settings worth changing
Voice Access's settings are in Settings › Accessibility › Voice Access › Settings. These matter most for testing:
| Setting | Why it matters | What to change |
|---|---|---|
| Setup › Recognize common icons | When on, Voice Access names common icons by their appearance, such as “Back” or “Calendar,” even if they have no accessible name | Turn it off while testing, so Voice Access only uses the names your app exposes |
| More options › Show borders | Draws a border around everything you can interact with | Turn it on to see which elements Voice Access recognizes as interactive |
| Require verbs | When on, you must start commands with a verb, such as “Tap” | Turn it on if Voice Access reacts to words you didn't mean as commands |
Cheat sheet
Everyday commands
| Task | Command |
|---|---|
| Start or stop listening | Tap the Voice Access button |
| Pause listening | “Stop listening” |
| See available commands | “What can I say?” |
| See all commands | “Show all commands” |
| Activate an element | “Tap [name]” |
| Long-press an element | “Long press [name or number]” |
| Show or hide element labels | “Show labels” / “Hide labels” |
| Show or hide element numbers | “Show numbers” / “Hide numbers” |
| Identify a number | “What is [number]?” |
| Show or hide the grid | “Show grid” / “Hide grid” |
| Scroll | “Scroll down” / “Scroll up” |
| Go back | “Go back” |
| Go to the Home screen | “Go home” |
| Open an app | “Open [app name]” |
| Type text | “Type [text]” |
| Stop typing what you say | “Stop editing” |
| Repeat the last action | “Again” |
App testing checklist
| Scenario | Expected outcome |
|---|---|
| Tap by name | Saying “Tap” followed by an element's name activates it |
| Duplicate names | Elements that do different things have different names, so Voice Access doesn't need to number them |
| Icon-only buttons | With Recognize common icons turned off, each one can be activated by saying what it does |
| Text fields | Saying a field's name selects it, and typed text is entered into it |
Troubleshooting and team tips
- An icon button can only be activated by its number? It may have no accessible name. Check its
contentDescription. - A command works, but you're not sure the name is right? Voice Access can tap visible text, and with Recognize common icons on, it names icons by their appearance. Turn icon recognition off, and check the element's
contentDescriptionin the code or with Accessibility Scanner. - An element doesn't get a number at all? It may be hidden from accessibility, or it may not be recognized as interactive, for example when it has no click action.
- Voice Access types what you say instead of acting on it? A text field is being edited. Say “Stop editing,” then repeat the command.
- Commands aren't recognized? Speak at a steady pace, check the device language, and look at the feedback bar to see what Voice Access heard.
Learn More
- Get started with Voice Access spoken commands, Android Accessibility Help
- Use Voice Access commands, Android Accessibility Help
- Change Voice Access settings, Android Accessibility Help