一、安装输入法并查看输入法包名
本次要安装的是百度输入法,安装方法如下:
1.1 adb命令行方式安装
电脑键盘通过win+R组合键弹出输入框,输入cmd进入电脑终端,并执行以下命令:
#查看是否识别到adb设备
adb.exe devices
#让系统获取root权限
adb.exe root#
让系统可读可写
adb.exe remount#
开始安装
adb.exe install /your/target/path/baidu.apk
1.2 U盘/TF卡安装
将输入法apk放置U盘/TF内,插入主板识别到设备后,进入系统桌面找到【资源管理器】应用,点击U盘输入法apk应用安装即可。
安装成功
1.3 查看输入法包名
# ime list -s
com.baidu.input/.ImeService
输出的结果就是该输入法的包名/类名。
二、系统预安装输入法应用
将需要预安装的百度输入法APK放置
device/rockchip/rk356x/rk3566_r/preinstall_del/目录下
(没有preinstall_del目录就手动创建一个即可),并添加以下文件:
- Android.mk
- baidu.apk(APK)
- preinstall.mk
Android.mk文件内容:
include $(call all-subdir-makefiles)
preinstall.mk文件内容:
PRODUCT_PACKAGES += baidu
注意:baidu为APK名字,例如baidu.apk。
三、修改输入法环境变量
将前面第一步获取到的百度输入法包名/类名添加到以下文件:
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
内容如下:
<!-- should show the screenshot button default -->
<integer name="def_screenshot_button_show">0</integer>
+ <!-- set default input method-->
+ <string name="config_default_input_method" translatable="false">com.baidu.input/.ImeService</string>
</resources>
四、修改默认输入法
将前面输入法环境添加到以下文件:
frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
添加内容如下:
class DatabaseHelper extends SQLiteOpenHelper {
loadIntegerSetting(stmt, Settings.Secure.SLEEP_TIMEOUT,
R.integer.def_sleep_timeout);
+ loadStringSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD, R.string.config_default_input_method);//add hjt
/*
* IMPORTANT: Do not add any more upgrade steps here as the global,
* secure, and system settings are no longer stored in a database
添加完重新编译源码即可。
五、查看百度输入法是否为默认输入法
命令行
# settings get secure default_input_method
com.baidu.input/.ImeService
设置默认输入法成功