[Android] 音声認識 RecognizerIntent

最近は「OK Google」で周知されてきた音声認識機能ですが、RecognizerIntent.ACTION_RECOGNIZE_SPEECH を使って音声認識を実装することができます。

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

1x1.trans - [Android] 音声認識 RecognizerIntentボタンタップ
1x1.trans - [Android] 音声認識 RecognizerIntent「テスト」と話しかける
1x1.trans - [Android] 音声認識 RecognizerIntent「テスト」が表示された

 

Android Studio
2021.1.1

 




RecognizerIntent.ACTION_RECOGNIZE_SPEECH

 
言語認識は、サーバーに飛ばして結果を受取ります。基本的にはネットに接続していないと使えませんが、言語認識のパッケージが端末にインストールされているのであればオフラインでも可能です。
 
Intent を使って Activity を遷移し、遷移先から結果を受け取るという仕組みです。
Actvity 画面遷移とデータ受け渡しが参考になります
 

サンプルコード

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


 
レイアウトです
activity_main.xml


 
リソース
strings.xml


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

Ref:
RecognizerIntent | Android Developers

シェアする

  • このエントリーをはてなブックマークに追加

フォローする