一、删除原生输入法
- 1 . 删除build/target/product/core.mk 文件下的原生输入法:
PRODUCT_PACKAGES +=
BasicDreams
BlockedNumberProvider
#LatinIME 删除
Calendar
CalendarProvider
...
- 2 . 删除device/qcom/common/base.mk 文件下的原生输入法:
PRODUCT_PACKAGES :=
AccountAndSyncSettings
DeskClock
#LatinIME 删除
AlarmProvider
Bluetooth
Calculator
...
二、添加系统默认输入法
- 1 . 将第三方输入法APK编译到system/app 目录下:
- 2 . 在 frameworks/base/core/res/res/values/config.xml 添加一个需要的输入法属性(实例为讯飞):
<string name="config_default_input_method" translatable="false">
com.iflytek.inputmethod/.FlyIME</string>
- 3 . 在frameworks/base/services/java/com/android/server/InputMethodManagerService.java 里添加:
void buildInputMethodListLocked(boolean resetDefaultEnabledIme) {
...
//add start
String defaultIme = Settings.Secure.getString(mContext.getContentResolver(),
Settings.Secure.DEFAULT_INPUT_METHOD);
if (defaultIme == null) {
final Resources res = mContext.getResources();
try {
//frameworksbasecoreresresvaluesconfig.xml
String myIME = res.getString(com.android.internal.R.string.config_default_input_method);
if (myIME != null && myIME.length() > 0) {
Settings.Secure.putString( mContext.getContentResolver(),
Settings.Secure.DEFAULT_INPUT_METHOD, myIME);
}
} catch (Exception e) {
}
}
// add end
...
- 4 .常见输入法的包名和类名
百度:com.baidu.input/.ImeService
讯飞:com.iflytek.inputmethod/.FlyIME
腾讯:com.tencent.qqpinyin/.QQPYInputMethodService
谷歌:com.google.android.inputmethod.pinyin/.PinyinIME
搜狗:com.sohu.inputmethod.sogou/.SogouIME
触宝:com.cootek.smartinput5/.TouchPalIME
最后
以上就是友好皮带最近收集整理的关于Android 7.0 删除原生输入法(AOSP)&更换系统默认输入法的全部内容,更多相关Android内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复