我創建了一個支持多種語言的文本到語音引擎,其中之一是印地語。文本到語音語言環境印地語印度語
在Android文本到語音設置,當用戶選擇一個默認的語言環境,Android的做了多項檢查,包括髮送意圖ACTION_GET_SAMPLE_TEXT
這是我支持的語言環境的列表:
private static final String[] SUPPORTED_LANGUAGES = { "eng-GBR", "eng-USA", "fra-FRA", "spa-ESP", "deu-DEU", "ita-ITA",
"kor-KOR", "nld-NLD", "dan-DNK", "fin-FIN", "jpn-JPN", "nor-NOR", "pol-POL", "por-PRT", "por-BRA", "rus-RUS",
"swe-SWE", "zho-CHN", "zho-HKG", "zho-TWN", "ara-SAU", "hi-IN", "ces-CZE", "ell-GRC", "hun-HUN", "ron-ROU",
"slk-SVK", "tha-THA", "tur-TUR", "cym-GBR", "isl-ISL", "in-IDN" };
對於除「hi-IN」以外的每個語言環境,Android都會發送此意圖,並以示例文本回復,並且「聽取示例」按鈕變爲可用。
我已成功將LANG_COUNTRY_AVAILABLE從呼叫轉回onIsLanguageAvailable,但按鈕仍保持灰色,並表明該語言不受支持。
我已經試過了現場的這麼多不同的ISO組合:
欣-IN,HI-IND,IND-HI等等等等,但是Android不發送的意圖,儘管它被正確標記在印地語(印度語)或印地語的語言環境列表中。
logcat中沒有錯誤提示失敗的變體匹配。
有小點,我張貼我的代碼,由於Android根本不發送意向書此語言環境,所以它不會達到我的代碼....
任何想法如何正確處理這種區域設置變體?
編輯:我剛剛意識到它也發生了印尼(在-IDN)
分別爲印度語和印度尼西亞語試用'hin-IND'和'ind-IDN'。 – ozbek
@shoerat非常感謝你!我發誓盲目我嘗試了這些組合?無論如何,如果你把你的評論放在答案中,我會獎勵你的賞金。再次感謝。 – brandall