今天看到了一本书上一个简单的语音识别代码,现在抄过来,算是做个简单的笔记吧,以防突然需要查找的时候找不到资料。也希望需要这方面学习的朋友能关注一下。代码是从书上看的,至于书的名字,就不写了,这样就没有做广告的嫌疑了!
别的不说了,代码如下:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
try {
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, SPEECHREQUEST);
} catch (Exception e) {
Toast.makeText(SpeechrecognitionTest.this, e.getMessage(),
Toast.LENGTH_LONG).show();
}
}
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
@Override
protected void onActivityResult(int requestCode, int resultCode,
Intent intent) {
// requestCode 自己传的代码
// resultCode 返回的结果状态
// TODO Auto-generated method stub
if (SPEECHREQUEST == requestCode && resultCode == RESULT_OK) {
Toast.makeText(SpeechrecognitionTest.this, "返回结果正常",
Toast.LENGTH_LONG).show();
ArrayList<String> result = intent.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); //获取语言的字符
//如果是页面的话,可以更新到页面 每个字母一列
// ListView lv = new ListView(null);
//
// lv.setAdapter(new ArrayAdapter<String>(this, R.layout.main, result));
String resultString="";
//组成字符串
for (int i=0;i<result.size();i++)
{
resultString +=result.get(i);
}
}
super.onActivityResult(requestCode, resultCode, intent);
}
通过以上方式就可以把通过语音说的显示出来了!当然如果你要做别的方面的处理与识别也是可以的,具体的可以查看相关资料,这里只是做一个简单的入门介绍。