Android 更改键盘时虚拟键盘出现两次

Android virtual keyboard appears twice when changing keyboard

最近,我们的 Android 虚拟键盘在 Change keyboard 列表中出现了两次。现在我确定没有安装调试版本或类似版本,所以我 绝对 确定只安装了 app/keyboard 的 1 个版本。

故障实际上已经出现在 Available virtual keyboard 列表中,我们的虚拟键盘下支持的语言显示了两次。

如果我们重新格式化设备(对我们的用户不太有用),问题可以解决。

因此,仅在元数据中引用的 xml 中定义了 1 个子类型就解决了这个问题:

<service><meta-data android:resource="@xml/reference"></service>

<?xml version="1.0" encoding="utf-8"?>
<input-method xmlns:android="http://schemas.android.com/apk/res/android"
    android:settingsActivity="com.your.settingsactivity"
    android:supportsSwitchingToNextInputMethod="true"
    >
    <subtype
        android:label="subtype"
        android:imeSubtypeLocale="en_US"
        android:imeSubtypeMode="keyboard" />
</input-method>