如何在文本到语音结束后才能启动声音

时间:2016-08-03 20:55:01

标签: java android android-mediaplayer text-to-speech

我有这个代码,它使用文本到语音读取字符串,然后播放声音。但是,声音在使用文本到语音的同时播放。我尝试使用onutterancecompletedlistener和onutteranceprogresslistener,但现在当我运行代码时,只能听到文本到语音,而不是声音。我是否正确实施了某些内容任何帮助深表感谢!谢谢!!

String animalString = res.getString(R.string.Animal);
                tv.setText(animalString);
                if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
                    tts.speak(greenString, TextToSpeech.QUEUE_FLUSH, null);
                    tts.setOnUtteranceCompletedListener(new TextToSpeech.OnUtteranceCompletedListener()
                    {
                        @Override
                        public void onUtteranceCompleted(String utteranceId)
                        {
                            sound.start();
                        }
                    });

                } else {
                    tts.speak(greenString, TextToSpeech.QUEUE_FLUSH, null, null);
                    if (Build.VERSION.SDK_INT >= 15) {
                        tts.setOnUtteranceProgressListener(new UtteranceProgressListener() {
                            @Override
                            public void onDone(String utteranceId) {

                                sound.start();

                            }

                            @Override
                            public void onError(String utteranceId) {
                            }

                            @Override
                            public void onStart(String utteranceId) {
                            }
                        });

                    }

0 个答案:

没有答案