0

我想顯示對講語言的列表。當我搜索時,我發現通過接收額外廣播獲得可用語音的方式RecognizerIntent.EXTRA_SUPPORTED_LANGUAGES。但在這裏我想知道給定的聲音說英語(美國),可以通過對講應用程序讀/說多少本地人。如果我們啓用輔助功能,並選擇英語作爲語音,它可以讀取許多設備當地人(翻譯),但它不能讀取一些。那麼有沒有辦法找出一個聲音支持多少本地人?如何通過android中的對講獲得給定語音的受支持的本地語言(語言翻譯)

回答

0

TalkBack使用安裝的文本到語音轉換(TTS)引擎來產生其語音輸出,例如,皮科,而不是自言自語。

An introduction to Text-To-Speech in Android將讓你開始使用TTS引擎,然後你需要問引擎它支持使用TextToSpeech.isLanguageSupported(Locale)的語言 - 見Android docs

該手機也必須支持Locale,所以請使用Locale.getAvailableLocales()來確定。語言環境是一種語言,可以選擇具有關聯的國家和變體。

要獲得支持的語言環境的完整列表,請使用:

TextToSpeech tts = new TextToSpeech(context, listener); 
for (Locale locale : Locale.getAvailableLocales()) { 
    if (tts.isLanguageSupported(locale)) { 
     // spoken language supported 
    } 
} 

最後,你的榜樣,你需要通過語言來過濾此列表,即Locale.getLanguage(),以確定哪些是英語(在你的案件)。

+0

@ sits_1608你解決了你的問題嗎?我很想知道結果。 – AwayTeam