1,判斷是否支持語音識別
p_w_picpathbtn = (ImageButton)findViewById(R.id.p_w_picpathBtn01); p_w_picpathbtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub 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,REQUEST_CODE); } catch(ActivityNotFoundException e){ e.printStackTrace(); Toast.makeText(MianActivity.this , "找不到語音設備", Toast.LENGTH_SHORT).show(); } } });
2,啓動語音識別
ArrayList<String> results= data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); //listView.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,list)); //把數據顯示在listview中 String resultsString = ""; resultsString =resultsString+results.get(0);
3,獲取識別結果,並以Toast顯示出來
Toast.makeText(MianActivity.this, resultsString, Toast.LENGTH_SHORT).show(); super.onActivityResult(requestCode, resultCode,data);