WordPress6.6.1に更新しました
【Androidアプリ開発】TextToSpeechをAndroid11以降で使う人は見てください。

【Androidアプリ開発】TextToSpeechをAndroid11以降で使う人は見てください。

こんにちは、コンテンツクリエイターのともすけです。

この記事は、Android OSに標準で組み込まれている音声合成エンジン TextToSpeech(以降TTS)に関して書いています。

いきなり結論

はい、TTSのフル機能を問題なく使うためには、以下のコードをマニフェストファイルに入れてください。筆者は、<manifest>タグと<application>タグの間に入れました。パーミッションを指定するところと同じです。

筆者の開発用スマホ「AQUOS Sense3 lite(Android11)」にて、KDDIのN2TTSを入れていてTTSエンジンの指定もしているのにGoogleの声しか出なく、いろいろ調べていたら出会った解決策です。

Apps targeting Android 11 that use text-to-speech should declare TextToSpeech.Engine.INTENT_ACTION_TTS_SERVICE in the queries elements of their manifest:

https://developer.android.com/reference/android/speech/tts/TextToSpeech#TextToSpeech(android.content.Context,%20android.speech.tts.TextToSpeech.OnInitListener,%20java.lang.String)

Googleが「入れて」と言うので入れたところ、N2TTSの問題が「たまたま」解決しました。

短いですが、このへんで。