该负责人介绍文本到语音Android中说:"在创建活动中,良好的第一步是检查是否与相应的意图TTS资源的存在:"
Intent checkIntent = new Intent();
checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA);
startActivityForResult(checkIntent, MY_DATA_CHECK_CODE);
Run Code Online (Sandbox Code Playgroud)
但是@gregm在这个帖子中暗示:
另外,不要使用ACTION_CHECK_TTS_DATA Intent,这很难使用.
相反,请执行以下操作:
- 创建TextToSpeech
- OnInit,检查isLanguageAvailable(),如果是,你的应用程序都已设置好.如果没有,发送ACTION_INSTALL_TTS_DATA
如果我理解正确,@ gregm做/建议的是将支票推迟到.TextToSpeech.LANG_MISSING_DATA
onActivityResult()
onInit()
为什么这比正式方法更好?
为什么ACTION_CHECK_TTS_DATA如此"难以使用"?