Android语音识别

代码是摘抄的

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();
}

}

如果要对返回的代码进行处理,则需要重写写处理函数,代码如下:

@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);
}

转自 http://www.cnblogs.com/fly_binbin/archive/2010/12/23/1915379.html

你可能感兴趣的:(android)