Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android TextToSpeech从系统获取语音速率_Android_Text To Speech_Android Accessibility_Amazon Fire Tv_Android Tts - Fatal编程技术网

Android TextToSpeech从系统获取语音速率

Android TextToSpeech从系统获取语音速率,android,text-to-speech,android-accessibility,amazon-fire-tv,android-tts,Android,Text To Speech,Android Accessibility,Amazon Fire Tv,Android Tts,我有一个Android电视应用程序,运行在Fire电视棒上。我已经初始化了一个TextToSpeech引擎,并通过speak函数调用它。我的问题是,当我在设置中更改语音速率时,语音速率(对讲速度)不会改变。我知道我可以使用setSpeechRate(rate)将语音速率设置为我喜欢的浮动,但我想知道如何从系统中获取速率 到目前为止,我已尝试使用: Settings.Secure.getString(contentResolver,Settings.Secure.TTS\u DEFAULT\u R

我有一个Android电视应用程序,运行在Fire电视棒上。我已经初始化了一个
TextToSpeech
引擎,并通过
speak
函数调用它。我的问题是,当我在设置中更改语音速率时,语音速率(对讲速度)不会改变。我知道我可以使用
setSpeechRate(rate)
将语音速率设置为我喜欢的浮动,但我想知道如何从系统中获取速率

到目前为止,我已尝试使用:
Settings.Secure.getString(contentResolver,Settings.Secure.TTS\u DEFAULT\u RATE)null
Settings.Secure.getInt(contentResolver,Settings.Secure.TTS\u DEFAULT\u RATE)
抛出一个
SettingNotFound
错误。如果我给它一个回退值,无论我如何更改系统VoiceView设置,它都将始终使用该值。我的代码大致执行以下操作:

TextToSpeech引擎=新的TextToSpeech(上下文,此);
ContentResolver ContentResolver=context.getContentResolver();
int speechRate=Settings.Secure.getInt(contentResolver,Settings.Secure.TTS\u DEFAULT\u RATE,100);
发动机。设定转速((浮动)(speechRate/100));
speak(“这是一个示例句子”,QUEUE_FLUSH,null,outtanceid);
我对写入设置犹豫不决,因为1)我不想要求额外的写入权限;2) 即使我写信给它,似乎更改系统设置也不会更改此设置,这是我的最终目标


是否有其他方法可以获得Android中的辅助功能设置,如VoiceView速度?

您的代码似乎正确:mdefaultte=Android.provider.settings.Secure.getInt(解析程序,TTS默认速率);这是谷歌如何提取默认利率根据感谢回应!FireTV的功能似乎与其他Android电视设备稍有不同,如果确实使用了这些设置,则不会使用相同的安全设置。