[Android] Google語音識別
[Android] Google語音識別
protected void onCreate(){
PackageManager pm = getPackageManager();
List activities = pm.queryIntentActivities(new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH), 0);
if (activities.size() == 0) {
Log.e(TAG, "Oops...ACTION_RECOGNIZE_SPEECH not present");
return;
}
// 啟動語音辨識
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, RECOGNITION_REQUEST_CODE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode != RECOGNITION_REQUEST_CODE) {
Log.d(TAG, "The request code doesn't match - " + requestCode);
return;
}
if (resultCode != RESULT_OK) {
Log.d(TAG, "The result code doesn't match - " + resultCode);
return;
}
// 語音辨識成功後,將結果回寫
List result = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
Toast.makeText(getApplicationContext(), result.get(0).toString(), Toast.LENGTH_LONG).show();
Log.d(TAG,"Voice : " + result.get(0).toString());
DoAfterVoice(result.get(0).toString());
}
public void DoAfterVoice(String v_msg){
//v_msg 語音收到既文字
}
//下面這行無關
留言
張貼留言