6 个答案:
答案 0 :(得分:11)
你可以在TTS speak()方法中得到它,但只能从API级别11开始。
为了保持向后兼容性,你可以定位更高的api级别(使用更低的min sdk)并使用“@TargetApi(api_level)”装饰器以及sdk版本检查。
/** speak the single word, at a lower volume if possible */
protected void speakOneWord(String text) {
int apiVer = android.os.Build.VERSION.SDK_INT;
if (apiVer >= 11){
speakApi13(text);
} else {
// compatibility mode
HashMap params = new HashMap();
mTts.speak(text, TextToSpeech.QUEUE_ADD, params);
}
}
/** speak at a lower volume, for platform >= 13 */
@TargetApi(13)
protected void speakApi13(String text) {
HashMap params = new HashMap();
params.put(TextToSpeech.Engine.KEY_PARAM_VOLUME, "0.1");
mTts.speak(text, TextToSpeech.QUEUE_ADD, params);