在 Wear 上创建输入法编辑器

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

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

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

为 Wear 创建输入法

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

Wear OS 特定的输入法过滤器

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

API 级别

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

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

设备功能集

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

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

调用输入法

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

  • 使用 RemoteInput API 的通知或应用。
  • 带有 EditText 字段的 Wear OS 应用。点击文本字段会将光标放置在字段中,并在聚焦时自动显示输入法。

通用输入法注意事项

在为 Wear 实现输入法时,请考虑以下事项

  • 设置默认操作。

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

  • 使用全屏模式输入法。

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

  • 处理 InputType 标志。

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

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

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