Wear OS 上的无障碍功能

创建 Wear OS 应用时,首先就应遵循 Android 应用的无障碍功能指南中所述的无障碍功能原则和指南。然后,还要确保您的应用可在 Wear OS 上无障碍使用。

由于以下因素,在无障碍设计方面,Wear OS 应用有一些额外的注意事项:

  • Wear OS 上的输入类型不同,例如旋转输入。
  • 提供额外的界面 surface,例如图块和复杂功能。
  • 屏幕尺寸小,需要不同的 TalkBack 实现。

与无障碍功能方面的其他工作一样,请务必使用屏幕阅读器等辅助技术全面测试每种体验。这样您就可以从用户的角度体验应用,并发现原本可能会忽略的易用性问题。如需了解详情,请参阅测试应用的无障碍功能

支持用户的首选字体大小

在系统设置中,用户可以调整 Wear OS 应用中显示的文本元素的字体大小。例如,在 Google Pixel Watch 设备上,这些设置位于设置 > 无障碍菜单中。

测试应用时,请将字体大小设置为不同的值,并确保应用的文本内容的行为符合预期。您可以使用如下技巧使应用的文本更易于访问:

启用旋转输入

大多数 Wear OS 设备都包含实体侧面旋钮 (RSB)、旋转边框和触摸边框。这称为旋转输入。您可以使用旋转输入来调整媒体应用的音量、向上或向下滚动内容等。

Wear OS 设备比移动设备小,这造成了额外的挑战。如果用户在操作灵巧度方面有困难,那么在小屏幕上操作时可能很难达到精准。使用屏幕阅读器的用户也可能很难通过双指互动进行滚动。与使用双指互动相比,使用旋转输入功能可实现更方便的滚动方式,从而帮助用户克服上述困难。

如需了解详情,请参阅旋转输入

针对 TalkBack 优化应用

TalkBack 是 Android 的内置屏幕阅读器。开启 TalkBack 后,用户无需查看屏幕即可与 Android 设备互动。您应测试应用,确保其所有用户体验历程都可以使用屏幕阅读器(例如 TalkBack)完成。如需了解详情,请参阅 TalkBack

Wear OS 上的 TalkBack 与移动设备上的 TalkBack 大同小异,但有一些额外的注意事项,详见以下各部分的说明。

使用内置组件

Wear OS 提供许多遵循无障碍功能最佳实践设计的内置界面组件。例如,PickerGroup 元素使用焦点协调器对象,将焦点分配给正确的 Picker 元素。

在您的应用中使用这些内置组件可提高应用的易用性,让所有人受益。

为功能块和复杂功能使用内容说明

Wear OS 提供不同的界面 surface,例如图块和复杂功能。

表盘复杂功能可在表盘上直接显示来自各种应用的信息(例如日期或天气预报),所示信息一目了然。图块可让您快速查看所需信息,快速执行处理事项所需的操作。用户只需在表盘上轻轻滑动一下,即可查看天气、设置计时器,以及使用其他功能。

类似于 Compose 视觉元素,您可以为图块和复杂功能设置 contentDescriptioncontentDescriptions 定义 Talkback 用来描述任何无文本说明的内容的文本。针对图块和复杂功能使用内容说明时,请注意以下事项:

  • 避免在说明中添加对用户来说没有价值的多余文字,例如复杂功能和图块。
  • 避免在显示的信息之外再添加文字。例如,复杂功能的说明显示日期 12 月 13 日,则就应为 12 月 13 日,不要添加日期

设置图块的内容说明

使用 setContentDescription 方法,为 TalkBack 读出的图块设置当前的内容说明。

此外,请确保为图块中的所有元素(例如按钮)设置内容说明。

为复杂功能设置内容说明

复杂功能有多种不同的类型,例如在 Builder 上设置了 SmallImageComplicationShortTextComplication. contentDescription,示例参见 SmallImageComplicationData.Builder

了解列表行为

由于穿戴式设备的屏幕尺寸较小,因此 TalkBack 对 Wear OS 上的列表行为做出几点假设。

列表通知

在其他外形规格的设备中,当用户聚焦于列表时,Talkback 会将 in list 添加到其通知中,以便用户了解所处的位置。如果用户离开列表,Talkback 会将 out of list 添加到其通知中。然而在 Wear OS 设备上,由于屏幕较小,TalkBack 会假设每个界面上只能有一个列表。因此,TalkBack 移除了对 in-list 和 out-of-list 通知的支持,以避免出现多余的文字。请不要预期 TalkBack 在 Wear OS 设备上会读出 in-list 和 out-of-list 通知

垂直列表通知

从垂直列表中读取列表项时,Talkback 会避免读出太小或几乎超出屏幕范围的项。具体来说,TalkBack 使用以下两个条件:

  1. 靠近屏幕顶部或底部的元素。
  2. 元素高度小于 32dp。

通过确保项的高度至少为 32dp,列表中第一项在顶部有内边距,最后一项在底部有内边距,可使其有效地与 Talkback 协同工作。

这些准则不适用于水平列表。

设置最小触摸目标

触摸目标是屏幕上响应用户输入的部分。它们可能会超出元素的可视边界。例如,某个元素(如图标)的显示大小可能为 24dp x 24dp,但其周围的内边距可以构成完整的 48 x 48 dp 触摸目标。

根据 Android Material 指南,建议的触摸目标大小为 48dp x 48dp。由于 Wear OS 的屏幕尺寸较小,在某些情况下,允许使用 40dp x 40dp 的触摸目标。

如需详细了解如何实现触摸目标,请参阅 Compose 中的无障碍服务