此页面包含有关 Wear OS 版本的信息,例如 Wearable SDK 和 Wearable Support Library。
2023 年 8 月 31 日 Wearable SDK 18.1.0
Wearable SDK 版本 18.1.0 包含次要 API 更新,以支持下一个 Wearable Support Library 版本。更新包括
- 手机切换支持,请参阅
NodeClient.OnNodeMigratedListener
以了解更多详细信息。 MessageClient
发送和回复消息的补充文档。- 更新了 API 说明中的链接。
2022 年 9 月 20 日 Wearable SDK 18.0.0
Wearable SDK 版本 18.0.0 包含次要 API 更新,以支持下一个 Wearable Support Library 版本。更新包括
WearableListenerService
支持针对 Android 13 的应用——问题 235538840。- 新的
MessageClient.sendRequest()
方法。
2022 年 2 月 16 日 Wearable Support Library v2.9.0
Wearable Support Library 的 2.9.0 版本弃用了所有剩余的类。请改用 Wear OS Jetpack 库。
2021 年 10 月 29 日 Wear OS Jetpack 库
Wear OS Jetpack 库 是 Wearable Support Library 的替代品,它们并非设计为一起使用。Wearable Support Library 不适用于 Wear OS 3。
2021 年 4 月 27 日 Wearable SDK 17.1.0
Wearable SDK 版本 17.1.0 包含次要 API 更新,以支持下一个 Wearable Support Library 版本。
2020 年 9 月 28 日 Wearable Support Library v2.8.1
Wearable Support Library 的 2.8.1 版本包含以下更改。
使用 Watch Face 模板时允许禁用 Jetifier
Android Studio Watch Face 模板现在使用 AndroidX 依赖项以允许禁用 Jetifier。这些修复适用于在 Android Studio 4.2 或更高版本中使用 Watch Face 模板时。
2020 年 9 月 24 日 Wearable Support Library v2.8.0
Wearable Support Library 的 2.8.0 版本包含以下更改。
指定默认非系统复杂功能提供程序的回退功能
手表表盘现在可以使用 setDefaultComplicationProviderWithFallbacks
指定一个或多个默认使用的非系统复杂功能提供程序。如果未安装任何指定的非系统提供程序,则系统会回退到使用默认系统提供程序。
WearableActivity 已弃用
WearableActivity
已弃用。请改用 AmbientModeSupport
。
SKIP_CONFIRMATION_UI 已弃用
ActionConfirmationActivity.SKIP_CONFIRMATION_UI
已弃用。自 Wear 2.0 发布以来,此额外内容一直未使用。
2020 年 5 月 15 日 可穿戴设备支持库 v2.7.0
可穿戴设备支持库的 2.7.0 版本包含以下功能。
手表表盘的硬件加速
使用 CanvasWatchFaceService
类时,您现在可以请求硬件加速画布。利用硬件加速可以提高手表表盘的性能,并访问更多 UI 性能数据。
有关更多信息,请参阅 使用硬件加速提高手表表盘性能。
2020 年 4 月 21 日 可穿戴设备支持库 v2.6.0
可穿戴设备支持库的 2.6.0 版本包含以下改进。
迁移到 Android Jetpack
可穿戴设备支持库已迁移到 Android Jetpack。现有库现在已映射并在 AndroidX 中使用 androidx
命名空间访问,并且已删除对 已弃用的支持库 的所有依赖项。
此更改还允许您在 Android Studio 4.0 及更高版本中使用可穿戴设备支持库,从而解决 问题 #147972079 等问题。
2019 年 8 月 28 日 可穿戴设备支持库 v2.5.0
可穿戴设备支持库的 2.5.0 版本包含以下改进。
修复使用 TYPE_NO_PERMISSION 复杂功能类型调用 startActivity() 时的 ComplicationDrawable 问题
ComplicationDrawable
现在包含一个 NEW_TASK
标志,该标志确保来自 WatchFaceService
的 startActivity()
调用包含 FLAG_ACTIVITY_NEW_TASK
以避免出现 android.util.AndroidRuntimeException
。
此更改允许 TYPE_NO_PERMISSION
复杂功能类型正确启动权限请求活动,而不是使手表表盘崩溃。
2018 年 9 月 25 日 可穿戴设备 SDK 16.0.0
可穿戴设备 SDK 16.0.0 版本将 Google Play 服务的最低版本从 12.4 版降低到 8.6 版。此更改允许现有应用更新到最新版本的可穿戴设备 SDK,而无需更新 Google Play 服务 APK。
2018 年 6 月 11 日 更新至 Wear OS 开发者预览版 2
最近对 无线更新 Wear OS 开发者预览版 2 重新启用了后台应用的警报和作业。
虽然此策略更改支持应用开发的更大灵活性,但后台警报和作业仍受其他 Android P 限制的约束,包括与 应用待机时段 相关的限制。遵循 最佳实践,以确保您的应用在任何时段内都能正常运行。
此更新还通过限制后台应用访问用户输入和传感器数据来加强 用户输入和数据隐私。根据应用的要求,您可能需要使用前台服务来启用对传感器数据的持续访问。
2018 年 5 月 8 日 Wear OS 开发者预览版 2
Wear OS 开发者预览版 2 具有诸如 改进的 Google 助理体验 等功能。
使用 Wear OS by Google 问题跟踪器 提交任何错误或反馈。您提交的越早,修复程序被包含在最终版本中的可能性就越高。
已知问题
本节包含预览版 2 版本的已知问题。
Wear OS 镜像的问题
- 当您位于任何应用中并按下手表侧面的电源按钮时,您可能会返回到上一个屏幕,而不是手表表盘。
Wear OS 中国版镜像的问题
- 当您位于任何应用中并按下手表侧面的电源按钮时,您可能会返回到上一个屏幕,而不是手表表盘。
- 与音量相关的声音设置不会持久保存。例如,即使手表的音量设置为关闭,来电也会导致手表发出可听见的铃声。如果您调整闹钟音量,更改将无效。
- 多个正在进行的通知可能无法正确显示。例如,如果同时设置了计时器和秒表,则不会显示通知。我们建议您使用一个正在进行的通知而不是多个通知来测试您的应用。
- 中国版的 Wear 应用商店无法正常工作。开发者无法使用该渠道更新或安装新应用。我们建议您使用 `adb` 作为解决方法来侧载您的应用进行测试。
Wear 模拟器的问题
- 伴侣手机上的来电不会显示为配对模拟器中的来电,或_镜像_显示。
- 当您使用 SDK 管理器 安装或确认您已安装最新版本的 Android P 或中国版时,这些选项旁边的复选框在您选中后可能会取消选中。如果它们被取消选中,请再次选中它们。
- 当模拟器执行冷启动时,可能会显示以下错误:“您的设备存在内部问题。请联系制造商以获取详细信息。” 这不会影响功能。向下滚动并点击确定以开始测试您的应用。
- 语音回复可能无法在模拟器上运行。例如,如果您在 Wear 模拟器上收到 Google Hangouts 消息的通知,并且您尝试通过语音回复消息,则会出现“Google 持续停止”错误消息,并且您将无法通过语音回复。
- Instant Run 可能与 Wear 模拟器不兼容。
- 以编程方式截取屏幕截图(例如使用 `adb` 或通过截取错误报告)可能无法正常工作。作为解决方法,请点击模拟器工具栏上的相机按钮以截取屏幕截图。
Wear 模拟器中国版的问题
- 伴侣手机上的来电可能不会显示为配对模拟器中的来电,或_镜像_显示。因此,错过的来电通知可能不会显示在模拟器中。此外,您可能无法从模拟器接听电话,在这种情况下,电话会继续响铃。
- 当您使用 SDK 管理器 安装或确认您已安装最新版本的 Android P 或中国版时,这些选项旁边的复选框在您选中后可能会取消选中。如果它们被取消选中,请再次选中它们。
- 当模拟器执行冷启动时,可能会显示以下错误:“您的设备存在内部问题。请联系制造商以获取详细信息。” 这不会影响功能。向下滚动并点击确定以开始测试您的应用。
- Instant Run 可能与 Wear 模拟器不兼容。
- 以编程方式截取屏幕截图(例如使用 `adb` 或通过截取错误报告)可能无法正常工作。作为解决方法,请点击模拟器工具栏上的相机按钮以截取屏幕截图。
Wear 上的 Google 助理
对 Wear OS 上的助理提供增强的支持,使您无需编写 Android 代码即可构建适合可穿戴设备的体验。具体来说,您可以为 Google Actions 平台构建,帮助您的用户完成产品和服务相关的事项。
此外,Wear OS 现在支持通过语音和触控进行更快的交互。也支持建议芯片。它们执行以下操作
- 帮助用户快速完成交互
- 向用户提示您的操作的功能
此外,Wear OS 现在支持更多视觉卡片,以及列表和轮播。
因此,您可以使用 DialogFlow
、模板 或 Actions SDK 为 Wear OS 创建 Google Actions。您还可以利用针对手表特有的新响应模板。Google Actions 的最佳实践包括
- 简短、简洁的对话
- 启用视觉和语音反馈
Wear OS 上的助理的这些增强功能不依赖于 Android P,并且正在推广到所有 Wear 2.0 用户。有关构建 Google Actions 的简介,请参阅 与 Google 助理集成。
开发者预览版 2 中的电池节电功能
如以下部分所述,提供了一些与电源相关的功能来延长电池寿命。本开发者预览版 2 部分中的信息取代了开发者预览版 1 中的与电源相关的信息。
新模式:增强型省电模式
当手表处于增强型省电模式时,会显示默认的省电手表表盘。以下所有内容都已关闭
- 无线电
- 触摸屏
- 倾斜唤醒功能
用户可以通过短按侧边按钮查看时间。长按可让用户切换回完全可操作模式并执行任务,例如使用 NFC 支付或回复消息。假设在增强型省电模式下,应用、手表表盘和复杂功能数据提供程序不可用。
有限的后台活动
为了改善电源管理,后台应用不再能够启动警报和作业,除非手表正在充电。例外情况包括手表表盘和活动复杂功能。
注意:如果您的应用必须始终运行,例如用于后台监控,我们建议您使用前台服务,方法是使用 startForegroundService()
方法。有关更多详细信息,请参阅 后台服务限制。使用前台服务适用于特殊用例,例如健康监控。
改进的应用兼容性
为了提高应用兼容性,Android P 已开始实施某些 对非 SDK 接口使用的限制。计划迁移出非 SDK 方法和字段。如果您的用例没有可用的公共等效项,请 告知我们。
深色 UI 系统主题
自 2018 年初以来,Wear OS 已切换到默认的 UI 主题,该主题为通知流和系统启动器提供了较暗的背景。此更改旨在提高应用的可读性;请使用此新的 UI 主题检查应用的可访问性。
更新的 codelab 可供使用
为了帮助您探索使用 Wear OS 进行开发的重要方法,提供了更新的 codelab。例如,尝试新的基于 Kotlin 的手表表盘 codelab 以试验 Kotlin 领域特定语言或 DSL。
2018 年 3 月 27 日 Wear OS 开发者预览版 1
本节包含有关 Google Wear OS 开发者预览版 1 的信息。在最终发布生产版本之前,预计此预览版将进行多次更新。使用 Wear OS by Google 问题跟踪器 提交您发现的任何错误。您提交得越早,我们将其修复程序包含在最终版本中的可能性就越高。
已知问题
- 在 Wear OS 伴侣应用中,点击报告可穿戴设备错误似乎有效,但实际上并没有生成任何错误报告。请使用
adb bugreport
作为解决方法。 - 使用手表接听电话并不总是成功。如果未成功,用户需要直接从手机上接听电话。
- 配对或启动预加载应用后,有时会出现“检测到 API 兼容性问题”错误。该错误消息会在短时间后消失,并且不会影响可用性。
- 在手表和模拟器的设置菜单中,“获取错误报告”选项显示了两次。要获取错误报告,请尝试使用这两个选项中的每一个,因为只有一个是有效的。当您点击有效选项时,将显示一条提示,表明正在生成错误报告。
- 在中国版本中,语音输入会导致应用崩溃。例如,在语音搜索或使用语音添加提醒时会发生这种情况,因为此功能使用语音输入 API。为了进行测试,请使用键盘或手写输入,而不是语音输入。
- 中国版的 Wear 应用商店无法正常工作。开发者无法使用该渠道更新或安装新应用。我们建议您使用 `adb` 作为解决方法来侧载您的应用进行测试。
此开发者预览版中的亮点
开发者预览版 1 包括以下用于应用测试的功能
-
有限的后台活动:为了改善电源管理,后台应用将无法再使用闹钟和作业。例外情况包括用户选择的表盘和复杂功能。此功能将在开发者预览版中逐步推出,因此您可能不会立即在手表上看到它。
注意:如果您的应用必须始终运行,请修改它以使其成为使用
startForegroundService()
方法的前台服务。有关更多详细信息,请参阅 后台服务限制。 - 对应用使用非 SDK 接口的限制:为了提高应用兼容性,Android P 已开始实施某些 对非 SDK 接口的使用限制。计划迁移到非 SDK 方法和字段之外。如果您的用例没有可用的公共等效项,请 告知我们。
- 深色 UI 系统主题:自 2018 年初以来,Wear OS 已切换到默认 UI 主题,该主题为通知流和系统启动器提供更暗的背景。此更改旨在提高您应用的可读性;使用此新的 UI 主题检查您的应用的可访问性。
- 手表脱离身体时无线电关闭:为了改善电源管理,当手表检测到长时间脱离身体时,蓝牙无线电、Wi-Fi 无线电和蜂窝无线电将关闭。此功能将在开发者预览版中逐步推出,因此您可能不会一开始就在手表上看到它。如果此功能给您的开发过程带来挑战,您可以使用以下命令使用 `adb` 禁用此功能
adb shell settings put global off_body_radios_off_for_small_battery_enabled 0
- 蓝牙断开连接时 Wi-Fi 关闭:为了改善电源管理,手表在与蓝牙断开连接时不再自动连接到 Wi-Fi。例外情况包括应用请求高带宽网络的情况,以及手表连接到充电器的情况。此功能将在开发者预览版中逐步推出,因此您可能不会一开始就在手表上看到它。
可穿戴支持库 v2.3.0 的更新
可穿戴支持库的 v2.3.0 文档更新 包括 重命名 更新。
此外,库的 v2.3.0 版本包含与 ComplicationDrawable
和 TextRenderer
相关的更新,用于附加有标记对象到文本范围的文本。这些类改进了对 spanned 文本的处理。只能渲染某些子集的跨度 - 请参阅 setText
方法以获取可以绘制的跨度类型 - 因此,跨度在表盘中渲染时不会显得格格不入。
2018 年 3 月 15 日 Wear 的重命名
本节包含有关 Wear OS 功能的信息。
Android Wear 的新名称
Android Wear 重命名为 Wear OS by Google。
2018 年 2 月 27 日 环境模式更新
本节包含有关新的 Android Wear 功能的信息。
支持环境模式的新类
Android 支持库的 27.1.0 版本 包含一个新类, AmbientModeSupport
,它取代了现已弃用的 AmbientMode
类。计划在未来几周内更新示例。
2018 年 1 月 25 日 最终模拟器等
本节包含有关新的 Android Wear 功能的信息。
Android 模拟器:Wear 更新
基于 API 版本 26 的 Android 模拟器 的最终 Wear 相关更新可用于测试应用。
可穿戴支持库 v2.2.0 中的增强功能
可穿戴支持库的 2.2.0 版本 包括以下所述的更新。
新的未读通知指示器
因为用户希望了解未读通知,所以提供了一个新的指示器:表盘底部的圆圈点。如果您希望自行管理通知,则可以使用 setHideNotificationIndicator
隐藏默认指示器并显示您自己的指示器,或者使用 setShowUnreadCountIndicator
在状态栏中显示通知计数。
使用 setAccentColor
方法自定义未读通知指示器外环的颜色。
注意:未读通知指示器在 Wear 2.8.0 的生产版本中未启用。请使用最新的 Wear 模拟器测试您的实现。从 Wear 的下一个消费者版本(版本 2.9.0)开始,将默认显示未读通知指示器。
对 ComplicationDrawable 类的增强功能
当系统指示值为 TYPE_NO_PERMISSION
(表示表盘缺少获取复杂功能数据的权限)时,ComplicationDrawable
类会为被点击的表盘启动权限请求。
此外,ComplicationDrawable
类在完成图像加载或轻触高亮显示过期时使自身失效。为了响应此失效(例如重新绘制表盘),请添加 Drawable.Callback
。
已知问题
- 如果您在模拟器中激活剧院模式(如 更改屏幕和亮度设置 中所述),则模拟器可能会卡在剧院模式下。修复此问题需要清除模拟器数据;请参阅 运行和停止模拟器以及清除数据。
- 在 API 级别 25 或 26 的模拟器窗口内,电源按钮不起作用。请改用电源按钮以外的其他按钮。具体来说,要切换到环境模式(例如,用户用手掌遮住屏幕),请使用显示屏右侧模拟器工具栏上的电源按钮。要在交互模式下启动应用程序启动器,请使用模拟器工具栏上的“主页”按钮。
- 在中国版本的模拟器上,如果您使用手写输入法,屏幕可能会开始闪烁。然后,当您点击屏幕键盘按钮时,键盘会遮挡屏幕的一半。
2017 年 12 月 18 日 访问 Google Play 服务的新方法
本节包含有关新的 Android Wear 功能的信息。
迁移到 GoogleApiClient 类之外
从 Google Play 服务的 11.8.0 版本 开始,请将您的 Wear 应用迁移到 GoogleApiClient
类之外,而是使用基于 GoogleApi
类和 Tasks API 的 API 客户端对象。
注意:此更新不适用于 中国版 Android Wear 应用,这些应用通常使用 Google Play 服务的 10.2.0 版本。
有关更多信息,请参阅以下内容
用于连接 Google Play 服务的新组件
当您使用扩展 GoogleApi
类的类(例如 DataClient
和 MessageClient
)时,Google Play 服务 SDK 会为您管理与 Google Play 服务的连接。使用这些类的应用不再需要创建和管理 GoogleApiClient
对象。有关更多信息,请参阅博文 Moving Past GoogleApiClient。
有关用于连接 Google Play 服务的 Wear 相关组件的替换,请参阅 已弃用组件的替换。有关 Google Play 服务的版本和已知问题,请参阅 Google Play 服务的发行说明。
注意:如果您使用 Google Play 服务的最新版本编译您的应用,则会提示用户将其设备更新到该最新版本。但是,针对 API 版本 26 的应用的一个已知问题可能会阻止提示用户更新其设备。此问题在 Google Play 服务的发行说明 中进行了描述。
2017 年 10 月 25 日 环境模式等
本节包含有关新的 Android Wear 功能的信息。
Android 支持库 v27.0.0:功能和错误修复
Android 支持库的 27.0.0 版本 包含 Wear 的新功能。请查看以下部分。
支持环境模式的新首选方式
环境模式允许 Wear 应用在设备进入空闲状态时对用户保持可见。Android 支持库为您的应用使用环境模式提供了一种新的首选方式。Wear 团队寻求 开发者反馈 有关此重大更改的信息。
具体来说,使用 AmbientMode
类提供了以下好处
- Android 支持库中的
Activity
子类,例如 FragmentActivity
。支持库片段的功能可用。
-
架构组件,它们是 生命周期感知 的。
- 更好地支持 Google 登录。
Android 支持库中的清单元数据常量
Android Wear 应用的常量,用于 Android 清单文件中的 meta-data
标签,现在可在 Android 支持库中获取。要使用这些常量(用于独立应用、通知桥接模式和表盘预览图像),请在应用模块的 build.gradle
文件的依赖项部分添加以下引用,这需要 Google 存储库的最新版本。
Groovy
implementation 'com.android.support:wear:27.0.0'
Kotlin
implementation("com.android.support:wear:27.0.0")
操作抽屉更新
对用于创建可穿戴操作抽屉的 WearableActionDrawerView
类提供了更新。在最新版本中
- 修改菜单项时,操作抽屉会正确更新。
- 如果为操作抽屉设置,标题将正确显示。
RoundedDrawable 类的膨胀
假设 API 级别至少为 24,则现在可以从可绘制 XML 文件膨胀 RoundedDrawable
类;请参阅 自定义可绘制对象。
可穿戴支持库 v2.1.0:增强功能等
可穿戴支持库的 2.1.0 版本 包含以下部分中描述的更新,并且需要 Android 支持库版本 26.0.2 或更高版本。
为环境模式提供防烧屏图像
ComplicationDrawable
类允许您为环境模式提供防烧屏图像。具体来说, ComplicationData
对象的防烧屏保护小图像字段允许表盘在启用防烧屏保护时,在环境模式下在 SMALL_IMAGE
复杂类型中显示小图像。
复杂功能的点击事件更新
ComplicationDrawable
类有一个新的 onTap
方法,允许您的表盘将点击事件传递给复杂功能。新方法建立在现有功能的基础上,在该功能中,点击表盘会触发 WatchFaceService.Engine.onTapCommand
方法。
您可以使用 onTap
调用将坐标传递给 ComplicationDrawable
,以启动与包含点击坐标的 ComplicationDrawable
关联的操作。当新的 onTap
方法被调用时,您可以使用 true
的返回值来查看 ComplicationDrawable
是否启动了与其关联的操作。
此外,setHighlightDuration
方法设置复杂功能在调用 onTap
方法后保持突出显示的持续时间。
范围值复杂功能的进度条
如果您希望在表盘中为范围值复杂功能绘制自己的进度条,请使用 ComplicationDrawable
类的 setRangedValueProgressHidden
方法隐藏由 ComplicationDrawable
绘制的范围值进度。
2017 年 10 月 2 日 Android Wear 测试版
日期:2017 年 10 月 2 日
版本:OWP4.170828.008
支持的设备:LG Watch Sport
本节包含 Android Wear 测试版发布的已知问题。有关测试版计划或注册的信息,请参阅 Android 测试版页面。
已知问题
- Google Pay 及其卡在此 Android Wear 测试版版本中无法使用。
- 即使蜂窝网络连接已开启,安装测试版后也会关闭。作为解决方法,安装测试版后,通过导航到设置 > 连接 > 蜂窝网络开启蜂窝网络连接。
- 如果测试版更新后通知不稳定或丢失,或者联系人未同步,请恢复出厂设置您的手表。
- 在手表设置完成后启动的 Wear 教程中,某些卡片的行为不稳定,但可以通过滑动正常关闭。
- 在 Android 6.0 手机上,手表无法接收电话呼叫通知。
- 更新后,心率监测有时会失败。作为解决方法,请重启手表。
- 流中的 OTA 卡有时无法启用安装。作为解决方法,请导航到设置 > 系统 > 关于 > 系统更新。