TextToSpeech.setEngineByPackageName () no establece nada

Después de la punta en esta respuesta , hice una llamada a setEngineByPackageName derecho en onActivityResult() , cuando requestCode == REQ_TTS_STATUS_CHECK && TextToSpeech.Engine.CHECK_VOICE_DATA_PASS :

  tts = new TextToSpeech(this, this); tts.setEngineByPackageName("com.ivona.tts.voicebeta.eng.usa.kendra"); 

Pero independientemente de si compruebo o desactiva la opción Always use my settings en la Always use my settings de Texto a voz, siempre obtengo el motor por defecto de pico !

Sí, he establecido intencionalmente el motor pico para que sea el predeterminado, por lo que puedo probar sobreponiéndolo por la punta antes mencionada . Pero ese método de la API no parece estar funcionando en absoluto, o … ¿me estoy perdiendo algo?

(Sé que setEngineByPackageName es obsoleto, ya que no informar a la persona que llama cuando el motor TTS se ha inicializado, pero tengo que apoyar la API 8, por lo que este método es mi única opción en este momento)

Usted dice que puso la llamada a setEngineByPackageName en onActivityResult() . Este es el lugar equivocado para hacer esto.

SetEngineByPackageName, al igual que getDefaultEngine, no se debe llamar antes de llegar a onInit() .

  • Referencia no resuelta en el anonimo oyente de Kotlin
  • Lenguaje hindi
  • Hablar con TTS como Hindi
  • Android TTS comprueba la configuración regional admitida con datos de voz que faltan o no se han descargado
  • Resalte la palabra actual que el motor TTS está hablando
  • Ampliación del paquete de idiomas de texto a voz (TTS) de Android
  • Transmisión de notificaciones de texto a voz durante la conducción
  • ¿Por qué no se llama a UtteranceProgress Listener a Text to Speach?
  • TTS android 4.1 jellybean
  • Texto de Android a voz Voz masculina
  • Android Texto a voz añadir texto de voz continuamente
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.