TalkBack handles `view.requestFocus()` inconsistently across devices

Viewed 138

We’ve learned that TalkBack handles view.requestFocus() inconsistently across devices. What we found:

Accessibility announcements set with

 view.announceForAccessibility(“Please enter a valid email address”)
 view.requestFocus()

are not announced all devices.

When requestFocus() is called:

For four devices, TalkBack announces the view that requested focus, then announces "Please enter a valid email address”, which is how we expect it to work.

But, two devices announce the view that requested focus, and ignore "Please enter a valid email address". I tried every approach to force TalkBack to announce "Please enter a valid email address" on the two devices that don’t work properly, but nothing works. I firmly believe this is a bug in either the Android Framework or, more likely, with TalkBack because the same situation shouldn't be announced differently on different devices.

I tested this issue on six devices, including:

  • OS-wise:
    • Four run Android 8.0.0 = Two work, and two don’t
    • Two run Android 8.1.0 = Both work
  • Brand-wise:
    • Two LG = Both work
    • One Google Pixel = Works
    • One Samsung = Doesn’t work
    • One Motorola = Doesn’t work
    • One Nexus = Works
  • Two were emulators (both work), and the remainder were physical devices (two of five work).
0 Answers
Related