首先,你的设备要支持语音识别,这属于android的一个框架,如果是手机的话,安装google的语音识别包就可以了.模拟器还没有试过能否通过安装来支持语音识别.


private void startVoiceRecognitionActivity() {
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
// 设置语言格式,使用免费的语音识别支持的语言.
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
// 设置提示文字,设备进行语音采集时,屏幕上的提示语
intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "请对准话筒说话");
mActivity
.startActivityForResult(intent, VOICE_RECOGNITION_REQUEST_CODE);
}

可以看到语音设别是通过intent启动的,识别结束之后,会将数据返回原来的activity.
所以需要重写onActivityResult方法.

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == VOICE_RECOGNITION_REQUEST_CODE
&& resultCode == RESULT_OK) {
final ArrayList matches = data
.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
Builder builder = new AlertDialog.Builder(this);
mList = new ListView(this);
mList.setAdapter(new ArrayAdapter(this,
android.R.layout.simple_list_item_1, matches));
builder.setView(mList);
final AlertDialog dialog = builder.create();
dialog.show();
}

super.onActivityResult(requestCode, resultCode, data);
}

更多相关文章

  1. 分支和循环(二)(零基础学习C语言)
  2. VS2015+Android环境配置【appt.exe停止运行以及packaged_resourc
  3. Android使用UncaughtExceptionHandler捕获全局异常
  4. Android(安卓)eclipse 自动补全的设置
  5. Android(安卓)应用内切换语言
  6. Android(安卓)点击两次返回键 退出程序
  7. Android(安卓)语言切换(eclipse)
  8. 使用IC框架开发跨平台App的备忘录123
  9. Android(安卓)Plugins

随机推荐

  1. 如何解决安卓SDK无法下载Package的问题
  2. Android(安卓)9 安卓P System-as-root
  3. 编译cubieboard android 源码过程详解之(
  4. 保存和重入Activity 状态的最简单方法
  5. Android(安卓)Jetpack之LiveData源码分析
  6. Android(安卓)自动更新 + IIS7 添加APK m
  7. Android(安卓)事件处理
  8. 【Android】View类详解 (游戏开发必备)
  9. Android-Task Affinity
  10. Android自带音乐播放器专辑图片相同的问