【发布时间】:2012-02-28 11:51:54
【问题描述】:
按照this answer 中的提示,我在onActivityResult() 中调用了setEngineByPackageName,此时requestCode == REQ_TTS_STATUS_CHECK && TextToSpeech.Engine.CHECK_VOICE_DATA_PASS:
tts = new TextToSpeech(this, this);
tts.setEngineByPackageName("com.ivona.tts.voicebeta.eng.usa.kendra");
但无论我在文本转语音设置中选中还是取消选中 Always use my settings,我总是得到 pico 默认引擎!
是的,我故意将 pico 引擎设置为默认值,以便我可以测试通过 aforementioned tip 覆盖它。但那个 API 方法似乎根本不起作用,或者......我错过了什么?
(我知道 setEngineByPackageName 已被弃用,因为它不会在 TTS 引擎初始化时通知调用者,但我需要支持 API 8,所以此方法是我唯一的选择时刻)
【问题讨论】: