簡體   English   中英

從Android中的程序啟用默認的TTS引擎

[英]Enable default TTS engine from program in android

是否可以檢查是否在Android中啟用了默認的“文字轉語音”引擎? 如果沒有,我可以通過我的Android程序啟用它嗎? 如果是這樣,怎么辦?

Intent checkIntent = new Intent();
checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA);
startActivityForResult(checkIntent, MY_DATA_CHECK_CODE);

上面的代碼顯示了可用的其他TTS,並顯示為對話框,然后選擇所需的TTS,然后單擊“確定”。 完成后,系統(平板電腦或手機)會自動選擇所選的TTS並啟用它。

我可以通過將其放在自定義布局中(列出已安裝的TTS)來做同樣的事情嗎?我可以選擇所需的內容並通過單擊“啟用”按鈕或其他方式啟用它嗎?

謝謝!

您可以在ICS中列出可用的TTS引擎,並且可以在Froyo及更高版本上通過程序包名稱和語言測試可用性。 TTS引擎由系統控制,因此您無法從您的應用中禁用/啟用它們。 您只能提示用戶這樣做。

回復:編輯過的問題。 這是一個完全不同的故事。 此意圖檢查是否已安裝TTS數據,並且如果您有多個引擎,則必須選擇一個引擎來處理該意圖。 這只是Android調度意圖的方式,與TTS無關。 如果通過調用Intent.setPackage("my.tts.package")使意圖明確,則不會顯示該對話框。 請注意,這不會檢查是否啟用了TTS引擎。 我沒有檢查過,但是我懷疑如果在“設置”中禁用了TTS引擎,它將啟用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM