Home » Android » java – Missing languages in TTS android

java – Missing languages in TTS android

Posted by: admin June 15, 2020 Leave a comment

Questions:

I am working on an android application that uses the TextToSpeech functionality provided by google and have followed this example:

TTS Example from Google

I want to know with this line:

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.
    }

What can I do if the Language data is missing off the users device? The app will not continue if the data is not there? Is there a way to allow the user to get the language on their device? I have a test device that seems to not have any languages on it at all.

How to&Answers:

From 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);

No good way to know exactly what happens if the language they want simply doesn’t exist at all, but….that is the recommended way of dealing with it.