Я пытаюсь реализовать технологию преобразования текста в речь Android в своей деятельности, но сталкиваюсь со странной ошибкой. Я не слышу звука из моего кода. Метод говорить работает, только если я помещаю его в метод onInit, иначе он не говорит.
Мой код выглядит следующим образом:
открытый класс GameOverActivity расширяет действие, реализует OnInitListener { частный говорящий TextToSpeech; .... говорящий = новый TextToSpeech (это, это); сказать("Что-то",ложь); ... public void onInit (статус int) { если (статус == TextToSpeech.SUCCESS) { говорящий.setLanguage(Язык.США); } иначе если (статус == TextToSpeech.ERROR) { Toast.makeText(this,"Произошла ошибка при инициализации механизма преобразования текста в речь", Toast.LENGTH_LONG).show(); } void say (текст строки, логический сброс) { если (сброс == истина) { говорящий.говорить(текст,TextToSpeech.QUEUE_FLUSH,null); } если (сбросить == ложь) { говорящий.говорить(текст,TextToSpeech.QUEUE_ADD,null); } }
Странно то, что если я поместил метод say в onInit, он отлично работает!
Я внимательно просмотрел logcat и вот результаты:
TtsService.OnCreate() ТТ загружается Аудиотрек запущен TTSService.setLanguage успешно загружен en-US установив скорость речи на 100
, после этого ничего не происходит.
Есть идеи, что не так с приведенным выше кодом?
Заранее спасибо!