我已经实现了TTS支持,用于阅读我的应用程序中的文本字符串,这样就可以了。如果我的应用程序中的按钮已按下,TTS将会说出来。但我想要的是当语言没有从用户手机安装时,它会自动安装。我该怎么办?
这是我的代码
buttonTTS = (AppCompatButton) findViewById(R.id.button);
buttonTTS.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Locale bhs = new Locale("ind-IDN");
int result = tts.setLanguage(bhs);
if (result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED) {
Log.e("TTS", "Bahasa tidak didukung");
// WHAT TO DO WHEN LANGUAGE IS NOT INSTALLED
} else {
speakOut();
}
}
});
有人有什么建议吗?
提前致谢。
答案 0 :(得分:1)
意图操作 - ACTION_INSTALL_TTS_DATA 启动此意图将自动下载所需数据。
Intent installIntent = new Intent();
installIntent.setAction(
TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA);
startActivity(installIntent);
您还可以检查语言是否存在。这是你必须要做的第一步。
Intent checkIntent = new Intent();
checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA);
startActivityForResult(checkIntent, MY_DATA_CHECK_CODE);
你可以这样做。谢谢你,我希望这很有帮助。