Android 语音识别命令

Android 语音识别命令,android,command,speech-recognition,voice,voice-recognition,Android,Command,Speech Recognition,Voice,Voice Recognition,因此,我已经搜索了很多关于当用户想要执行语音命令但却找不到任何解决方案时删除谷歌语音识别UI对话框的问题的解决方案。我正在尝试实现一个应用程序,它向用户显示一个菜单,用户可以单击选项或大声说出选项,这将打开新页面。到目前为止,我无法实现这一点,除非我使用谷歌识别器,但我不想弹出对话框。有人有什么想法吗?或者有人解决了这个问题或者找到了解决办法吗?谢谢 编辑:作为一种折衷办法,也许有一种方法可以将对话框移到屏幕底部,同时仍然可以查看我的菜单?有帮助吗 我很确定Nuance/Dragon对使用其服务

因此,我已经搜索了很多关于当用户想要执行语音命令但却找不到任何解决方案时删除谷歌语音识别UI对话框的问题的解决方案。我正在尝试实现一个应用程序,它向用户显示一个菜单,用户可以单击选项或大声说出选项,这将打开新页面。到目前为止,我无法实现这一点,除非我使用谷歌识别器,但我不想弹出对话框。有人有什么想法吗?或者有人解决了这个问题或者找到了解决办法吗?谢谢

编辑:作为一种折衷办法,也许有一种方法可以将对话框移到屏幕底部,同时仍然可以查看我的菜单?

有帮助吗


我很确定Nuance/Dragon对使用其服务的生产或商业应用程序收取费用。如果这只是一个演示,您可以使用开发者帐户。Android语音服务对所有Android应用程序都是免费的。

您知道,您可以通过谷歌的API实现这一点

您可能已经阅读了语音识别意图的文档。请看语音识别API的RecognitionListener接口

这里有一些代码可以帮助您

public class SpeechRecognizerExample extends Activity implements RecognitionListener{    

    //This would go down in your onCreate

    SpeechRecognizer recognizer = SpeechRecognizer.createSpeechRecognizer(this);
    recognizer.setRecognitionListener(this);

    //Then you'd need to start it when the user clicks or selects a text field or something

    Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
    intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
            RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
    //intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "zh");
    intent.putExtra("calling_package",
            "yourcallingpackage");

    recognizer.startListening(intent);

    //Then you'd need to implement the RecognitionListener functions - basically works just like a click listener
以下是RecognitionListener的文档:


这终于是可行的解决方案了!