Android 7.0设置默认输入法参考下面的文章

Android修改默认输入法

切换系统语言之后,系统会默认将输入法切换到Andorid Keyboard(AOSP)

/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodUtils.java

isSystemImeThatHasSubtypeOf()方法中添加

        if ("com.google.android.leanback.ime".equals(imi.getPackageName())) {
            return true;
        }

因为我默认使用的是Leanback Keyboard所以设置包名com.google.android.leanback.ime

7.0 Android系统修改默认输入法后,切换系统语言时输入法自动切到AOSP的解决办法_第1张图片


2018年3月23日更新

发现该问题有了新的解决办法

在AOSP输入法应用中,找到AndroidManifest.xml文件,发现在LatinIME中有一个method文件

7.0 Android系统修改默认输入法后,切换系统语言时输入法自动切到AOSP的解决办法_第2张图片

继续往下进入发现在xml/method.xml文件中有一个isDefault属性,继续往下看


找到values/bools.xml文件,看到属性im_is_default的解释是,当前输入法是否要被设置为当前locale的默认输入法来支持相应的语言。

7.0 Android系统修改默认输入法后,切换系统语言时输入法自动切到AOSP的解决办法_第3张图片

也就是说我们可以在每个语言对应的values文件夹下添加bools.xml文件进行默认语言的配置,像这样

7.0 Android系统修改默认输入法后,切换系统语言时输入法自动切到AOSP的解决办法_第4张图片

所以该问题又可以这样来处理,直接将isDefault="false",则所有语言都不会默认使用AOSP输入法,就解决了

更多相关文章

  1. 如何在android 系统 C/C++ 层中添加 log 信息
  2. 转 Android中进入系统设置界面
  3. 找不到android系统库的解决方案
  4. [ ]在Android系统上使用busybox——最简单的方法
  5. 【原创】Android之修改AlertDialog对话框及使用系统Holo风格
  6. 部分 CM11 系统 Android 平板执行植物大战僵尸 2 黑屏的解决的方
  7. Android输入法挤乱布局问题

随机推荐

  1. 用C/C++开发android应用
  2. Android(安卓)串口开发知识总结(未完待续)
  3. android应用开发入门
  4. windowSoftInputMode属性详解(Android)
  5. android 安卓系统
  6. Android多线程系统概述(sundy深入浅出)之进
  7. Android(安卓)面试题(1)
  8. libusb移植到Android开发板
  9. Android简明开发教程九:创建应用程序框架
  10. android各个版本的名称和更新