Android系统修改AOSP输入法默认输入语言

Android系统中的Android键盘(AOSP)有个语言设置选项,里面默认的是“使用系统语言”,现在客户要求关闭默认“使用系统语言”,打开美式英语。即默认如下图:Android系统修改AOSP输入法默认输入语言_第1张图片

网上很多方法都是设置输入法的Settings.Secure.SELECTED_INPUT_METHOD_SUBTYPE属性为 -921088104。实际测试在Android11系统中没有效果。

另外一种方法是,在设置使能输入法的时候,传入输入法默认输入语言的哈希值。即在设置Settings.Secure.ENABLED_INPUT_METHODS属性值的时候,后面添加默认语言。修改方法是在frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java中添加ENABLED_INPUT_METHODS属性的设置语句。

    private void loadSecureSettings(SQLiteDatabase db) {
        SQLiteStatement stmt = null;
        try {
            stmt = db.compileStatement("INSERT OR IGNORE INTO secure(name,value)"
                    + " VALUES(?,?);");

            // Don't do this.  The SystemServer will initialize ADB_ENABLED from a
           

你可能感兴趣的:(Android系统差异化开发,android,输入法,AOSP,输入法默认输入语言)