Saving the list of enabled plugins in secure settings so that the
TextToSpeech service can later check which plugins are enabled. Change-Id: I5fce45540c1b7faf466c11b3b76259fde2e7c2ed
This commit is contained in:
@@ -22,6 +22,7 @@ import static android.provider.Settings.Secure.TTS_DEFAULT_LANG;
|
|||||||
import static android.provider.Settings.Secure.TTS_DEFAULT_COUNTRY;
|
import static android.provider.Settings.Secure.TTS_DEFAULT_COUNTRY;
|
||||||
import static android.provider.Settings.Secure.TTS_DEFAULT_VARIANT;
|
import static android.provider.Settings.Secure.TTS_DEFAULT_VARIANT;
|
||||||
import static android.provider.Settings.Secure.TTS_DEFAULT_SYNTH;
|
import static android.provider.Settings.Secure.TTS_DEFAULT_SYNTH;
|
||||||
|
import static android.provider.Settings.Secure.TTS_ENABLED_PLUGINS;
|
||||||
|
|
||||||
import android.app.AlertDialog;
|
import android.app.AlertDialog;
|
||||||
import android.content.ContentResolver;
|
import android.content.ContentResolver;
|
||||||
@@ -652,19 +653,24 @@ public class TextToSpeechSettings extends PreferenceActivity implements
|
|||||||
enginesArray = pm.queryIntentActivities(intent, 0).toArray(enginesArray);
|
enginesArray = pm.queryIntentActivities(intent, 0).toArray(enginesArray);
|
||||||
ArrayList<CharSequence> entries = new ArrayList<CharSequence>();
|
ArrayList<CharSequence> entries = new ArrayList<CharSequence>();
|
||||||
ArrayList<CharSequence> values = new ArrayList<CharSequence>();
|
ArrayList<CharSequence> values = new ArrayList<CharSequence>();
|
||||||
|
String enabledEngines = "";
|
||||||
for (int i = 0; i < enginesArray.length; i++) {
|
for (int i = 0; i < enginesArray.length; i++) {
|
||||||
if (enginesArray[i].activityInfo.packageName.equals(SYSTEM_TTS)) {
|
String pluginPackageName = enginesArray[i].activityInfo.packageName;
|
||||||
|
if (pluginPackageName.equals(SYSTEM_TTS)) {
|
||||||
entries.add(enginesArray[i].loadLabel(pm));
|
entries.add(enginesArray[i].loadLabel(pm));
|
||||||
values.add(enginesArray[i].activityInfo.packageName);
|
values.add(pluginPackageName);
|
||||||
} else {
|
} else {
|
||||||
CheckBoxPreference pref = (CheckBoxPreference) findPreference(
|
CheckBoxPreference pref = (CheckBoxPreference) findPreference(
|
||||||
KEY_PLUGIN_ENABLED_PREFIX + enginesArray[i].activityInfo.packageName);
|
KEY_PLUGIN_ENABLED_PREFIX + pluginPackageName);
|
||||||
if ((pref != null) && pref.isChecked()){
|
if ((pref != null) && pref.isChecked()){
|
||||||
entries.add(enginesArray[i].loadLabel(pm));
|
entries.add(enginesArray[i].loadLabel(pm));
|
||||||
values.add(enginesArray[i].activityInfo.packageName);
|
values.add(pluginPackageName);
|
||||||
|
enabledEngines = enabledEngines + pluginPackageName + " ";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
ContentResolver resolver = getContentResolver();
|
||||||
|
Settings.Secure.putString(resolver, TTS_ENABLED_PLUGINS, enabledEngines);
|
||||||
|
|
||||||
CharSequence entriesArray[] = new CharSequence[entries.size()];
|
CharSequence entriesArray[] = new CharSequence[entries.size()];
|
||||||
CharSequence valuesArray[] = new CharSequence[values.size()];
|
CharSequence valuesArray[] = new CharSequence[values.size()];
|
||||||
|
Reference in New Issue
Block a user