android 设置默认切换键盘





android 设置默认切换键盘




原文转载自 http://hi.baidu.com/eliselong/item/a28f6c1894a8bb4b3b176e07

在android中,系统默认输入键盘是US,但是不同国家有不同的常用输入键盘,US 一般普遍常用,因此将US 和 常用输入键盘设定为默认的键盘切换。(以Russia为例)

1)在frameworks/base/packages/SettingsProvider/res/values/defaults.xml 中添加:

    com.android.inputmethod.latin/.LatinIME;1983547218;-921088104

com.android.inputmethod.latin/.LatinIME — 系统最初默认值

-921088104 — US 键盘输入 id

1983547218 — Russia 键盘输入 id

id 值可能还可以通过别的获取方式指定,还没找到更好的方法,只能笨拙地实现基本功能先。

不同输入键盘的 id 值可以在/packages/apps/Settings/src/com/android/settings/inputmethod/InputMethodAndSubtypeUtil.java中获取,updateSubtypesPreferenceChecked方法中bhashCode = String.valueOf(subtype.hashCode()) 可读取到 id。


2)在 frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java 中添加:

            loadStringSetting(stmt, Settings.Secure.LOCATION_PROVIDERS_ALLOWED,

                    R.string.def_location_providers_allowed);


            loadStringSetting(stmt, Settings.Secure.ENABLED_INPUT_METHODS,

                    R.string.def_input_method);// default input method

    

            loadBooleanSetting(stmt, Settings.Secure.ASSISTED_GPS_ENABLED,

                    R.bool.assisted_gps_enabled);

OK ,简简单单地就实现了。可我费的时间可不少,悲催的菜菜。

谁有更好的方法么,赐教赐教……

你可能感兴趣的:(android相关)