2011-05-06 8 views
6

Estoy trabajando en una aplicación para Android que utiliza la funcionalidad de síntesis de voz proporcionado por Google y han seguido este ejemplo:lenguas desaparecidas en TTS androide

TTS Example from Google

Quiero saber con esta línea:

int result = mTts.setLanguage(Locale.US); 
    if (result == TextToSpeech.LANG_MISSING_DATA || 
     result == TextToSpeech.LANG_NOT_SUPPORTED) { 
     // Lanuage data is missing or the language is not supported. 
    } 

¿Qué puedo hacer si los datos de idioma no aparecen en el dispositivo del usuario? La aplicación no continuará si los datos no están allí? ¿Hay alguna manera de permitir que el usuario obtenga el idioma en su dispositivo? Tengo un dispositivo de prueba que parece no tener ningún idioma en absoluto.

Respuesta

10

De http://developer.android.com/resources/articles/tts.html:

// missing data, install it 
      Intent installIntent = new Intent(); 
      installIntent.setAction(
       TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA); 
      startActivity(installIntent); 

hay buena manera de saber exactamente lo que sucede si el idioma que desean simplemente no existe en absoluto, pero .... que es la forma recomendada de tratar con ella.