如何在我的Android应用程序中添加语音识别按钮?

如何在我的Android应用程序中添加语音识别按钮?,android,speech-recognition,Android,Speech Recognition,我是一名Java开发人员。对不起,我对安卓系统没有任何想法。请容忍我 我正在考虑创建一个应用程序。要首先构建我的应用程序,我必须学习android。为了获得动机,我正在尝试绘制应用程序,它应该是什么样子。我想让我的应用程序免提,这意味着我想使用语音识别进行导航和执行所有任务 现在我的问题是“有没有办法将谷歌的语音识别器作为一个自定义按钮添加到我的应用程序中?”这样它就不会占用半个屏幕,而只会在屏幕的末尾进行监听。我将把音频转换成一个文本文件,这样,我就可以使用API.AI来做一些事情 或者还有其

我是一名Java开发人员。对不起,我对安卓系统没有任何想法。请容忍我

我正在考虑创建一个应用程序。要首先构建我的应用程序,我必须学习android。为了获得动机,我正在尝试绘制应用程序,它应该是什么样子。我想让我的应用程序免提,这意味着我想使用语音识别进行导航和执行所有任务

现在我的问题是“有没有办法将谷歌的语音识别器作为一个自定义按钮添加到我的应用程序中?”这样它就不会占用半个屏幕,而只会在屏幕的末尾进行监听。我将把音频转换成一个文本文件,这样,我就可以使用API.AI来做一些事情

或者还有其他方法来实现我的目标吗


谷歌语音识别器也能在iOS上工作吗?

你可以使用android语音识别器。查看实现链接:访问

我在我的一个项目中尝试了SpecchRecognizer

首先,您必须像这样实施您的活动

public class MainActivity extends Activity implements RecognitionListener
然后在OnClickListener中执行以下代码

SpeechRecognizer speech = SpeechRecognizer.createSpeechRecognizer(this);
                 speech.setRecognitionListener(this);
                 intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
                 intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
                         RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
                 intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "en-US");
                 intent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE, this.getPackageName());
                 speech.startListening(intent);
在OnActivityResult中,您可以得到结果

ArrayList<String> result = data.getStringArrayListExtra(
RecognizerIntent.EXTRA_RESULTS);
textview.setText(result.get(0));
仅此而已。

可能重复的
@Override
public void onBeginningOfSpeech() {

}

@Override
public void onRmsChanged(float rmsdB) {

}

@Override
public void onBufferReceived(byte[] buffer) {

}

@Override
public void onEndOfSpeech() {

}

@Override
public void onError(int error) {

}
@Override
public void onReadyForSpeech(Bundle params) {

}