关于Android利用RecognizerIntent识别语音并简单实现打电话,具体看实现代码如下:

package com.example.recognizerintentactivity;import java.util.ArrayList;import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.speech.RecognizerIntent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;public class MainActivity extends Activity {private Button btnReconizer;
private static final int VOICE_RECOGNITION_REQUEST_CODE = 1234;@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);btnReconizer = (Button) this.findViewById(R.id.btnRecognizer);
btnReconizer.setOnClickListener(new OnClickListener() {@Override
public void onClick(View v) {
// TODO Auto-generated method stub
try {
// 通过Intent传递语音识别的模式,开启语音
Intent intent = new Intent(
RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
// 语言模式和自由模式的语音识别
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
// 提示语音开始
intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "开始语音");
// 开始语音识别
startActivityForResult(intent,
VOICE_RECOGNITION_REQUEST_CODE);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
Toast.makeText(getApplicationContext(), "找不到语音设备", 1)
.show();
}
}
});}@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
// 回调获取从谷歌得到的数据
if (requestCode == VOICE_RECOGNITION_REQUEST_CODE
&& resultCode == RESULT_OK) {
// 取得语音的字符
ArrayList<String> results = data
.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);String resultString = "";
for (int i = 0; i < results.size(); i++) {
resultString += results.get(i);
}if(resultString.indexOf("喂") >-1){
String tel = "15100000000";
Intent intent = new Intent();
intent.setAction(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:" + tel));
startActivity(intent);
Toast.makeText(this,tel, 1).show();
}else{
Toast.makeText(this, "没找到要拨打的电话", 1).show();
}
}
super.onActivityResult(requestCode, resultCode, data);
}
}

这里,我们需要注意的是,需要用到两个权限,一个是网络资源,一个是打电话的这个动作权限,因此,我们需要修改 AndroidMainfest.xml增加两条内容,如下

<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.INTERNET" />

Android利用RecognizerIntent识别语音并简单实现打电话动作相关推荐

  1. Android 利用 Voice Search语音接口 进行语音识别结果太不准

    公司最近在做语音识别的项目,但是又要求要录音,纠结了很久,后来发现谷歌的借口了,但是去识别不准.唉....直接上代码大神们帮我看看吧,小弟在此谢过了. public class MainActivit ...

  2. Android利用DiskLruCache和LruCache实现简单的照片墙

    现在很多App的某些功能会把图片以及内容缓存在本地,即使是没有网络的情况下也还是可以加载出之前浏览过的内容来,这些功能就是使用了DiskLruCache技术: LruCache负责管理内存中图片的存储 ...

  3. Android 利用viewPager FragmentPagerAdapter 做一个简单的相册视图

    说一下注意事项:你的布局需要用到viewparger 和 tabLayout 控件这两个控件要写全路径名 看图片中Tablayout的参数 设置选中 非选中 下划线颜色. 如果网络获取图片加权限 &l ...

  4. 安卓(Android)开发百度语音唤醒(识别)

    安卓(Android)开发百度语音唤醒(识别) 目录 安卓(Android)开发百度语音唤醒(识别) 一:准备 1:获取自定义唤醒词 2:SDK下载 3:将bdasr_V3_xxx_xxx.jar引入 ...

  5. Android语音转文字一识别语音

    项目地址:https://github.com/zhanlv/VtDemo 讯飞AndroidSDK文档:https://doc.xfyun.cn/msc_android/%E9%A2%84%E5%A ...

  6. Android利用MedioRecorder使用仿微信语音录音以及播放(总结)

    今天模仿着微信的发送语音功能做了一下,现将步骤以及其中遇到的问题记录一下,以便以后查看. 实现功能:1.录制语音并显示到列表中:2.点击列表中的语音自动进行播放:3.录制语音时以及播放语音时的动画效果 ...

  7. 打造Android的中文Siri语音助手

    打造Android的中文Siri语音助手(一)--小I机器人的接口 分类: android2011-12-02 14:10 7879人阅读 评论(44) 收藏 举报 androidstringpath ...

  8. Android之人脸识别

    前言 人工智能时代快速来临,其中人脸识别是当前比较热门的技术,在国内也越来越多的运用,例如刷脸打卡.刷脸App,身份识别,人脸门禁等等.当前的人脸识别技术分为WEBAPI和SDK调用两种法方式,WEB ...

  9. android tensorflow文字识别身份证识别ocr文字识别商用源码

    一 ,文字识别简介 计算机文字识别,俗称光学字符识别,英文全称是Optical Character Recognition(简称OCR),它是利用光学技术和计算机技术把印在或写在纸上的文字读取出来,并 ...

最新文章

  1. Corn Fields(POJ 3254状压dp)
  2. 机器学习(MACHINE LEARNING)MATLAB蚁群算法解决TSP问题
  3. 小学计算机ppt课教案,小学信息技术公开课教案《让幻灯片变得更加漂亮》教学设计与反思...
  4. 自动化Debias框架,一键去除推荐系统所有Bias
  5. 进一步理解CSS浮动与清除浮动
  6. 不再遥不可及!盘点独角兽自动驾驶战略
  7. 求101-200以内的素数
  8. iOS底层探索之多线程(十一)—GCD源码分析(调度组)
  9. 2021深圳杯数学建模D题概览
  10. 中国机床行业投资现状与十四五发展战略决策报告2022版
  11. 方便简洁的在线WEB多人网页聊天室系统源码
  12. Crushers is the determiner in mining industry
  13. mongoose视频教程
  14. 魔兽争霸3冰封王座 对战初始化被禁止
  15. 一零二、Vue中自定义emoji表情包
  16. shipyard中文版安装教程(附安装脚本)
  17. 【python】parser.add_argument后面为什么要加-和--?
  18. 练手必备,20个Python实战项目含源代码
  19. echarts中如何配置图例形状、图标宽高、图标和文字间距、图例位置、文字颜色、字体大小
  20. 科大讯飞离线命令词识别

热门文章

  1. linux离线安装pyhs2,Python 下载及安装详细步骤
  2. git 使用_Git使用总结
  3. createbitmap 旋转90度_小学数学,图形的运动,平移与旋转
  4. MyStringUtil.java String工具类
  5. mybatis一套完整入门教程
  6. java面试宝典 之 物流配送路径优化问题分析与算法解读
  7. 2021年高考成绩查询梧州市,2021高考结束!带你直击梧州考生走出考场的那一瞬间!6月23日公布高考分数线.....
  8. enfp工具箱怎么用_隐喻:你的工具箱
  9. Apache2.4开启php
  10. 读取Webpage表中的内容