Android NDK开发详解Wear之在 Wear 上创建输入法


Wear OS 通过扩展 Android 输入法 (IME) 框架,对语音以外的输入法提供支持。IME 框架提供了对虚拟屏幕键盘的支持,从而允许用户以点击按键、手写或手势的形式输入文本。

Wear OS 用户可从远程输入中选择各种输入选项。这些选项包括:

语音输入
表情符号
预设回复
智能回复
默认 IME
在这里插入图片描述

图 1. 输入法示例

Wear OS 随附系统默认输入法 (IME),但也向第三方开发者开放 IME API,供其创建自定义 IME。用于 Wear OS 设备的 IME API 与用于其他设备类型的相同,但由于屏幕尺寸有限,因而在用法上略有不同。

本文档将提供指导,帮助您创建 Wear OS 专用 IME

为 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 上的输入法占用了屏幕的大部分空间,使得用户只能看到应用的很小一部分。不管使用哪种应用界面,使用全屏模式都可以确保出色的用户体验。在全屏模式下,ExtractedText 可提供所修改文本字段的镜像视图,并且可为其设置适当的样式,使其与输入法界面的其余部分浑然一体。如需详细了解全屏模式,请参阅 InputMethodService。

处理 InputType 标志。

出于隐私原因,您至少应处理您的 IME 中的 InputType 标志 TYPE_TEXT_VARIATION_PASSWORD。当 IME 处于密码模式时,请确保针对单次按键优化键盘(停用自动拼写更正、自动完成和手势输入)。最重要的是,不管使用哪种输入语言,处于密码模式的键盘都应支持 ASCII 符号。如需了解详情,请参阅指定输入法类型。

提供用于切换到下一个输入法的键

Android 允许用户在平台支持的所有 IME 之间轻松切换。在您的 IME 实现中,将布尔值 supportsSwitchingToNextInputMethod 设置为 true。这样一来,您的 IME 便可支持切换机制,让应用能够切换到平台支持的下一个 IME。如需详细了解如何实现 IME 之间的切换,请参阅在 IME 子类型之间切换。

本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。

最后更新时间 (UTC):2022-09-07。

  • 19
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五一编程

程序之路有我与你同行

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值