2013-02-06 37 views
0

我已经实施了RecognizerIntent并称为谷歌的语音识别服务,它工作正常,我得到的结果。但是,有时如果我嘟or或离我的设备太远,我会收到消息:“没有听清楚,请再试一次。”信息。有没有办法绕过这一点,而不是显示此消息,因为我不希望用户必须按OK继续?语音API RecognizerIntent - 绕过没有捕捉到。尝试再次发出消息

感谢

如果你想在用户界面的控制

回答

0

使用SpeechRecognizer

如果我理解正确,那么您将启动RecognizerIntent,并且这可以通过Google搜索应用程序(或Google语音搜索或其他任何正在调用的任何操作)中的一项活动来处理。现在,由于这是一个活动,它接管了用户界面,即它弹出一个对话框,显示一个提示和一个VU表等等。如果出现错误情况,原则上可以将控制权交还给您的应用程序通过发送一个错误代码,例如RESULT_NO_MATCH(正如文档所建议的),但它不选择。相反,它会弹出一个“再试一次”的消息。回到您的活动的唯一方法是按下BACK,或希望识别成功。

如果你想控制更多的用户体验,然后使用SpeechRecognizer。通过这种方式,您正在调用服务,然后通过回调进行交互。你将完全控制用户界面。或几乎,例如Google应用会在识别开始时发出哔声,并且无法关闭它并提供自己的嘟嘟声。

请注意,这个答案是特定的(针对特定版本)Google的语音识别服务,它不属于Android本身。它实现了API的一部分,但它的不同版本在API覆盖范围和它们的确切行为上有所不同。所以这个答案在未来可能会出错。

+0

你能详细解释一下这个答案吗?从文档中不清楚你将在'SpeechRecognizer'中设置什么来禁止该消息。参见http://stackoverflow.com/questions/25939535 –