我正在开发一款安卓应用,它基本上是一个将语音转换为文本作为后台进程的服务。我正在得到如何注册自定义语音识别服务?的帮助,但我无法确定何时调用onStartListening()
。
签名:
protected void onStartListening(Intent recognizerIntent, Callback listener)
有没有人能帮我在给定的链接代码中添加更多语句,以便我可以将语音识别为文本并在toast中显示出来?
我正在开发一款安卓应用,它基本上是一个将语音转换为文本作为后台进程的服务。我正在得到如何注册自定义语音识别服务?的帮助,但我无法确定何时调用onStartListening()
。
签名:
protected void onStartListening(Intent recognizerIntent, Callback listener)
有没有人能帮我在给定的链接代码中添加更多语句,以便我可以将语音识别为文本并在toast中显示出来?
一般来说,有两种类型的应用程序:
RecognitionService
(我们称之为app2)。由于您提到了“toast”(即UI元素),我猜您想要实现app1?
app1需要执行以下操作:
Intent intent = ...
SpeechRecognizer recognizer = ...
recognizer.setRecognitionListener(new RecognitionListener() { ... });
recognizer.startListening(intent)
基于指定的意图并考虑用户设置,Android会找到一个合适的app2来为app1提供服务。
app2扩展了抽象类RecognitionService
,即它需要实现一堆方法,其中包括onStartListening
。当app1调用startListening
时,后者会被Android调用。
作为app1的作者,您只需要使用各种意图附加项提供识别器的输入详细信息,使用接口RecognitionListener
的方法处理识别器的输出,并使用startListening
启动app2。
onStartListening
的实现以及如何在清单中注册服务。从当前版本的问题中,我不太明白您遇到了什么问题... - Kaarel