Android accessibility settings include tools to enhance usability and improve navigation for users with disabilities. By tuning the accessibility settings, users with visual impairments, hearing difficulties, motor skill limitations, or cognitive disabilities can navigate and use their Android devices more efficiently. ADB is a versatile command-line tool that allows a Windows, macOS, or Linux computer to interact with Android devices. With the help of ADB commands, we can control the accessibility settings on Android devices using ADB.

Android’s Accessibility settings support a host of features that include:

  • Vision enhancements: High contrast themes and fonts, highlights buttons, color inversion, color correction, color filter, extra dim screen brightness, screen magnification, pointer and size color, etc.
  • TalkBack: A screen reader that provides spoken feedback while navigating the device interface to help visually impaired users interact with their devices easily.
  • Hearing enhancements: Live transcription, live caption, sound notifications, hearing aid support, mono audio, left/right sound balance, etc.
  • Interaction and dexterity: Assistant menu, touch and hold delay, universal switch, answering and ending calls, flash notifications, hardware key shortcut customization, etc.

On top of the features listed above, Google even offers an Android Accessibility Suite that supports AI-generated descriptions of images braille display and keyboard, voice commands, etc.

Let’s see how we can control and change the accessibility settings on Android using ADB. You can use one of the following methods use commands on your device.

Table of Content

Customizing Accessibility Settings via ADB

You can customize and fine-tune the accessibility features on your Android device programmatically via ADB. By executing commands, you can enable or disable accessibility options, adjust font size, display density, color inversion, etc. To view the available accessibility settings controlled by ADB, use the following command:

adb shell settings list secure | grep -i accessibility

This will display a list of all accessible-related settings on your device.adb command to list accessibility settings

To change a specific setting, use the following command followed by the accessibility setting. Also, change the value next to ‘enabled=‘ with “1” for enabling or “0” for disabling. Remember that some changes may require a reboot for them to take effect.

adb shell settings put secure

Enabling and Disabling TalkBack

Use the following command to turn off TalkBack on an Android phone or tablet via ADB.

adb shell settings put secure enabled_accessibility_services com.android.talkback/com.google.android.marvin.talkback.TalkBackService

ADB command to turn off Talkback

Similarly, you can use another ADB command to enable TalkBack on Android.

adb shell settings put secure enabled_accessibility_services com.google.android.marvin.talkback/com.google.android.marvin.talkback.TalkBackService

Change Font Size on Android

It’s easy to scale the font size on Android devices via Display > Font size and style settings. However, you can only choose from presets. To get a custom font size, you can use ADB commands. Below are the values for small, default, large, largest, and custom font sizes:

  • Small: font_scale 0.85
  • Default: font_scale 1.0
  • Large: font_scale 1.15
  • Largest: font_scale 1.30
  • Custom: scale 1.75, scale 2.0, etc.

Execute this command with your custom font scaling value to change font size.

adb shell settings put system font_scale 1.30
How to Install Apps from Unknown Publishers on Windows 10/11

Adjust Display Size via ADB Commands

ADB also lets you enlarge or reduce the size of elements on your Android phone or tablet’s screen via the wm density parameter. This is useful for people with limited vision who may need larger icons and text. Depending on your requirements, you can use the following scaling values multiplied with the default display density of your device to adjust display size:

  • Small scale: display density value x 0.85
  • Default scale: display density value x 1.0
  • Large scale: display density value x 1.1
  • Larger scale: display density value x 1.2
  • Largest scale: display density value x  1.3

To scale the display size, use the following command to get the default or current display density first.

adb shell wm density

adjust android device display density via adb

As you can see, the default display density of my Samsung Galaxy S24 Ultra is ‘450’. If I have to scale the display size to a large or larger size, I’ll multiply ‘450’ with ‘1.1’ or ‘1.2’ to get the target value. Thus for a large display size, I’ll have to use ‘495’ (450 x 1.1), and ‘540’ (450 x 1.2) for a larger size. Thus, my command will be as shown below:

adb shell wm density 495

In case you need to reset the display size to its default, use the following command:

adb shell wm density reset

Commands to Change Color Modes

Accessibility settings also offer control over Color Inversion and Color Correction features that help people with certain types of color blindness differentiate between colors more easily. Android supports multiple color correction or color blindness simulation options.

color correction modes android accessibility

You can switch between the following color correction modes using the color code values:

  • Monochromatic: 0
  • Deuteranomaly (red-green): 11
  • Protanomaly (red-green): 12
  • Tritanomaly (blue-yellow): 13

To enable the color blindness simulator (Daltonizer), execute this command:

adb shell settings put secure accessibility_display_daltonizer_enabled 1

The following command will disable the display Daltonizer and return to normal color mode.

adb shell settings put secure accessibility_display_daltonizer_enabled 0

Use the following commands to change to a specific color correction option:

  • Monochromatic:
    adb shell settings put secure accessibility_display_daltonizer 0
  • Protanomaly:
    adb shell settings put secure accessibility_display_daltonizer 11
  • Deuteranomaly:
    adb shell settings put secure accessibility_display_daltonizer 12
  •  Tritanomaly:
    adb shell settings put secure accessibility_display_daltonizer 13

color blindness simulation via adb command

Turning on Color Inversion via ADB

We can enable color inversion on Android devices from Accessibility settings as well as via ADB.

color inversion android accessibility settings

The following command can enable or disable color inversion on your device.

adb shell settings put secure accessibility_display_inversion_enabled 1
adb shell settings put secure accessibility_display_inversion_enabled 0

Enabling High Contrast Text via ADB

High-contrast text is an accessibility feature that enhances readability and visual impact for the visually impaired. You can enable or disable it on your Android device using the following command:

adb shell settings put secure high_text_contrast_enabled 1
adb shell settings put secure high_text_contrast_enabled o

Command to Enable Display Magnification

Android also supports display magnification for the visually impaired as an accessibility feature. Once enabled, you can activate the screen magnifier by tapping it 3 times in a row. You can move the magnifier’s frame and zoom in or out with your fingers.

display magnification accessibility feature

To enable display magnification, you must set the magnification scale first. Here is the command:

adb shell settings put secure accessibility_display_magnification_scale 5.0

Then enable it using the following ADB command:

adb shell settings put secure accessibility_display_magnification_enabled 1

If you want to disable display magnification, use this command:

adb shell settings put secure accessibility_display_magnification_enabled 0

By tuning accessibility settings via ADB commands, you can personalize an Android device according to your needs.

Was this Article helpful?
YesNo