↓音声認識を利用するには、以下のようにインテントを作成して飛ばして…
int REQUEST_CODE = 100; // どのIntentからの結果かを判断するための任意の識別子 Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH); intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM); startActivityForResult(intent, REQUEST_CODE);
↓ onActivityResult()をオーバーライドして結果をキャッチすればOK!
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { // requestCodeを確認して、自分が発行したIntentの結果であれば処理を行う if ((REQUEST_CODE == requestCode) && (RESULT_OK == resultCode)) { // 結果はArrayListで返ってくる ArrayList<String> results = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); // ArrayListで返ってきた結果を一纏めにする StringBuffer stringBuffer = new StringBuffer(); for (int i = 0; i < results.size(); i++) { stringBuffer.append(results.get(i)); } // 結果を表示する Toast.makeText(this, stringBuffer.toString(), Toast.LENGTH_LONG).show(); } super.onActivityResult(requestCode, resultCode, data); }
↓こちらのサイトがとてもわかりやすくまとめられていました。
ありがとうございます!
techBooster 音声認識を利用する