[Android] 音声認識 RecognizerIntent

Android でも音声認識機能を実装することができます。
RecognizerIntent.ACTION_RECOGNIZE_SPEECH
を Intent で発行して音声認識の Activity を起動させます。

簡単に機能を確認する例です

recongnizerintent_0ボタンタップ
recongnizerintent_1「テスト」と話しかける
recongnizerintent_2「テスト」が表示された

 

RecognizerIntent

 

Activity は端末自体にはなくサーバーにあります。なので、ネットに接続していないと使えません、Emulator では利用できないようです。
Intent を使って Activity を遷移し、遷移先から結果を受け取るという仕組みです。
Actvity 画面遷移とデータ受け渡しが参考になります

結果は onActivityResult() で受け取りますが、いくつもの候補リストで返ってきます。ここでは順位1位のものを表示させています。
 
MainActivity.java

 

activity_main.xml

これは最低限の機能検証ですので実際のアプリに組み込むにはこの他にも色々手当をする必要はあります。