首先呢有几种集成的方法,比如第三方讯飞,Medplay,androd自带的TextToSpeech...
我使用的是第三种安卓自带的,使用起来非常的简单
1.直接导入android.speech.tts.TextToSpeech
//定义一个tts对象
private TextToSpeech tts;
2.自定义类实现OnLnitListener接口重写onInit方法
onInit()方法中主要是是对tts对象进行初始化,设置一下语言,判断文字是否转换成功以及当前系统是否支持该语言
@Override
public void onInit(int status){
// 判断是否转化成功
if (status == TextToSpeech.SUCCESS){
//默认设定语言为中文,原生的android貌似不支持中文。
int result = tts.setLanguage(Locale.CHINESE);
if (result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED){
Toast.makeText(MainActivity.this, R.string.notAvailable, Toast.LENGTH_SHORT).show();
}else{
//不支持中文就将语言设置为英文
tts.setLanguage(Locale.US);
}
}
}
3.最后,只要在合适的时候调用tts转文字到语音的方法即可.
tts.speak("需要转化的文字", TextToSpeech.QUEUE_FLUSH, null);
好啦就是这么简单,使用起来非常的方便!
本文介绍了如何在Android应用中使用系统自带的TextToSpeech服务将文字转换为语音进行播报。通过简单的导入、接口实现和初始化设置,开发者可以轻松实现文字转语音的功能。
1272

被折叠的 条评论
为什么被折叠?



