Android TextToSpeech API存在一个非常烦人的问题。 当我尝试设置这样的语言时,例如:
int result = tts.setLanguage(Locale.GERMANY);
结果是SUCCESS,但TTS仍然使用默认语言,而不是我设置的语言。
奇怪的是,在模拟器上它完美运行,问题只发生在我的星系S上。
答案 0 :(得分:1)
SDK参考说:
,不保证语言可用public int setLanguage(Locale loc) 自:API Level 4
设置TextToSpeech引擎的语言。 TextToSpeech引擎将尝试使用与Locale表示的指定语言最接近的匹配,但不保证将使用完全相同的Locale。 使用isLanguageAvailable(Locale)检查支持级别,然后选择用于下一个话语的语言。
所以看起来似乎并不总是能让你选择语言。
答案 1 :(得分:0)
在Galaxy中我们应该手动更改TextToSpeech设置