Android文本到不同语言的语音

fer*_*i13 8 java android locale

我想创建一个可以支持不同语言的应用程序.

"默认"语言没有问题:

tts.setLanguage(Locale.ENGLISH);
Run Code Online (Sandbox Code Playgroud)

还有其他一些:

Locale l = new Locale("ru","RU");
tts.setLanguage(l);
Run Code Online (Sandbox Code Playgroud)

但是很多其他人都不行,例如:

Locale l = new Locale("hu","HU");
tts.setLanguage(l);
Run Code Online (Sandbox Code Playgroud)

我也试过"hu","hu-HU","hu-rHU","HU"......但是没有......

此外,它不适用于土耳其语,希腊语,荷兰语,捷克语......

mar*_*inj 6

并非所有都支持,使用:Locale.getAvailableLocales()来获取可用的语言环境并针对isLanguageAvailable测试它们,或者从api21开始,您可以使用getAvailableLanguages()直接获取当前TTS引擎的可用语言.您可以安装替代TTS引擎,即.SVOX非常好.