Estoy tratando de ejecutar el TTS de Android dentro de un servicio, pero no tengo idea de por qué no funciona, se compila, no falla, pero simplemente no funciona .Ejecutando Android TTS en un servicio
Sin embargo, la notificación de Toast sí funciona.
package alarm.test;
import android.app.Service;
import com.google.tts.TextToSpeechBeta;
import android.content.Intent;
import android.os.IBinder;
import android.widget.Toast;
public class MyAlarmService extends Service {
private TextToSpeechBeta myTts;
private TextToSpeechBeta.OnInitListener ttsInitListener = new TextToSpeechBeta.OnInitListener() {
public void onInit(int arg0, int arg1) {
myTts.speak("", 0, null);
}
};
@Override
public void onCreate() {
// TODO Auto-generated method stub
myTts = new TextToSpeechBeta(this,
ttsInitListener);
Toast.makeText(this, "MyAlarmService.onCreate()", Toast.LENGTH_LONG).show();
}
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
myTts.speak("something is working", TextToSpeechBeta.QUEUE_FLUSH, null);
Toast.makeText(this, "MyAlarmService.onBind()", Toast.LENGTH_LONG).show();
return null;
}
@Override
public void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
Toast.makeText(this, "MyAlarmService.onDestroy()", Toast.LENGTH_LONG).show();
}
@Override
public void onStart(Intent intent, int startId) {
// TODO Auto-generated method stub
super.onStart(intent, startId);
Toast.makeText(this, "MyAlarmService.onStart()", Toast.LENGTH_LONG).show();
}
@Override
public boolean onUnbind(Intent intent) {
// TODO Auto-generated method stub
Toast.makeText(this, "MyAlarmService.onUnbind()", Toast.LENGTH_LONG).show();
return super.onUnbind(intent);
}
}
Por favor describa con más detalle lo que quiere decir con "no trabaje". ¿Qué ves en LogCat? –
debug/TextToSpeechBeta (512): TextToSpeechBeta no instled - dfauing a TextToSpeech básica plataforma para hablar VERBOSE/TtsSice (418): el servicio TTS recibidas INFO/TtsService (418): Stoping INFO/TtsService (418): Detenido VERBOSE/TtsService (418): Procesamiento TTS: VERBOSE/TtsService (418): TtsService.setLanguage (esp, USA,) INFO/SVOX Pico Engine (418): Idioma ya cargado (en-US == en-US) DEBUG/dalvikvm (68): GC_CONCURRENT liberado 719K, 48% libre 4093K/7751K, externo 2041K/2378K, pausa 21ms + 27ms DEPURACIÓN/SntpClient (68): tiempo de solicitud fallido: java.net.SocketException: familia de dirección no compatible con protocolo –