作者:张宗硕
谷歌允许开发人员调用他们实现的语音识别的接口,当然识别率不是很高,个人感觉不如科大讯飞做的语音识别率那么高,但通过谷歌给开发的接口实现语音识别是个非常简单的事情。Android中主要通过RecognizerIntent来实现语音识别,其实代码比较简单,但是如果找不到设置,就会抛出异常ActivityNotFoundException,所以我们需要捕捉这个异常。而且语音识别在模拟器上是无法测试的,因为语音识别是访问google云端数据,所以如果手机的网络没有开启,就无法实现识别声音的!一定要开启手机的网络,并且要保证手机支持语音识别,否则运行下面的代码会看到找不到语音设备这条提示信息。解决的方法是用手机下载支持语音输入的安装包。
Java代码如下:
package com.iwin.zzs;
import java.util.ArrayList;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.speech.RecognizerIntent;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MyspeakActivity extends Activity {
private Button btnReconizer;
private static final int VOICE_RECOGNITION_REQUEST_CODE = 1234;
@Override
protected void onCreate(Bundle savedInstanceSta

本文介绍了如何在Android平台上利用谷歌的语音识别接口实现语音识别功能。虽然识别率可能不如科大讯飞,但通过RecognizerIntent进行实现的过程相对简单。需要注意的是,代码中需要捕获可能出现的ActivityNotFoundException异常,并确保手机开启网络且支持语音识别。此外,模拟器无法测试此功能,必须在真机上进行,并在AndroidManifest.xml中添加INTERNET权限。
最低0.47元/天 解锁文章
924

被折叠的 条评论
为什么被折叠?



