Wear OS 应用直接在手表上运行,可让您使用传感器和 GPU 等硬件。穿戴式设备应用与使用 Android SDK 的其他应用类似,但在设计和功能方面有所不同。
Wear 应用应独立于手机应用运行,以便用户在选择手机时拥有最大的灵活性。如需了解详情,请参阅独立应用。
注意:您可以通过 WLAN 或蓝牙连接到手表,在手表上实机测试自己的应用。借助手表实机进行应用开发可让您更好地评估整体用户体验。 此外,您也可以使用手表模拟器。您可以使用 Android Studio 中的手表模拟器,测试自己的应用在不同屏幕形状和尺寸下的效果。
设置您的环境
安装最新版本的 Android Studio。如需了解如何在 Android Studio 中创建应用,请参阅项目概览。
使用 SDK 管理器确认您拥有最新版本的 Android 平台。具体方式是,在 SDK Platforms 标签页下,选择 Android 8.0 (Oreo)。
如果您计划在中国境内推出自己的 Wear OS 应用,请参阅打造中国版 Wear OS 应用。
创建 Wear OS 应用
您可以使用 Android Studio 的 New Project 向导来创建 Wear OS 应用。
开始 Wear OS 项目
如需在 Android Studio 中创建项目,请执行以下操作:
- 依次点击 File > New > New Project。
- 在 Configure your new project 屏幕上,接受默认值并点击 Next。
- 在 Target Android Devices 屏幕上,仅选择 Wear 选项,然后在 Minimum SDK 列表中选择最新的可用选项。
- 点击 Next,在 Add an Activity to Wear 屏幕上,选择 Blank Wear Activity,然后点击 Next。
-
在 Customize the Activity 屏幕上,点击 Finish。
Android Studio 将使用其模板来创建应用。
-
在应用模块的
build.gradle
文件中:-
在
android
部分,确认compileSdkVersion
设为 26。 -
在
android
部分,确认targetSdkVersion
设为 26。 -
更新
dependencies
部分。第一个依赖关系针对的是 Wear 界面库,该库中包含体现了最佳做法的类。第二个依赖关系针对的是穿戴式设备支持库,该库包含其他类(包括适用于表盘主题的类):dependencies { implementation 'androidx.wear:wear:1.0.0' implementation 'com.google.android.support:wearable:2.5.0' compileOnly 'com.google.android.wearable:wearable:2.5.0' }
-
在
-
在应用的 Android 清单文件 (
AndroidManifest.xml
) 中,指明您的应用是独立应用。具体方式是添加meta-data
标记,如下所示:-
找到
<application>
标记。 -
使用一个名称为
com.google.android.wearable.standalone
且值为true
的meta-data
标记作为上述标记的子标记:<application> ... <meta-data android:name="com.google.android.wearable.standalone" android:value="true" /> ... </application>
-
找到
- 在 Android 清单文件中,确保已定义
<uses-feature>
标记。至少必须使用android:name="android.hardware.type.watch"
定义该标记,如下所示:<manifest> ... <uses-feature android:name="android.hardware.type.watch" /> ... </manifest>
- 同步您的 Android Studio 项目。如需运行新模块中的代码,请参阅启动模拟器并运行您的 Wear OS 应用。
启动模拟器并运行您的 Wear OS 应用
如需使用模拟器,您必须配置 Android 虚拟设备(Android Virtual Device,下称 AVD)。请通过 SDK 管理器确认您拥有最新版本的 Android SDK 平台工具。
您可以按照以下步骤配置 AVD 并运行您的应用:
- 在 Android Studio 中,依次选择 Tools > AVD Manager,打开 Android Virtual Device Manager。
- 点击 Create Virtual Device。
- 在 Category 窗格中,选择 Wear,并选择硬件配置文件。点击 Next。
- 选择要下载的 O 映像。例如,选择 Release Name 为“O”、API Level 为“26”且 Target 为“Android 8.0 (Wear OS)”的映像。点击 Next,然后点击 Finish。
- 关闭 Android Virtual Device Manager。
-
在 Android Studio 工具栏中,从目标设备下拉菜单中选择您刚刚创建的 AVD,然后点击 Run
。
该 AVD 将启动,并会在过一会儿后运行您的应用。您将会看到“Hello…”消息。
如需详细了解如何使用 AVD,请参阅在 Android 模拟器上运行应用。
将手机与手表 AVD 配对
注意:不支持将手表 AVD 与手机 AVD 配对。必须与连接的手机配对。
如果您希望在手表 AVD 上有一个 Google 帐号,以便进行应用开发,可以将手机与手表 AVD 配对并同步 Google 帐号:
- 按照设置手机的步骤进行操作。
- 在手机上,启用开发者选项和 USB 调试。
- 通过 USB 将手机连接到计算机。
-
将 AVD 的通信端口转接到连接的手机(每次连接手机时):
adb -d forward tcp:5601 tcp:5601
- 在手机上的 Wear OS 应用中,开始执行标准配对过程。例如,在“欢迎”屏幕上,点按设置按钮。 或者,如果已配对某个现有手表,请在左上方的下拉菜单中点按添加新手表。
- 在手机上的 Wear OS 应用中,点按“溢出”按钮,然后点按与模拟器配对。
- 点按设置图标。
- 在设备设置下方,点按模拟器。
- 点按帐号并选择一个 Google 帐号,然后按照向导中的步骤将帐号与模拟器同步。必要时,输入屏幕锁定设备密码和 Google 帐号密码,开始帐号同步。
更新 Wear OS 项目
如果您已有项目,可能需要更新 build.gradle
文件。Gradle 4.1 版支持使用 google()
来指明 Google Maven 代码库,早期版本的 Gradle 不支持此功能。如需了解相关信息,请参阅 Google 的 Maven 代码库。
因此,如果您的 Gradle 版本低于 4.1,请在 Android Studio 项目的 build.gradle
文件中提供 Google Maven 代码库网址。具体方法是,在 repositories
部分中添加一个 maven
部分,如下所示:
allprojects { repositories { jcenter() maven { url "https://maven.google.com" } } }
设置手表
将应用部署到手表的过程与将应用部署到手机类似。
本部分假定您的手表有 USB 端口。如果您的手表没有 USB 端口,请参阅通过 WLAN 或蓝牙连接手表的说明。
在手表上启用 ADB 调试:
- 打开手表上的设置菜单。
- 滚动到菜单底部。如果菜单中未提供开发者选项,请依次点按系统和关于。
- 点按版本号 7 次。
- 从设置菜单中,点按开发者选项。
- 启用 ADB 调试。
连接手表:
- 通过 USB 将手表连接到您的计算机,以便将应用直接安装到手表上。或者,通过 WLAN 或蓝牙将手表连接到您的计算机。
- 在手表上,点按始终允许使用这台计算机进行调试,然后点按确定。
连接手表后,通过选择部署目标来运行您的应用,就像在手机上一样。
设置手机
本部分介绍了如何为配套手机设置 Wear OS 配套应用。
注意:Wear OS 应用应该是独立应用,独立于手机运行。 不过,如果您的应用依赖于某个手机应用,请参阅下文,了解如何更新手机,使其拥有最新的 Wear OS 配套应用。
使用配套应用的 Android 版本
在 Android 手机上,转到 Wear OS 应用详情。点按更新下载并安装应用。安装后,确认已为应用选择自动更新(请参阅更新下载的应用的“为特定应用设置自动更新”部分)。点按打开启动应用。
将 Android 手机与手表配对
在手机上安装配套应用后,如有必要,请取消(“忘记”)所有过时的手表配对。然后,您可以将手机与安装了新映像的手表进行配对:
- 在手机上,从设备列表中选择您的设备名称。手机和手表上都会显示配对码。请确保配对码匹配。
- 点按配对继续配对过程。手表连接到手机后,系统会显示一条确认消息。手机上会显示一个屏幕,其中会列出手机上的帐号。
- 选择要添加并同步到手表的 Google 帐号。
- 确认屏幕锁定,然后输入密码,开始将帐号从手机同步到手表。
- 按照向导中的说明完成配对过程。
适用于 iPhone 的配套应用
如果有 iOS 版配套应用,但安装该应用的手机必须运行 iOS 8.2 或更高版本,请按照以下步骤操作:
将 Wear OS 模块添加到您的项目
在 Android Studio 中,您可以向现有项目添加一个用于 Wear OS 设备的模块,以便重复使用移动(手机)应用的代码。
在您的现有项目中提供 Wear OS 模块
如需创建 Wear OS 模块,请打开您的现有 Android Studio 项目并执行以下操作:
- 依次点击 File > New > New Module。
- 在 New Module 窗口中,选择 Wear OS Module,然后点击 Next。
- 在 Configure the new module 下方,输入:
- Application/Library Name:此字符串是新模块的应用启动器图标使用的标题。
- Module Name:此字符串是源代码和资源文件所在文件夹的名称。
- Package Name:此字符串是代码在模块中的 Java 命名空间,作为模块的 Android 清单文件中的
package
属性添加。 - Minimum SDK:选择应用模块支持的最低平台版本。例如,选择 API 26: Android 8.0 (Oreo)。此值会设置
build.gradle
文件中的minSdkVersion
属性(稍后可进行更改)。
- 点击 Next。此时将显示包含代码模板的选项。点击 Blank Wear Activity,然后点击 Next。
- 在 Configure Activity 窗口中,输入 Activity Name、Layout Name 和 Source Language 的值或接受默认值。点击 Finish。
Android Studio 随即会为新模块创建并同步文件。Android Studio 还会将 Wear OS 所需的所有依赖关系添加到新模块的编译文件中。新模块随即会显示在屏幕左侧的 Project 窗口中。如果您没有看到新模块的文件夹,请确保窗口中显示的是 Android 视图。
在新 (Wear OS) 模块的 build.gradle
文件中:
-
在
android
部分,将compileSdkVersion
和targetSdkVersion
的值设为 26。 - 更新
dependencies
部分,使其包含以下内容:dependencies { implementation 'androidx.wear:wear:1.0.0' implementation 'com.google.android.support:wearable:2.5.0' compileOnly 'com.google.android.wearable:wearable:2.5.0' }
- 同步您的 Android Studio 项目。如需运行新模块中的代码,请参阅启动模拟器并运行您的 Wear OS 应用。
包含库
注意:Android Studio 提供了项目设置、库集成和打包功能,因此建议使用 Android Studio 进行 Wear OS 开发。
当您使用 Android Studio 的项目向导时,该向导会将依赖关系导入到相应模块的 build.gradle
文件中。不过,并非所有应用都需要这些依赖关系,请查看下面有关依赖关系的信息。
如需将现有 Wear 项目更新为最新的 SDK 版本,请使用启动 Wear OS 项目部分中列出的设置。
通知
如需了解通知的依赖关系,请参阅在 Wear 上创建通知。
Wear 界面库
Wear 界面库中的组件体现了适合手表应用的最佳做法,建议您使用这些组件。因此,建议您添加对 Android 支持库的依赖关系。如需了解详情,请参阅以下页面:
穿戴式设备支持库
穿戴式设备支持库包含适用于手表应用的界面组件。该库中的一些类已被弃用。如需了解这些已弃用类的替代类,请参阅使用 Wear 界面库。
虽然界面组件可能会随时更改,但组件的更改不会导致应用无法运行(因为这些组件已编译到您的应用中)。如需从更新的库中获取新功能,请静态链接新的库版本,并相应地更新您的应用。
Play 服务和穿戴式设备数据层 API
如果您的应用为了同步和发送数据(使用数据层 API)或出于其他原因而依赖于 Google Play 服务,那么您需要最新版本的 Google Play 服务。如果您不使用这些 API,请移除依赖关系。
手机应用和手表应用之间的差异
下面是手机应用和手表应用之间的一些差异:
- 在适用情况下,手表应用使用手表专用的 API(例如,针对圆形布局、穿戴式设备抽屉式导航栏、微光模式等的 API)。
- 手表应用包含适合手表的功能。
-
手表应用可以使用许多标准的 Android API,但不支持以下 API:
在使用某个 API 之前,您可以通过调用
hasSystemFeature()
来检查手表是否支持某项功能。
节省手表的电量
如需节省手表的电量,可在应用中启用微光模式。当手表在 Activity 中处于闲置状态时,或当用户用手掌遮挡屏幕时,手表将从互动模式转换为微光模式。可转换为微光模式的手表应用称为始终开启的应用。下面介绍了始终开启的应用的两种操作模式:
- 互动模式
- 在此模式下使用全彩色处理流体动画。应用可对输入做出响应。
- 微光模式
- 在此模式下,使用黑白色图形渲染屏幕,且不显示任何输入提示。只有运行 Android 5.1 或更高版本的设备支持此显示模式。
在 Android 版本低于 5.1 的设备上,或者对于不支持微光模式的应用,当用户在某个 Activity 中未执行任何操作或用手掌遮挡屏幕时,系统将显示 Wear 主屏幕,而不是在微光模式下显示 Activity。如果您需要在 Android 版本低于 5.1 的设备上显示持久性内容,请在情境卡片信息流中创建通知。