如何在我的应用程序中实施Google语音输入?

Eth*_*han 11 java android

我正在尝试在我的应用程序中添加一个按钮,用于启动Google Voice Typing(或默认语音识别).我试过了这个教程.本教程让我感到非常困惑.我导入了.jar,并为我的Manifest添加了必要的权限,服务和活动.但我似乎无法弄清楚如何"把它们放在一起".我在想:

  1. 我应该在我的主要活动中点击我的按钮来调用inputMethodService吗?或者我的inputMethodService基本上成为我的主要活动?
  2. IME是什么意思?我尝试谷歌它,但它给我的定义并没有帮助我的理解.
  3. 当我尝试将整个DemoInputMethodService代码复制并粘贴到我当前的活动中时,我收到一条错误消息,指出我无法在此活动中扩展InputMethodService.(这导致回答问题一.)

我怎样才能让它发挥作用?

Rob*_*ree 0

语音识别示例可在您拥有 android SDK 的地方找到。

例子:

$ find $SDK_ROOT/samples -name *recogni*


./android-19/legacy/VoiceRecognitionService/res/xml/recognizer.xml
./android-19/legacy/VoiceRecognitionService/src/com/example/android/voicerecognitionservice
./android-19/legacy/ApiDemos/res/layout/voice_recognition.xml
./android-18/legacy/VoiceRecognitionService/res/xml/recognizer.xml
./android-18/legacy/VoiceRecognitionService/src/com/example/android/voicerecognitionservice
./android-18/legacy/ApiDemos/res/layout/voice_recognition.xml
./android-21/legacy/VoiceRecognitionService/res/xml/recognizer.xml
./android-21/legacy/VoiceRecognitionService/src/com/example/android/voicerecognitionservice
./android-21/legacy/ApiDemos/res/layout/voice_recognition.xml
Run Code Online (Sandbox Code Playgroud)

任何一项服务都应该有助于展示如何执行RecognizerIntent

“APIDemo”似乎包括 RecognizerIntent 的使用。检查那个的来源。否则,请研究服务并将其分解为意图。