1.在framework/base/packages/SettingProvider/res/values/defaults.xml的最后添加
<string name="config_default_input_method_baidu" translatable="false">com.baidu.input_benewtech/com.baidu.input.ImeService</string>
<string name="config_enabled_input_method_baidu" translatable="false">com.baidu.input_benewtech/com.baidu.input.ImeService</string>
2.framework/base/packages/SettingProvider/src/com/android/providers/settings/DatabaseHelper.java中的loadSecureSettings(SQliteDatabase db)方法中添加
loadStringSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD,R.string.config_default_input_method_baidu);
loadStringSetting(stmt, Settings.Secure.ENABLED_INPUT_METHODS,R.string.config_enabled_input_method_baidu);
3.framework/base/packages/SettingProvider/src/com/android/providers/settings/SettingsProvider.java的内部类UpgradeController中的变量
private static final int SETTINGS_VERSION = 150;//增加2个版本号
在onUpgradeLocked方法的注入加入
if (currentVersion == 148) {
// Version 148: Set the default value for DEFAULT_INPUT_METHOD.
final SettingsState secureSettings = getSecureSettingsLocked(userId);
final Setting currentSetting = secureSettings.getSettingLocked(Settings.Secure.DEFAULT_INPUT_METHOD);
if (currentSetting.isNull()) {
final String defaultValue = getContext().getResources().getString(R.string.config_default_input_method_baidu);
if (defaultValue != null) {
secureSettings.insertSettingLocked(Settings.Secure.DEFAULT_INPUT_METHOD,
defaultValue, null, true, SettingsState.SYSTEM_PACKAGE_NAME);
}
}
currentVersion = 149;
}
if (currentVersion == 149) {
// Version 149: Set the default value for ENABLED_INPUT_METHODS.
final SettingsState secureSettings = getSecureSettingsLocked(userId);
final Setting currentSetting = secureSettings
.getSettingLocked(Settings.Secure.ENABLED_INPUT_METHODS);
if (currentSetting.isNull()) {
final String defaultValue = getContext().getResources().getString(R.string.config_enabled_input_method_baidu);
if (defaultValue != null) {
secureSettings.insertSettingLocked(Settings.Secure.ENABLED_INPUT_METHODS,
defaultValue, null, true, SettingsState.SYSTEM_PACKAGE_NAME);
}
}
currentVersion = 150;
}