isRecognitionAvailable return 在 android 上为假

isRecognitionAvailable return false on android

我在 Android 上使用 android.speech.SpeechRecognizer。 在某些情况下,isRecognitionAvailable return false,所以我无法识别语音。 没有办法在 Phone 上启用 android.speech.SpeechRecognizer 吗? 或者有没有类似的服务?

Is there no way to enable android.speech.SpeechRecognizer on Phone? Or is there similar service ?

不,SpeechRecognizer 是一项 SYSTEM 服务。如果不可用,则设备上没有此类服务。这是文档中的引述。

Checks whether a speech recognition service is available on the system.

如果你真的想要语音识别,你可以记录麦克风输入并自己处理原始输入。

如果 SpeechRecognizer.isRecognitionAvailable(this) returns false 您的设备不支持 SpeechRecognizer。很简单。

勾选documentation

我知道它已经过去了太多时间,但这可能会对某些人有所帮助。

我运行遇到一个很奇怪的问题。我知道语音识别器曾经在我的 Android 5.1.1 phone 中工作过。但是,isRecognitionAvailable 开始为 return false。但是,createSpeechRecognizer 正在创建对象(尽管它没有开始侦听)。这很奇怪,因为根据文档:

isRecognitionAvailable:

Checks whether a speech recognition service is available on the system. If this method returns false, createSpeechRecognizer(Context) will fail.

我最终进入 PlayStore 并寻找 "Ok google",我发现 Google LLC 被禁用了。我启用了它,语音识别器又开始工作了。

希望对大家有所帮助