Speak Failed Not Bound to TTS Engine

You can only call speak() after onInit() was called. So move your tts speak code in onCreate to onInit()

@Override
public void onInit(int status) {
    if (status == TextToSpeech.SUCCESS) {
         leftToRead = speakFull(res);

}

and initialize pause to true boolean paused = true;

Leave a Comment