Android 5.1設定預設輸入法
阿新 • • 發佈:2019-02-16
1,frameworks/base/core/res/res/values中的config.xml
<string-array name="config_disabledUntilUsedPreinstalledImes" translatable="false">
<item>com.android.inputmethod.latin</item>
</string-array>
修改為:<string-array name="config_disabledUntilUsedPreinstalledImes" translatable="false"> <item>com.xxx.xxx</item> </string-array>
注:com.xxx.xxx為新設定的輸入法包名
2,相應的輸入法放到aosp原始碼中
3,Settings中刪除拼寫檢查
packages/apps/Settings/res/xml/language_settings.xml
註釋以下程式碼
<!-- 取消拼寫檢查 <PreferenceScreen android:key="spellcheckers_settings" android:title="@string/spellcheckers_settings_title" android:persistent="false" /> -->
InputMethodAndLanguageSettings.java
// Spell Checker /* * final Preference spellChecker = findPreference(KEY_SPELL_CHECKERS); if (spellChecker != null) { // Note: KEY_SPELL_CHECKERS preference is marked as persistent="false" in XML. InputMethodAndSubtypeUtil.removeUnnecessaryNonPersistentPreference(spellChecker); final Intent intent = new Intent(Intent.ACTION_MAIN); intent.setClass(activity, SubSettings.class); intent.putExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT, SpellCheckersSettings.class.getName()); intent.putExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT_TITLE_RESID, R.string.spellcheckers_settings_title); spellChecker.setIntent(intent); }*/ /* * final Preference spellChecker = findPreference(KEY_SPELL_CHECKERS); if (spellChecker != null) { final TextServicesManager tsm = (TextServicesManager) getSystemService( Context.TEXT_SERVICES_MANAGER_SERVICE); if (tsm.isSpellCheckerEnabled()) { final SpellCheckerInfo sci = tsm.getCurrentSpellChecker(); spellChecker.setSummary(sci.loadLabel(getPackageManager())); } else { spellChecker.setSummary(R.string.switch_off_text); } }*/