[Android] 音声認識 RecognizerIntent

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

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

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

 

Android Studio 3.5.3
API 29

 



RecognizerIntent.ACTION_RECOGNIZE_SPEECH

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

サンプルコード

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

 
レイアウトです
activity_main.xml

 
リソース
strings.xml

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

Ref:
RecognizerIntent | Android Developers

誤字脱字、意味不明で分からにゃイ、
などのご意見はこちらから mailフォーム

ブックマークしておくと便利です このエントリーをはてなブックマークに追加

アプリ開発が上達するお勧め

アプリ開発を始めたけどわからないところがあり、誰かに聞きたいけど周りにはそんな人はいない…あるいは、会社で働いていて日中そんなに時間をとれないなど、オンラインのプログラミングスクールがいいでしょう。

オンラインスクールは色々ありますが、以下の3つはAndroidが学習できる老舗スクールです。


TECH ACADEMY
Androidアプリコース


こういうものではアプリ作れないと言う意見もありますが、それは結局本人のやる気があるかないかです。やる気があっても独学では突破しにくいところは教えてもらうのが一番早い。


侍エンジニア塾
侍エンジニア塾 無料体験レッスン


とても簡単なことなのに本やネットの画像だけでは分かりにくいことはあります。実際に質問してピンポイントで教えてもらうと、なんだそんなこと、と言うのがけっこうあります。


CodeCamp
~約8,000名の受講生と80社以上の導入実績~
現役エンジニアのオンライン家庭教師CodeCamp




直接(ネットで)誰か分かる人に聞いた方が早く解決して、上達も早いと思います。




シェアする

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

フォローする