Android 如何修改默认输入法
前言
欢迎大家我分享和推荐好用的代码段~~
声明
欢迎转载,但请保留文章原始出处:
CSDN:http://www.csdn.net
雨季o莫忧离:http://blog.csdn.net/luckkof
正文
一、适用于ICS(Android V4.0)之前的版本:
1. 安装需要用的默认输入法(.apk)到system/app
2. 修改文件 frameworks/base/packages/SettingsProvider/res/values/defaults.xml
<string name="default_input_method" translatable="false">默认输入法 ID</string>
红色标记表示输入法 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
oid.inputmethod.latin/com.android.inputmethod.latin.LatinIME (即反斜杠后面是完整类名的情况),
这种情况是不支持修改mediatek/config/${Project}/ProjectConfig.mk
里面DEFAULT_INPUT_METHOD的方法来设置默认输入法的。
以com.google.andr
oid.inputmethod.latin/com.android.inputmethod.latin.LatinIME 为例
请改用下面的方法修改,在SettingsProvider 的DatabaseHelper.java中
有
Log.i(TAG, "defaultIME : " + defaultIME);
if (defaultIME != null) {
StringBuffer strBuffer = new StringBuffer(defaultIME);
int lastDotPos = defaultIME.lastIndexOf(".");
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 = defaultIME.lastIndexOf(".");
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
oid.inputmethod.latin/com.android.inputmethod.latin.LatinIME"); //这里修该默认enable的输入法
loadSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD,
"com.google.andr
oid.inputmethod.latin/com.android.inputmethod.latin.LatinIME");//这里修改默认选中的输入法
Android 如何修改默认输入法相关推荐
- android代码修改默认输入法,Android 4.3 源码下如何修改默认输入法
应项目(Android 4.3)需求需要修改默认输入法,本来想的是,这个应该很简单的撒.随google之-,发现网上主要罗列出以下这种方法:在 frameworks\base\core\res 因项目 ...
- android7.0输入法切换,7.0 Android系统修改默认输入法后,切换系统语言时输入法自动切到AOSP的解决办法...
Android 7.0设置默认输入法参考下面的文章 Android修改默认输入法 切换系统语言之后,系统会默认将输入法切换到Andorid Keyboard(AOSP) /frameworks/bas ...
- Android 9.0 禁用屏幕锁屏和修改默认输入法为谷歌输入法功能实现
目录 1.概述 2.禁用屏幕锁屏和修改默认输入法为谷歌输入法功能实现的核心类
- android mtk平台,android mtk平台默认输入法
[Description] 如何修改默认输入法? [Solution] 一.适用于ICS(Android V4.0)之前的版本: 1. 安装需要用的默认输入法(.apk)到system/app 2. ...
- android 内置默认输入法
方法一: 修改文件如下: frameworks\base\packages\SettingsProvider\res\values\defaults.xml ...
- 输入法智能联想 Java_[Android6.0][MTK6737] 修改默认输入法为 Sogou
title: [Android6.0][MTK6737] 修改默认输入法为 Sogou tags: grammar_cjkRuby: true Hardware:MT6737 DeviceOS:And ...
- rk3399 Android7.1 修改系统时区、修改默认输入法、修改系统默认语言
1.修改默认语言 进入源码目录,使用如下命令 root@ubuntu:/3399_backup/g3399-v7-1-2-20180529_backup# find . -name full_base ...
- android设备修改默认桌面为自定义应用
android设备修改默认桌面为自定义应用 应用场景 在一些专用安卓设备(例如丰巢柜),可能需要在点击默认的home键时启动自定义应用,屏蔽用户开启其他应用的入口,可通过下面介绍的方法将自己的应用设置 ...
- Android系统修改默认语言为中文
Android系统修改默认语言为中文 对于Android系统修改默认语言的方法,各个版本的系统方法都差不多一致,至少我在Android5.1和Android9.0使用都成功,具体方法如下: 在buil ...
最新文章
- 31页官方PPT,回顾史上最大芯片WSE:科技的壮丽美感!
- 【效率】如何有效提问
- 有小数点的补码怎么算_写给投资小白,指数基金,在哪买?怎么买?
- 初始化字典的6种方式
- Spark Streaming整合flume实战
- python 编码规范
- 数据分析写作——程序员的另外一种输出
- C语言如何用fopen创建可读写txt
- 2015年 不可不知的五大热点话题
- Android自定义控件(四)——让每一个Activity UI都具有弹性
- 第五章 Spark-SQL进阶(一)之Dataset用法
- toolchain安装教程支持_网上现成toolchain安装操作
- lvds输入悬空_lvds接口定义
- 8个免费恶搞照片在线生成网站
- 网线传输速度测试_「网络速度测试」网络速度测试 - seo实验室
- Android应用生命周期实现简单的秒表App
- powerDesigner 反向生成mysql数据库库
- java 构造器 血药主题_Day08-面向对象编程,Java构造器
- Hadoop实例学习(八)全排序和区排序
- (Emitted value instead of an instance of Error)
热门文章
- arcgis字段计算器赋值_基于ArcGIS的python编程 18、在字段计算器中使用Python脚本
- FFmpeg连载4-音频解码
- sdk和JDK的区别
- Python量化开源框架、库
- casio计算机屏幕坏了,卡西欧相机坏了怎么办
- 想开发一个微信分销商城系统?
- 科沃斯机器人拆解_周末清洁大会战 篇三十七:科沃斯扫地机器人朵朵S四年后的配件选购及终极清洁与拆解,以后不坏不拆,至死不渝!...
- Chrome修改User Agent插件推荐
- java GUI版坦克大战
- gateway笔记本玩《孤胆枪手2》蓝屏的解决