Android TextToSpeech setLanguage 适用于模拟器,但不适用于手机

标签 android

我在使用 Android TextToSpeech API 时遇到了一个非常烦人的问题。 例如,当我尝试设置这样的语言时:

int result = tts.setLanguage(Locale.GERMANY);

结果是 SUCCESS,但是 TTS 仍然使用默认语言,而不是我设置的语言。

奇怪的是在模拟器上运行完美,问题只出现在我的galaxy S上。

最佳答案

不保证该语言可用,SDK 引用说明:

public int setLanguage (Locale loc) 自:API 级别 4

设置 TextToSpeech 引擎的语言。 TextToSpeech 引擎将尝试使用与 Locale 表示的指定语言最接近的匹配项,但不保证会使用完全相同的 Locale。 使用 isLanguageAvailable(Locale) 检查支持级别,然后再选择用于下一个话语的语言

因此看起来您可能无法始终选择语言。

关于Android TextToSpeech setLanguage 适用于模拟器,但不适用于手机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5290194/

相关文章:

android - 如何检索 RSS 提要?

java - FileOutputStream 在 Android 中不工作

android - 使用 Gradle 构建会抛出 MalformedJsonException

android - Google Analytics 启动失败

android - 从 Android 终端禁用设备所有者应用程序

Android打开带有特定文件夹链接的默认图库无法加载

java - 如何禁用布局对齐?

java - 使 EditText 不可点击,但仍具有焦点

java - android如何生成 'current.txt'它的api描述文件?

android - 尝试将本地 android 库模块发布到 Artifactory