admin管理员组

文章数量:1632445

文章目录

    • 开发平台基本信息
    • 问题描述
    • 解决方法

开发平台基本信息

芯片: MSM8909
版本: Android 8.1
kernel: msm-3.18

问题描述

Android原生系统默认的输入法只支持英语输入,而经常有客户要求内置其他语言的输入法,比如中文拼音、韩语、法语等等。为了维护固件的统一性,第三方输入法我一般不会编译到内核中,都是后续通过oem镜像或者静默安装内置的;将输入法安装进系统发现第三方输入法不会默认启用,需要到系统设置的输入法中进行启用。

解决方法

--- a/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
+++ b/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
@@ -18,6 +18,7 @@
 -->
 <resources>
     <bool name="def_dim_screen">true</bool>
+    <string name="google_input_method" translatable="false">com.google.android.inputmethod.pinyin/.PinyinIME</string>
     <integer name="def_screen_off_timeout">60000</integer>
        <integer name="Telpo_screen_never_sleep">2147483646</integer>
     <integer name="def_sleep_timeout">-1</integer>
--- a/frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
+++ b/frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
@@ -2399,6 +2399,9 @@ class DatabaseHelper extends SQLiteOpenHelper {
 
             loadStringSetting(stmt, Settings.Secure.LOCATION_PROVIDERS_ALLOWED,
                     R.string.def_location_providers_allowed);
+
+            loadStringSetting(stmt, Settings.Secure.ENABLED_INPUT_METHODS,R.string.google_input_method);
+
 
             // Don't do this.  The SystemServer will initialize ADB_ENABLED from a
             // persistent system property instead.

本文标签: 第三方输入法高通