diff --git a/core/java/android/speech/tts/TextToSpeech.java b/core/java/android/speech/tts/TextToSpeech.java index c46d2c597ab0e..6d7b7ce0282c1 100755 --- a/core/java/android/speech/tts/TextToSpeech.java +++ b/core/java/android/speech/tts/TextToSpeech.java @@ -512,10 +512,17 @@ public class TextToSpeech { Intent intent = new Intent("android.intent.action.START_TTS_SERVICE"); intent.addCategory("android.intent.category.TTS"); - mContext.bindService(intent, mServiceConnection, - Context.BIND_AUTO_CREATE); - // TODO handle case where the binding works (should always work) but - // the plugin fails + boolean bound = mContext.bindService(intent, mServiceConnection, Context.BIND_AUTO_CREATE); + if (!bound) { + Log.e("TextToSpeech.java", "initTts() failed to bind to service"); + if (mInitListener != null) { + mInitListener.onInit(ERROR); + } + } else { + // initialization listener will be called inside ServiceConnection + Log.i("TextToSpeech.java", "initTts() successfully bound to service"); + } + // TODO handle plugin failures } @@ -765,8 +772,9 @@ public class TextToSpeech { { synchronized (mStartLock) { int result = ERROR; - Log.i("TTS", "speak() queueMode=" + queueMode); + Log.i("TextToSpeech.java - speak", "speak text of length " + text.length()); if (!mStarted) { + Log.e("TextToSpeech.java - speak", "service isn't started"); return result; } try { @@ -1264,10 +1272,13 @@ public class TextToSpeech { */ public int synthesizeToFile(String text, HashMap params, String filename) { - Log.i("TTS", "synthesizeToFile()"); + Log.i("TextToSpeech.java", "synthesizeToFile()"); synchronized (mStartLock) { int result = ERROR; + Log.i("TextToSpeech.java - synthesizeToFile", "synthesizeToFile text of length " + + text.length()); if (!mStarted) { + Log.e("TextToSpeech.java - synthesizeToFile", "service isn't started"); return result; } try {