Up to API 29 tts is working fine on android to speak out any text
But on API 30 tts is not working anymore and i do not know why
The google documentation says :
"Apps targeting Android 11 that use text-to-speech should declare TextToSpeech.Engine#INTENT_ACTION_TTS_SERVICE in the elements of their manifest"
I do not exactly know what they mean and how to implement this in the manifest.
I hope anybody can help me with this.
We've introduced a new feature in version 1.6 of the Android platform: Text-To-Speech (TTS). Also known as "speech synthesis", TTS enables your Android device to "speak" text of different languages.
AddSpeech(String, String, Int32) Adds a mapping between a string of text and a sound resource in a package. AddSpeech(ICharSequence, String, Int32) Adds a mapping between a CharSequence (may be spanned with TtsSpans) of text and a sound resource in a package.
Although probably not the best answer (or maybe just a glitch on Androids part) add the following code just above the <application
in your manifest.
<queries>
<intent>
<action android:name="android.intent.action.TTS_SERVICE" />
</intent>
</queries>
<application
android:allowBackup="false"
After adding this code my TTS service started to work again, but I do get a warning from the manifest file about it not being allowed there, but anywhere in the manifest gives this same warning so I suppress it with <!--suppress AndroidElementNotAllowed -->
just above the <manifest
tag at the top.
@jayce's answer helps if app is targeting the Android 11 https://developer.android.com/reference/android/speech/tts/TextToSpeech
Note: sorry for the noise but I don't have enough reputation to put my comment there.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With