[Description]
如何修改默认输入法?
[Solution]
一、适用于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、KK的 版本:
1. 需要提前将用到的默认输入法(.apk)内置到系统中(请参考如何将APK预置进系统)
2. 修改文件 mediatek/config/${Project}/ProjectConfig.mk
将宏 DEFAULT_INPUT_METHOD 的值设置为所需的输入法;
比如 PinyinIME,则设为:DEFAULT_INPUT_METHOD = com.android.inputmethod.pinyin.PinyinIME
这个值是输入法源码中,包含InputMethodService子类的那个包名.实现InputMethodService的子类的类名。这里比log中打印的完整类名少一个"/",请注意
补充说明:
KK的版本不需要一下修改:
上面的修改方法只适用于默认输入法为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");//这里修改默认选中的输入法
分享到:
相关推荐
总结,将Google拼音输入法设置为默认输入法并预置到高通8909平台的Android系统中,涉及对Android源码的深入理解,包括输入法服务、系统设置、编译流程等多个方面。这个过程既需要技术知识,也需要对Android系统的...
【MTK平台输入法详解】 MTK平台输入法是针对基于联发科(Mediatek)芯片的手机系统设计的一种输入方法,它涉及到人机交互界面的关键组件,为用户提供便捷的文字输入体验。本文将深入解析MTK平台上的两种主要输入方式...
android高通与mtk平台thermal管理机制,描述了如何定制Thermal与如何解读Thermal。
本主题将深入探讨在MTK(MediaTek)平台上Android Sensor驱动代码的工作原理和分析方法。 MTK平台是智能手机和平板电脑等移动设备常见的芯片解决方案提供商之一。其Android Sensor驱动主要是为了适配MTK硬件特性,...
MTK 平台 Android 下的音频测试程序 Tinyalsa Tinyalsa 是 Google 在 Android 4.0 之后推出的基于 ALSA 内核的用户层音频接口。在 Android 4.0 之前,Android 使用的是 ALSA-lib 接口。Tinyalsa 的出现可能是因为 ...
### MTK平台下Android开发比较学习笔记 #### 一、引言 近年来,随着移动互联网技术的迅猛发展,智能手机已成为人们日常生活中不可或缺的一部分。而Android操作系统作为全球市场份额最大的移动操作系统,其背后的...
本项目聚焦于MTK平台上的锁屏壁纸功能,提供了一套完整的代码实现,包括了大量的Android源码,有助于开发者深入理解和定制锁屏壁纸。 首先,我们来看锁屏壁纸的基本概念。锁屏壁纸是在用户解锁设备前显示的背景图像...
MTK (MediaTek) Android 编译环境搭建是Android开发者在使用MediaTek芯片进行设备定制或应用开发时必要的步骤。这个过程主要分为四个简单的步骤,适用于包括MT6575、MT6577、MT6572和MT6589在内的多个MediaTek处理器...
该patch支持Google自带相机打开USB摄像头,无需libuvc支持,也就是说应用就像处理mipi camera一样处理usb camera即可。注此patch基于MT8163,其他平台做相应移植即可
MTK平台移植Camera步骤详解 MTK平台移植Camera的步骤是一个复杂的过程,涉及到多个模块和配置文件的修改。本文将详细介绍MTK平台移植Camera的步骤,并对每一个步骤中的易错点、容易忽略点进行了介绍。 Step 1: ...
MTK平台EMCP老化自动测试程序是针对采用MediaTek(MTK)芯片的智能手机进行内存性能评估和稳定性验证的一种工具。EMCP(Embedded Multi-Media Card Package)是将eMMC(Embedded Multi Media Card)和LPDDR(Low ...
介绍 MTK平台 Android13 新特性(密码:3504710444)
MTK Android 平台资料 MTK Android 平台资料是由 MediaTek 公司开发的 Android 平台解决方案,旨在提供一站式的解决方案 для Android 设备制造商。该平台提供了详细的技术文档、软件开发工具包 (SDK) 和参考设计...
在本文中,我们将深入探讨如何在Android系统上针对MTK(MediaTek)平台驱动FT6336U电容触摸屏。FT6336U是一款广泛应用在小尺寸设备如手环、手表上的电容触控芯片,它基于Cortex-M0微控制器系列。这个驱动代码资料...
在MTK(MediaTek)平台的GPS硬件层中,RTK(Real-Time Kinematic)驱动的修改是一项关键的技术任务,其目标是实现高精度的定位功能。RTK是一种基于载波相位差分技术的GPS定位方法,可以显著提高定位精度至厘米级别,...
MTK(MediaTek)平台是全球知名的半导体公司联发科推出的手机芯片解决方案,以其高性价比和功能集成性在智能手机市场占据一席之地。本资料集合主要涵盖了MTK平台的软件架构、编译过程以及与其他平台的对比分析,旨在...
总的来说,"MTK外设android驱动添加编译配置官方手册"是一个宝贵的资源,它为开发者提供了从驱动开发到系统集成的完整流程,有助于高效地实现MTK6735平台上外设功能的扩展和优化。通过深入学习和实践,开发者可以更...
Android13 默认锁屏方式为无.patch