我正在使用TextToSpeech类开发一个应用程序。我在调用Android的TextToSpeech.speak(...)时会在Galaxy Note 4(Android 5.0)上弹出这个弹出窗口,询问我是否要下载质量更好的语音文件:
High quality TTS Popup on Android 5, Galaxy S4
在华硕平板电脑的其他开发设备上没有发生这种情况。当我使用语音文本时,我怎么能以某种方式阻止弹出窗口出现?
从这个弹出窗口的开发角度,或者如何防止它出现,搜索并没有发现太多。我在这里查了一下,但它引用了录音,似乎引用了另一个问题:Android speech Recognition App Without Pop Up
在这个特定的设备上,我可以通过简单地接受下载来阻止它。这很明显,虽然我还没有尝试过:http://androidforums.com/threads/download-high-quality-voice-file.789236/但是,当安装在新设备上时,启用语音功能时,用户可能无法访问该设备。我认为这是一个独特的案例,违反了UI的正常准则。应用启动后,用户无法与应用进行互动。它通过互联网接收消息并说出这些消息,这就是弹出窗口出现的时间。
我愿意接受这样的解决方案,使我能够自己检查和下载引用的高质量语音文件(为了防止弹出窗口,希望如此),并且只有在处理完毕后才开始讲话。
mTextSpeech.speak(s2, TextToSpeech.QUEUE_FLUSH, null);
编辑:
是否在三环软件包响应的循环中某处发送了一个INTENT?我的想法是,我可以检查导致弹出窗口的“违规”软件包是否在PackageManager列表中,然后可能从那里开始。或者如果包已经以某种方式在系统中注册,也许我可以以某种方式取消注册它?我承认我到达了这里,但我看到这个弹出窗口我感到厌倦了!