在 Wear 上创建输入法编辑器

Wear OS 通过扩展 Android 输入法编辑器 (IME) 框架,支持语音以外的输入法。IME 框架提供了对虚拟屏幕键盘的支持,使用户可以通过按键、手写或手势输入文本。

Wear OS 用户可以通过远程输入选择各种输入选项。这些选项包括

  • 听写
  • 表情符号
  • 预设回复
  • 智能回复
  • 默认输入法

创建适用于 Wear 的输入法

Android 平台提供了一个用于创建 IME 的标准框架。要创建特定于 Wear OS 的 IME,您需要针对可穿戴设备的有限屏幕尺寸优化 IME。

特定于 Wear OS 的 IME 过滤器

要了解如何为 Wear OS 创建输入法,请按照指南在手机上创建输入法。然后,将以下部分中的 Google Play 过滤器添加到您的清单文件中,使其成为特定于 Wear OS 的 IME。

API 级别

如果您正在为 Wear OS 开发 IME,请记住该功能仅在 Android 6.0(API 级别 23)及更高版本上受支持。要确保您的 IME 只能安装在支持语音以外的输入法的可穿戴设备上,请将以下内容添加到您的应用的清单中

<uses-sdk android:minSdkVersion="23" />

设备功能集

要控制您的应用如何从不支持 Wear OS IME 的设备(如 iPhone)中过滤,请将以下内容添加到您的应用的清单中

<uses-feature android:required="true" android:name="android.hardware.type.watch" />

调用输入法

Wear OS 在手表上提供用户设置,使用户可以从已安装 IME 列表中启用多个 IME。用户启用您的 IME 后,他们可以从以下位置调用您的 IME

  • 使用 RemoteInput API 的通知或应用。
  • 带有 EditText 字段的 Wear OS 应用。触摸文本字段会将光标放置在字段中,并在获得焦点时自动显示 IME。

一般 IME 注意事项

在为 Wear 实现 IME 时,请考虑以下事项

  • 设置默认操作。

    RemoteInput 和 Wear OS 应用仅期望单行文本输入。始终使用 Enter 键触发对 sendDefaultEditorAction 的调用,这会导致应用隐藏键盘并继续执行下一步或操作。

  • 使用全屏模式 IME。

    Wear OS 上的输入法覆盖了大部分屏幕,使应用的可见区域非常小。使用全屏模式可以提供最佳的用户体验,无论应用 UI 如何。在全屏模式下,ExtractedText 提供正在编辑的文本字段的镜像视图,并且可以进行样式设置以与输入法 UI 的其余部分融合。有关全屏模式的更多详细信息,请参阅 InputMethodService.

  • 处理 InputType 标志。

    至少出于隐私原因,在您的 IME 中处理 InputType 标志 TYPE_TEXT_VARIATION_PASSWORD。当您的 IME 处于密码模式时,请确保您的键盘针对单键按下进行了优化,这意味着自动拼写校正、自动完成和手势输入已禁用。最重要的是,密码模式下的键盘必须支持美国信息交换标准代码 (ASCII) 符号,无论输入语言如何。有关更多详细信息,请参阅 指定输入方法类型

  • 提供一个切换到下一个输入方法的键。

    Android 允许用户在平台支持的所有 IME 之间切换。在您的 IME 实现中,将布尔值 supportsSwitchingToNextInputMethod 设置为 true。这使您的 IME 支持切换机制,以便应用程序可以切换到下一个平台支持的 IME。要了解有关如何实现 IME 之间切换的更多信息,请参阅 IME 子类型之间的切换