通過RecognizerIntent.ACTION_RECOGNIZE_SPEECH調用系統中的語音辨識activity,識別結果通過onActivityResult返回。
下面是API Demo中的代碼。
/**<br /> * Fire an intent to start the speech recognition activity.<br /> */<br /> private void startVoiceRecognitionActivity() {<br /> Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);<br /> intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,<br /> RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);<br /> intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Speech recognition demo");<br /> startActivityForResult(intent, VOICE_RECOGNITION_REQUEST_CODE);<br /> }</p><p> /**<br /> * Handle the results from the recognition activity.<br /> */<br /> @Override<br /> protected void onActivityResult(int requestCode, int resultCode, Intent data) {<br /> if (requestCode == VOICE_RECOGNITION_REQUEST_CODE && resultCode == RESULT_OK) {<br /> // Fill the list view with the strings the recognizer thought it could have heard<br /> ArrayList<String> matches = data.getStringArrayListExtra(<br /> RecognizerIntent.EXTRA_RESULTS);<br /> mList.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,<br /> matches));<br /> }</p><p> super.onActivityResult(requestCode, resultCode, data);<br /> }