RecognitionListener:OnPartialResults vs OnResults

edw*_*ffs 2 android google-text-to-speech

在性能和可用性方面,最好的方法是什么?这两种方法有哪些主要区别?

我目前在"OnResults"上有一个实现,它持续监听并与几个字符串进行比较,对检测到的每个单词采取不同的操作.然而,它有时无法识别单词,有时甚至听不到任何内容.如果我将逻辑移到"OnPartialResults"会提高可用性吗?

Mic*_*ski 7

onResults在SpeechRecognizer完成收听时调用. onPartialResults当SpeechRecognizer检测到你说过的新单词时,甚至在听完之前就会调用它.

对于单个说出的单词,它们都应该具有相同的结果,但是如果你的语音更长,onResults可以修改你的输出以使它在语法上更正确(但只是一点点).

它们的使用取决于您的目的.但是给出了更准确的结果onResults.

如果你想将口语单词与动作匹配,请创建自己的匹配器,这将选择最佳匹配(但并不总是相等,因为它始终不起作用).

有关onResultsonPartialResults的更多信息,访问developer.android.com

重要提示:要获得部分结果,您必须为识别器意图添加额外内容:

intent.putExtra(RecognizerIntent.EXTRA_PARTIAL_RESULTS, true);
Run Code Online (Sandbox Code Playgroud)