Android由于有了Google的支持,那么他的语音识别做起来也是比较简单的,主要是调用谷歌的语音识别软件,然后取得他的返回值,谷歌的语音识别有着极其庞大的云中心以及数据库。当然语音识别是存在一个精度问题的,所以谷歌语音识别软件的返回值不是唯一的,因此到时候需要自己做筛选或者处理:package com.ichances.voice;
import java.util.ArrayList;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.speech.RecognizerIntent;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class VoiceActivity extends Activity {
/** Called when the activity is first created. */
private Button btnReconizer;
private static final int VOICE_RECOGNITION_REQUEST_CODE =618;
private TextView resText;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btnReconizer = (Button) this.findViewById(R.id.button1);
resText = (TextView) findViewById(R.id.restext);
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 += String.valueOf(i + 1) + ":" + results.get(i)
+ ";";
Log.i("结果", resultString);
}
resText.setText(resultString);
Toast.makeText(this, resultString, 1).show();
}
super.onActivityResult(requestCode, resultCode, data);
}
}
分享到:
相关推荐
本篇将深入探讨如何在Android中实现语音识别,并基于提供的"Android语音识别软件代码"进行详细解析。 首先,我们要了解Android系统内置的`SpeechRecognizer`类,它是Android SDK中的核心组件,用于实现语音识别功能...
本示例项目“android语音识别demo”采用的是科大讯飞(IFlytek)的API,这是一个在中国广泛使用的语音识别服务提供商。下面将详细介绍这个demo的实现原理和关键知识点。 1. **科大讯飞API**:科大讯飞提供了多种...
本资源“Android语音识别源码”提供了一个深入理解并实现这一功能的绝佳机会。接下来,我们将详细探讨Android语音识别的核心概念、工作流程以及源码解析。 一、Android语音识别基础 1. **API介绍**:Android系统...
本示例“android语音识别demo”是基于百度语音识别SDK开发的,旨在帮助开发者快速理解和集成这一功能。 首先,我们要理解的是百度语音识别SDK。这是一个由百度提供的服务,它提供了丰富的语音识别能力,包括离线...
在这个名为“安卓语音识别文本朗读相关-三个android语音识别例程mystt.rar”的压缩包中,包含了一些用于理解和实践这两种技术的源代码示例。虽然无法一一验证每个示例的可用性,但它们可以作为开发者学习和参考的...
本教程将深入探讨三种不同的Android语音识别实现方法:通过Intent调用系统服务、通过Service进行后台识别以及自定义识别流程。 1. **通过Intent调用系统服务** Android系统内置了语音识别功能,开发者可以通过...
android语音识别和TTS处理简单源码,包括如何调用语音识别和文本朗读,如果无语音识别设备,可以安装语音搜索apk,如果无tts设备可安装tts的apk,两个apk放置在assets目录下,仅供学习参考
Android语音识别技术主要涉及两个核心部分:使用科大讯飞(IFlytek)SDK和Google的语音识别服务。以下是这两个部分的详细说明。 1. **科大讯飞语音识别** 科大讯飞是中国领先的语音识别技术提供商,其SDK(Msc....
我之前用google的语音识别一直不行,后来才发现我的google语音服务控件给我删了,安上过后就可以了。经兄弟介绍说,讯飞的语音识别相比google更稳定,所以也下载了一个。这里的工程都是网上下载的,为了以后方便找,...
总的来说,这个"android 语音识别转文字.zip"压缩包是一个集成了多种语音处理功能的DEMO,包括语音识别、文字转语音、录音、播放和文件管理等,对于学习和开发Android语音应用的开发者来说,是一个非常有价值的参考...
本资源提供了Android语音识别的源代码,是开发者学习和理解这一技术的宝贵资料。下面将详细介绍Android语音识别的核心知识点及其源码实现。 1. **语音识别API** Android系统内置了Google语音识别服务,可以通过`...
一、Android语音识别 Android系统内置了Google的语音识别服务,但开发者也可以选择第三方解决方案,比如科大讯飞的SDK,以获取更专业的语音识别功能。Android中的语音识别主要涉及以下关键技术: 1. 语音唤醒:在...
以下是对“android语音识别代码”这个主题的详细解释。 1. **Android语音识别API**: Android系统内置了Google语音服务,它提供了语音识别接口,可以将用户的语音输入转化为文本。主要涉及到的类有`...
一、Android语音识别概述 在当今的科技社会中,语音识别技术是一项重要的技术,其核心是将人的语音信号转化为机器能够理解的文本或命令。Android平台作为移动设备上的主流操作系统,也逐渐将语音识别功能融入到各类...
本压缩包文件“android语音识别源文件”正是为Android语音开发者量身打造的资源,它包含了实现语音识别功能所需的源代码和相关文档,帮助开发者快速理解和应用这些技术。 首先,我们需要了解Android系统的语音识别...