#java #android
#java #Android
Вопрос:
Я пытался преобразовать text to speech
на уровне API 22. К сожалению, он не работает ниже уровня API 23.
tts=new TextToSpeech(MainActivity.this, new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status) {
if (status!=TextToSpeech.ERROR)
{
tts.setLanguage(Locale.US);
}
}
});
btnSpeak.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String text=etxtText.getText().toString();
tts.speak(text,TextToSpeech.QUEUE_FLUSH,null);
//1.0f is default speech rate, increase to high and decrease to lower
tts.setSpeechRate(1.0f);
}
});
}
@Override
protected void onPause() {
if (tts!=null)
{
//to stop speech
tts.stop();
tts.shutdown();
}
super.onPause();
}
Он работает в верхней версии. Но не на уровне API 22. Есть ли возможный способ запустить его на уровне API 22.
Комментарии:
1. TTS — это очень, очень старый API, добавленный на уровне API 4. Возможно, вы пытаетесь использовать константу или метод, который был определен в api lvl 23 . Взгляните на официальную документацию developer.android.com/reference/android/speech/tts/TextToSpeech
2. @Leuofiridia Не могли бы вы проверить мой исходный код в git , не смотрите на
API level
причину, я изменил его после примеркиAPI level 22
. Даже при нажатии на кнопку я не получаю никаких ошибок.3. @Leuofiridia Я думаю, что у меня возникла проблема с установкой
language
. Потому что я установил для него тост. Но всплывающее сообщение не отображается. Итак, не могли бы вы сказать, что теперь делать?