Cómo cambiar programáticamente el motor predeterminado TTS

Además del motor Pico TTS que viene con Android, tengo otro motor TTS instalado. Puedo cambiar cuál es el defecto usado por el sistema – manualmente:

Settings > Voice input & output > Text-to-speech settings > Default Engine 

Me gustaría poder hacer eso programáticamente , desde dentro de mi aplicación. es posible?

Si es así, ¿cómo lo haría?

2 Solutions collect form web for “Cómo cambiar programáticamente el motor predeterminado TTS”

No puede cambiar el motor predeterminado. Sin embargo, puede cambiar el motor que está utilizando llamando a TextToSpeech.setEngineByPackageName () (disponible desde 2.2) o usar el constructor que toma un parámetro de paquete de motor (disponible en ICS, por lo que no es realmente útil en este momento).

También no hay API antes de ICS para averiguar qué motores están instalados, por lo que necesita saber el paquete del otro motor de antemano para poder utilizarlo.

La respuesta anterior ya no es válida ya que el método está obsoleto. Android API 14 y superior, necesita utilizar el constructor para configurar el motor.

 TextToSpeech(Context context, TextToSpeech.OnInitListener listener, String engine) 

El "motor" String es el nombre del paquete del motor TTS que desea utilizar.

  • Manejo de múltiples idiomas sin demora en el TTS de Android
  • TTS-UtteranceProgressListener no se llama
  • Cómo encuestar los motores TTS disponibles para los idiomas disponibles sin instanciar cada uno y wating para init
  • TTS omite al azar las primeras letras de la oración
  • Android TTS no habla
  • ¿Cómo instalar el motor TTS específico programáticamente en Android?
  • La función de devolución de llamada de Android TTS onUtteranceCompleted no se recibe
  • No se puede detectar la finalización del androide TTS (devolución de llamada).
  • Texto a voz (TTS) -Android
  • La salida TTS siempre va a A2DP
  • ¿Qué significan los nombres / códigos de Android Voice?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.