Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/187.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
文本到语音的android不工作_Android_Text To Speech - Fatal编程技术网

文本到语音的android不工作

文本到语音的android不工作,android,text-to-speech,Android,Text To Speech,代码运行良好。我试图将文本转换成语音,但我无法找到所需的输出。请帮我修理一下。 提前感谢。在成功调用onInit之前,您不应该使用tts引用,从代码中可以看出,您在创建TextToSpeech类之后调用speakout。移动speakout(“Hello Gies”)到您的onInit中。另外,如果在onPause中关闭tts,那么最好在onResume中重新创建它-这意味着您可以实际移动init()到继续我尝试了你的建议,但代码不起作用,我再次编辑了代码。你能帮我一个工作代码吗?看看logca

代码运行良好。我试图将文本转换成语音,但我无法找到所需的输出。请帮我修理一下。
提前感谢。

在成功调用onInit之前,您不应该使用tts引用,从代码中可以看出,您在创建TextToSpeech类之后调用speakout。移动
speakout(“Hello Gies”)
到您的
onInit
中。另外,如果在onPause中关闭tts,那么最好在onResume中重新创建它-这意味着您可以实际移动
init()
继续

我尝试了你的建议,但代码不起作用,我再次编辑了代码。你能帮我一个工作代码吗?看看logcat,它经常会提示出什么问题-否则我不明白为什么它不工作。它说initTts()无法绑定服务我不确定什么问题,我想你应该从操作\u检查\u TTS\u数据开始,返回后,您将知道是否已安装所有资源。您所说的“查找所需输出”是什么意思?您还应该添加一个话语监听器-请参阅此答案中的链接
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_game);
    init();
}

public void init() {
    tts = new TextToSpeech(Game.this, new OnInitListener() {
        public void onInit(int status) {
            if (status != TextToSpeech.ERROR) {
                 tts.setLanguage(Locale.US);
                 speakout("Hello Gies");
            }
        }
    });
}

public void speakout(String text) {
    tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
    tv2.setText("" + text);

}

@Override
protected void onPause() {
    if (tts != null) {
        tts.stop();
        tts.shutdown();
    }
    super.onPause();
}