HomeActivity
(1)public TextToSpeech textToSpeech;
(2)onCreate()中调用
private void initTextToSpeech(Context context){
// 传入context及onInitListener
textToSpeech = new TextToSpeech(context, new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status) {
if (status == TextToSpeech.SUCCESS) {//装载TTS引擎成功
//Locale.getDefault()获取系统默认的区域信息:如系统语言设置为中文则参数为 "zho","CHN",设置为美式英语则参数为 "eng","USA"
int result = textToSpeech.setLanguage(new Locale(Locale.getDefault().getISO3Language(),Locale.getDefault().getISO3Country()));
Log.v("ttSpeech_result",result+","+ Locale.getDefault().getISO3Language() + ","+ Locale.getDefault().getISO3Country() + "");//如果打印为-2,说明不支持这种语言
if(result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED){
Toast.makeText(activity, getString(R.string.missing_or_unsupported), Toast.LENGTH_SHORT).show();
}else {
textToSpeech.setPitch(1.0f);// 设置音调,值越大声音越尖(女生),值越小则变成男声,1.0是常规
textToSpeech.setSpeechRate(1.0f);// 设置语速
textToSpeech.speak(settings.getUserName()+getString(R.string.hello), TextToSpeech.QUEUE_FLUSH, null);//settings.getUserName()
}
/*int result1 = textToSpeech.setLanguage(Locale.US);//设置使用美式英语朗读
int result2 = textToSpeech.setLanguage(Locale.CHINESE);//设置支持中文,实现不了只能用讯飞或者百度的sdk
Log.v("ttSpeech_result",result1 + "," + result2 + "");//如果打印为-2,说明不支持这种语言
if (result1 == TextToSpeech.LANG_MISSING_DATA || result1 == TextToSpeech.LANG_NOT_SUPPORTED
|| result2 == TextToSpeech.LANG_MISSING_DATA || result2 == TextToSpeech.LANG_NOT_SUPPORTED) {
Toast.makeText(activity, "数据丢失或不支持", Toast.LENGTH_SHORT).show();
}else {
textToSpeech.setPitch(1.0f);// 设置音调,值越大声音越尖(女生),值越小则变成男声,1.0是常规
textToSpeech.setSpeechRate(1.0f);// 设置语速
textToSpeech.speak(settings.getUserName()+"你好", TextToSpeech.QUEUE_FLUSH, null);
}*/
}else {
//Log.v("ttSpeech_errorResult","never expect to see this result code");
Toast.makeText(activity, getString(R.string.load_tts_fail), Toast.LENGTH_SHORT).show();
}
}
});
}
(3)onDestroy()
if (textToSpeech != null) {
textToSpeech.stop();
textToSpeech.shutdown();
}
备注:
基础版见://www.greatytc.com/p/ba74a92afbbe
进阶版见://www.greatytc.com/p/e2995383113b