android預設輸入法配置
此方法的優點是一次肯定搞定,所以寫一下 android版本4.03
這個方法是不用區分版本的,基本上都有效
1.手機開機,安裝上你要預設配置的輸入法,並且將其設定為預設輸入法
2.連結adb,匯出資料庫(4.03的user版本的話,命令列adb root 就有root許可權,以後的版本你需要使用eng版本,如4.22需要 adb remount 一下)
匯出檔案/data/data/com.android.providers.settings/database/settings.db
3.使用sql工具開啟settings.db ,我用的是Navicat for SQLite,查看錶secure,
4.開啟檔案 /frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
到函式 private void loadSecureSettings(SQLiteDatabase db)
新增程式碼
private void loadSecureSettings(SQLiteDatabase db) {
SQLiteStatement stmt = null;
try {
stmt = db.compileStatement("INSERT OR IGNORE INTO secure(name,value)"
+ " VALUES(?,?);");
loadBooleanSetting(stmt, Settings.Secure.BLUETOOTH_ON,
R.bool.def_bluetooth_on);
loadStringSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD,
R.string.default_input_method);
// Data roaming default, based on build
loadSetting(stmt, Settings.Secure.DATA_ROAMING,
"true".equalsIgnoreCase(
SystemProperties.get("ro.com.android.dataroaming",
"false")) ? 1 : 0);
。。。。。。。。
5.配置xml檔案 \frameworks\base\packages\SettingsProvider\res\values/defaults.xml
新增預設輸入法
<string name="default_input_method" translatable="false">
com.thihaayekyaw.frozenkeyboard/com.example.android.softkeyboard.SoftKeyboard</string>
6.大功告成