如何检查语音识别是否可用?

7

当我初始化语音识别应用程序时,我使用这行代码:

Boolean b=SpeechRecognizer.isRecognitionAvailable(cContext);

为什么在某些设备上(例如模拟器)b 总是等于 false? 我从Android文档中了解到该函数的功能,但文档没有说明如何使语音识别可用。 我需要在模拟器上设置其他内容吗? 你知道如何始终使语音识别可用吗?


1
你可以尝试使用pocketsphinx,网址为http://cmusphinx.sourceforge.net/wiki/tutorialandroid - Nikolay Shmyrev
问题确实存在,所以在了解之前不要投反对票。我自己解决了这个问题。最终的解决方案是通过编程验证Google搜索应用程序已安装并启用。这通常存在于大多数手机上,除了一些奇怪的型号和模拟器。如果没有,最佳做法是将用户带到Play商店进行下载/更新,或者在设置中的应用信息屏幕中启用。我做到了,并且它起作用了,如果您需要代码,请告诉我。 - Josh
1个回答

14

这个问题确实存在,不要在了解前就踩反对。我自己解决了它。最终的解决方案是通过编程验证Google搜索应用程序已被安装并启用。如果没有,最佳做法是使用意图将用户带到Play商店进行下载/更新,或者进入设置中的应用信息屏幕以启用它。我已经实现了它,而且它起作用了。如果你需要代码,请告诉我。


3
好的,您需要提供样例代码吗?已经很晚了 :P - Dhruvam Sharma
你能提供代码吗?你有导航到Play商店吗? - Prabudda Fernando
@Josh 你有没有想法为什么Android 2.3.3上的SpeechRecognizer现在报告“无法连接”?Google是否宣布退役支持Android 2.2的语音识别服务器?有趣的是,完全相同的应用程序代码和构建在Android 8.1.0上不会产生此错误。 - WebViewer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接