踩坑之默认输入法配置
程序员文章站
2022-06-05 15:59:06
...
前言
在实际项目开发过程中,需要集成客户的输入法,但Android原生并不支持输入法的配置。在这里记录下实际操作。
支持默认输入法配置
Android原生并不支持默认输入法的设置,默认就是谷歌原生的输入法。如果要默认配置使用搜狗输入法或者QQ拼音输入法的话,可以使用如下方法:
1.安装对应输入法的安装包,install或者系统内置都可以;
2.在设置的数据库中直接加载默认的输入法
frameworks/base/packages/SettingsProvider/src/values/default
private void loadSecureSettings(SQLiteDatabase db) {
.....
//在这里加上默认输入法的加载
loadStringSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD, R.string.default_input_method);
loadStringSetting(stmt, Settings.Secure.ENABLED_INPUT_METHODS, R.string.enabled_input_methods);
....
}
复制代码
一般setting的默认配置项都是通过SettingProvider来进行配置的,如上的文件,就用于加载各种默认的配置项,在此加上输入法的默认配置。所以,在此我们还得在如下文件中增加输入法的配置:
frameworks/base/packages/SettingsProvider/res/values/default.xml
<string name="enabled_input_methods" translatable="false">com.android.inputmethod.latin/.LatinIME</string>
<string name="default_input_method" translatable="false">com.android.inputmethod.latin/.LatinIME</string>
复制代码
如上是配置了原生的输入法,如果配置使用QQ拼音输入法,则如下配置:
<string name="enabled_input_methods" translatable="false">com.tencent.qqpinyin/.QQPYInputMethodService</string>
<string name="default_input_method" translatable="false">com.tencent.qqpinyin/.QQPYInputMethodService</string>
复制代码
查找当前可用的输入法,可使用如下指令:
ime list -s
复制代码
使用adb指令设置查看当前输入法和设置输入法,可使用如下方法:
settings get secure default_input_method //获取当前输入法
settings put secure default_input_method com.tencent.qqpinyin/.QQPYInputMethodService //设置当前输入法为qq输入法
复制代码
互动
如果文章存在错误描述,可直接留言,一起探讨!
最后
我在微信公众号也有写文章,更新比较及时,有兴趣者可以关注如下公众号!
上一篇: 笔记: js构造函数与原型
下一篇: JavaScript变量与数据类型详解