2016-03-27 10 views
0

Ich habe die TTS-Unterstützung für das Lesen der Text Strings in meiner Anwendung implementiert, und das funktioniert gut. Das TTS wird sprechen, wenn der Knopf in meiner App gedrückt hat. Aber das will ich, wenn die Sprache nicht vom Telefon des Benutzers installiert wird, wird es automatisch installieren. Wie kann ich es tun?Sprache für Text in Sprache von meiner App herunterladen

Hier ist mein Code

buttonTTS = (AppCompatButton) findViewById(R.id.button); 
    buttonTTS.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Locale bhs = new Locale("ind-IDN"); 
      int result = tts.setLanguage(bhs); 

      if (result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED) { 
       Log.e("TTS", "Bahasa tidak didukung"); 
       // WHAT TO DO WHEN LANGUAGE IS NOT INSTALLED 
      } else { 
       speakOut(); 
      } 
     } 
    }); 

Anregungen jedermann?

Vielen Dank im Voraus.

Antwort

0

Es gibt eine Absicht Aktion - ACTION_INSTALL_TTS_DATA beginnt diese Absicht wird automatisch erforderliche Daten herunterladen.

Intent installIntent = new Intent(); 
     installIntent.setAction(
      TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA); 
     startActivity(installIntent); 

Sie können auch prüfen, ob die Sprache existiert oder nicht. Dies ist der erste Schritt, den Sie tun müssen.

Intent checkIntent = new Intent(); 
checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA); 
startActivityForResult(checkIntent, MY_DATA_CHECK_CODE); 

Sie können es so machen. Danke, ich hoffe, das war hilfreich.

Verwandte Themen