Androidアプリの開発をしよう04 マルチメディア③

テキストトゥスピーチについて学ぶ

目次

  1. 文章の読み上げ
  2. アプリの制作
  3. プログラムの解説
  4. さいごに

文章の読み上げ

Androidでは文字列を指定して音声による読み上げをすることが出来ます。
これを利用して、指定した文章を読み上げるアプリを作ってみましょう。

アプリの制作

では早速以下のプログラムを実行してください。

実行結果例は以下の動画のようになります。

プログラムの解説

  • 動画で見て分かる通り打ち込んだテキストをAndroidが読み上げているのが判ると思います。
    設定したAndroidの言語によって読み上げる言語が変わります。
    私のエミュレータは日本語設定にしているので、日本語テキストを読み上げてくれます。
    デフォルトでは英語になっているはずなので、英語テキストを読み上げてくれます。
  • テキストの読み上げにはTextToSpeachクラスを利用します。
  • このときテクストスピーチエンジンの初期化時に呼び出されるOnIntentListenerインターフェースを実装するリスナを指定する必要があります。
    読み上げをするときには、テキストを指定してspeak()メソッドを呼び出します。
    このとき、QUEUE_FLUSHかQUEUE_ADDを指定します。
    最後2つの引数にはパラメータを指定しますが、ここでは何も指定しないnullを指定します。
    また、speak()メソッドはSDKバージョンがLOLLIPOP(Android5.0)以上かどうかで振る舞いが変わります。

    この文でバージョンごとの振る舞いを変えています。
    違いはspeak()メソッドの引数の数です。
    if文で振る舞いを変えないと、TextToSpeechは非推奨(Deprecation)扱いとなり、いずれこのアプリが使えなくなってしまいます。

さいごに

いかがだったでしょうか?
結構楽しめるアプリだと思います。
次回はカメラについて学習したいと思います。

このサイトをフォローする!