手机
当前位置:查字典教程网 >编程开发 >安卓软件开发 >Android 如何修改默认输入法
Android 如何修改默认输入法
摘要:一、适用于ICS(AndroidV4.0)之前的版本:1.安装需要用的默认输入法(.apk)到system/app2.修改文件framewo...

一、适用于ICS(Android V4.0)之前的版本:

1. 安装需要用的默认输入法(.apk)到system/app

2. 修改文件 frameworks/base/packages/SettingsProvider/res/values/defaults.xml

默认输入法 ID

红色标记表示输入法 ID,比如 PinyinIME 为:com.android.inputmethod.pinyin/.PinyinIME

二、适用于 ICS、JB、JB2及之后的 版本:

1. 需要提前将用到的默认输入法(.apk)内置到系统中(请参考如何将APK预置进系统)

2. 修改文件 mediatek/config/${Project}/ProjectConfig.mk

将宏 DEFAULT_INPUT_METHOD 的值设置为所需的输入法;

比如 PinyinIME,则设为:DEFAULT_INPUT_METHOD = com.android.inputmethod.pinyin.PinyinIME

这个值是输入法源码中,包含InputMethodService子类的那个包名.实现InputMethodService的子类的类名。这里比log中打印的完整类名少一个"/",请注意

补充说明:

上面的修改方法只适用于默认输入法为com.android.inputmethod.pinyin/.PinyinIME这种格式的输入法(即反斜杠后面就是类名的情况),

对于com.google.andr

tin/tinIME (即反斜杠后面是完整类名的情况),

这种情况是不支持修改mediatek/config/${Project}/ProjectConfig.mk

里面DEFAULT_INPUT_METHOD的方法来设置默认输入法的。

以com.google.andr

tin/tinIME 为例

请改用下面的方法修改,在SettingsProvider 的DatabaseHelper.java中

Log.i(TAG, "defaultIME : " + defaultIME);

if (defaultIME != null) {

StringBuffer strBuffer = new StringBuffer(defaultIME);

int lastDotPos = stIndexOf(".");

String strInsert = "/";

strBuffer.insert(lastDotPos, strInsert);

loadSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD,

strBuffer.toString());

} else {

Log.i(TAG, "default IME from IMEFeatureOption is null!!");

}

请将默认的初始化部分code删除,即将 下面的code都删除掉。

Log.i(TAG, "defaultIME : " + defaultIME);

if (defaultIME != null) {

StringBuffer strBuffer = new StringBuffer(defaultIME);

int lastDotPos = stIndexOf(".");

String strInsert = "/";

strBuffer.insert(lastDotPos, strInsert);

loadSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD,

strBuffer.toString());

} else {

Log.i(TAG, "default IME from IMEFeatureOption is null!!");

}

然后在删除的后面添加

loadSetting(stmt, Settings.Secure.ENABLED_INPUT_METHODS,

"com.google.andr

tin/tinIME"); //这里修该默认enable的输入法

loadSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD,

"com.google.andr

tin/tinIME");//这里修改默认选中的输入法

【Android 如何修改默认输入法】相关文章:

android am pm命令

android屏蔽返回键和Home键

android开发之欢迎界面的小例子

android广播接收者实例

Android 获取进程内存使用情况方法

Android当修改一些代码时使用什么编译命令可以最有效率

Android 如何收集已发布程序的崩溃信息

Android 使用XML做动画UI的深入解析

Android屏幕亮度调节

Android 桌面Widget开发要点解析(时间日期Widget)

精品推荐
分类导航