Android 7.0 删除原生输入法(AOSP)&更换系统默认输入法

一、删除原生输入法

1 . 删除build/target/product/core.mk 文件下的原生输入法:

PRODUCT_PACKAGES +=

BasicDreams

BlockedNumberProvider

#LatinIME \ 删除

Calendar

CalendarProvider

1

2

3

4

5

6

7

2 . 删除device/qcom/common/base.mk 文件下的原生输入法:

PRODUCT_PACKAGES :=

AccountAndSyncSettings

DeskClock

#LatinIME \ 删除

AlarmProvider

Bluetooth

Calculator

1

2

3

4

5

6

7

8

二、添加系统默认输入法

1 . 将第三方输入法APK编译到system/app 目录下:

2 . 在 frameworks/base/core/res/res/values/config.xml 添加一个需要的输入法属性(实例为讯飞):

com.iflytek.inputmethod/.FlyIME

1

2

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 {

//frameworks\base\core\res\res\values\config.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

...

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

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

————————————————

版权声明:本文为CSDN博主「客道早安」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/xiao_shiyi128/article/details/80015798

[an error occurred while processing the directive]
Copyright © 2088 迷你世界杯_竞猜世界杯 - xhfzmy.com All Rights Reserved.
友情链接