Недостающие языки в TTS android - PullRequest
7 голосов
/ 06 мая 2011

Я работаю над приложением для Android, которое использует функциональность TextToSpeech, предоставленную Google, и следовал этому примеру:

Пример TTS от Google

Я хочу знатьс этой строкой:

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

Что я могу сделать, если данные о языке отсутствуют на устройстве пользователя?Приложение не продолжится, если данных там нет?Есть ли способ, позволяющий пользователю получить язык на своем устройстве?У меня есть тестовое устройство, на котором, похоже, нет языков.

1 Ответ

11 голосов
/ 07 мая 2011

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

Нет хорошего способа точно узнать, что происходит, если языка, которого они хотят, просто не существует вообще, но ... это рекомендуемый способ борьбы с ним.

...