方式一
frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java
Settings.System.putString(context.getContentResolver(),Settings.System.SYSTEM_LOCALES, "ru-RU,en-US");
方式2
packages/apps/Settings/src/com/android/settings/localepicker/LocaleListEditor.java
private boolean isadd = true;
private List<LocaleStore.LocaleInfo> getUserLocaleList() {final List<LocaleStore.LocaleInfo> result = new ArrayList<>();final LocaleList localeList = LocalePicker.getLocales();for (int i = 0; i < localeList.size(); i++) {Locale locale = localeList.get(i);result.add(LocaleStore.getLocaleInfo(locale));if(locale.toString().equals("en_US")) {isadd = false;}if(isadd){Locale localeVN =new Locale("en","US");result.add(LocaleStore.getLocaleInfo(localeVN));}}return result;
}
方式三
import com.android.internal.app.LocalePicker;
import java.util.Locale;
import android.os.LocaleList;final Locale locale1 = new Locale("ru","RU"); final Locale locale2 = new Locale("en","US"); final Locale[] newList = {locale1,locale2};final LocaleList ll = new LocaleList(newList);LocalePicker.updateLocales(ll);
设置添加 输入法语言列表,同时自动关闭 'use system languages'
Settings.Secure.putString(getContentResolver(),
"enabled_input_methods",
"com.android.inputmethod.latin/.LatinIME;-921088104;1983547218");