是否可以检查Android中是否启用了默认的文本到语音转换引擎?如果没有,我可以通过我的Android程序启用它吗?如果是这样的话,是怎么做的?
Intent checkIntent = new Intent();
checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA);
startActivityForResult(checkIntent, MY_DATA_CHECK_CODE);上面的代码显示了不同的可用TTS,并显示为一个对话框,然后我选择所需的TTS并单击OK。一旦我这样做了-系统(平板电脑或手机)会自动选择所选的TTS并启用它。
我可以通过将其放入自定义布局(列出安装的TTS )来做同样的事情吗?我可以选择所需的内容并通过单击启用按钮或其他什么来启用它吗?
谢谢!
发布于 2012-09-06 11:59:35
您可以在ICS中列出可用的TTS引擎,并且可以在Froyo和更高版本上按包名和语言测试可用性。TTS引擎由系统控制,因此您无法从应用程序中禁用/启用它们。您只能提示用户这样做。
Re:编辑后的问题。这是一个完全不同的故事。此意图检查是否安装了TTS数据,如果有多个引擎,则必须选择一个引擎来处理意图。这只是Android发送意图的方式,与TTS无关。如果您通过调用Intent.setPackage("my.tts.package")明确了意图,则不会显示该对话框。请注意,这不会检查是否启用了TTS引擎。我没有检查,但我怀疑如果在设置中禁用了TTS引擎,这是否会启用它。
https://stackoverflow.com/questions/12292369
复制相似问题