技术

TalkBack

Google 内置的 Android 屏幕阅读器,是 NVDA 与 VoiceOver 的移动端对应产品,默认与 Chrome 配对使用。

TalkBack 是 Google 内置的 Android 屏幕阅读器,是 VoiceOver on iOS 的移动端对应产品。它随原生 Android(Pixel 设备)一同出厂,并以不同程度的定制形式内置于大多数安卓厂商的定制系统中。在 Android 平台上开展有实际意义的无障碍测试,TalkBack 是唯一参考标准。

TalkBack 的工作原理

TalkBack 将 Android 无障碍树的内容转化为语音反馈。与 iOS 上的 VoiceOver 类似,它在触摸屏上以手势驱动,提供多种”探索并激活”模式:

  • 单指向右/向左滑动——跳转至下一个/上一个元素。
  • 单指双击——激活已聚焦的元素。
  • 单指拖动——触摸探索(语音焦点跟随手指移动)。
  • 双指滚动——在可滚动区域内滚动。
  • 三指滑动——页面导航及阅读控制手势。
  • 阅读控制菜单(先向上滑再向右滑)——切换导航模式(按标题、按链接、按表单控件)。

这些手势与 VoiceOver on iOS 相似但不完全相同——这一真实差异有时会给假设两者可互换的开发者带来意外问题。

TalkBack 与 Chrome 的主流搭配

几乎所有 Android 移动端网页用户都通过 Chrome 访问页面。因此,TalkBack + Chrome 是 Android 移动端网页无障碍测试的首要组合。Chrome 的无障碍引擎自 2020 年以来已大幅成熟;TalkBack + Chrome 对现代 ARIA 的支持水平与 VoiceOver + Safari 大体相当,但在边缘情况的行为上存在可重现的差异。

Android 碎片化的影响

与 iOS 不同——iOS 上只有一套 VoiceOver 行为需要测试——Android 碎片化对 TalkBack 的实际表现有切实影响:

  • Pixel(Google 原生 Android)——TalkBack 的参考实现,随 Android 版本同步更新。
  • Samsung One UI——三星搭载 TalkBack,但在其上叠加了自有无障碍功能,行为相似但不完全一致。
  • 小米 MIUI、OPPO ColorOS、华为 EMUI——对 TalkBack 的修改程度各异;非默认字体大小和手势映射在这些系统上出现的频率更高。

QA 最佳实践:优先在 Pixel 参考设备上测试。将厂商特有的问题视为需要单独分类处理的附加问题,而非 TalkBack 本身的缺陷。

TalkBack QA 的实际流程

一套合理的基线测试方案:

  1. 通过”设置 → 无障碍 → TalkBack”启用 TalkBack(若已配置,也可使用音量键快捷方式)。
  2. 在 Chrome 中打开目标页面。
  3. 持续向右滑动,逐一浏览整个页面,重点听取:
    • 每个可交互元素的角色和状态播报。
    • 在标题导航模式下标题结构的播报。
    • 进入地标区域时的播报。
  4. 使用阅读控制菜单切换至标题模式,并以此方式浏览页面。缺少 <h1> 或标题结构混乱的页面会立即显现。
  5. 触发每个动态更新(模态框打开、Toast 通知、实时区域更新),验证用户能否听到相关提示。

对于原生 Android 应用,TalkBack 同样是参考标准;在 Android 生态内,网页与原生应用的测试技能可以相互迁移。