Android 如何以编程方式更改TTS默认引擎
除了Android自带的Pico TTS引擎外,我还安装了另一个TTS引擎。我可以更改系统使用的默认值--手动:Android 如何以编程方式更改TTS默认引擎,android,text-to-speech,Android,Text To Speech,除了Android自带的Pico TTS引擎外,我还安装了另一个TTS引擎。我可以更改系统使用的默认值--手动: Settings > Voice input & output > Text-to-speech settings > Default Engine 我希望能够从我的应用程序中以编程方式实现这一点。这可能吗 如果是这样,我该怎么做?您不能更改默认引擎。但是,您可以通过调用(从2.2开始提供)更改正在使用的引擎,或者使用接受引擎包参数的构造函数(在ICS中提
Settings > Voice input & output > Text-to-speech settings > Default Engine
我希望能够从我的应用程序中以编程方式实现这一点。这可能吗
如果是这样,我该怎么做?您不能更改默认引擎。但是,您可以通过调用(从2.2开始提供)更改正在使用的引擎,或者使用接受引擎包参数的构造函数(在ICS中提供,因此现在并不真正有用)
ICS之前也没有API来确定安装了哪些引擎,因此您需要事先了解另一个引擎的软件包才能使用它。上述答案不再有效,因为该方法已被弃用。Android API 14及以上版本需要使用构造函数来设置引擎
TextToSpeech(Context context, TextToSpeech.OnInitListener listener, String engine)
“engine”字符串是您要使用的TTS引擎的包名。API级别14中不推荐使用的方法。您如何知道Google TTS引擎的字符串是什么?您可以在激活它时找到引擎名,然后运行TextToSpeech.EngineInfo()或检查TextToSpeech对象的mCurrentEngine的值。