【发布时间】:2013-05-29 20:19:59
【问题描述】:
我有一个代码来检查设备中 TTS 引擎的可用性。由于语句 tts.getEngines().size()
提前致谢
代码:
private void checkTTSAvailability() {
tts = new TextToSpeech(this, this);
ttsPresent=true;
**if (tts.getEngines().size() < 1) {**
PackageManager pm = getPackageManager();
Intent installIntent = new Intent();
installIntent.setAction(TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA);
ResolveInfo resolveInfo = pm.resolveActivity(installIntent, PackageManager.MATCH_DEFAULT_ONLY);
if (resolveInfo == null) {
Log.i("DragDrop", "No voice support on your phone");
Dialog d = new Dialog(this);
d.setTitle("Alert ");
TextView tv = new TextView(this);
tv.setText("No voice support on your phone");
d.setContentView(tv);
d.show();
ttsPresent=false;
// Not able to find the activity which should be started for
// this intent
} else {
Dialog d = new Dialog(this);
d.setTitle("Alert ");
TextView tv = new TextView(this);
tv.setText("Installing");
d.setContentView(tv);
d.show();
Log.i("DragDrop", "Installing");
startActivity(installIntent);
}
}
}
【问题讨论】: