我们正在使用TextToSpeech类中的talk(..)方法在Android中执行TTS。
TextToSpeech API中的语音方法是否将数据发送到Google服务器以获得更好的性能,或者输入仅保留在设备上?
谢谢, RS
答案 0 :(得分:0)
您可以为TextToSpeech对象分配特定的Voice,并且该语音可以是网络语音,也可以不是网络语音。因此,是否使用互联网取决于:
1)当前网络语音是否已分配给TextToSpeech对象,
2)设备正在使用什么引擎,以及该引擎是否完全支持网络语音(并不总是使用Google ...,并且某些引擎[或更旧的版本]不使用网络语音) ,
3)在设备的TTS设置中未禁用网络功能,
4)无论您是否在线。 :)
只要您运行的是Android API 21或更高版本,就可以通过在分配了所需语音的之后和之前添加此行来检查是否需要互联网包含speak()的行:
boolean isNetRequired = yourTTSObject.getVoice().isNetworkConnectionRequired();