2012-07-03 54 views
2

語言檢測does not seem to be easy on Android。我還沒有親自測試過它,但顯然,「navigator.language」總是返回「en」。 iOS和Android都可以返回當前的設備語言。有沒有Forge方法爲我們做native/js橋樑?如何使用Forge檢測用戶語言?

+0

這將是一個很好的補充trigger.io僞造工具集有本地化內置任何*認真*應該應該本地化。我們不都住在山谷中:-)(不幸的是) – Pandaiolo

回答

1

這裏是我用來實現這一代碼。

if (navigator && navigator.userAgent && (lang = navigator.userAgent.match(/android.*\W(\w\w)-(\w\w)\W/i))) { 
    lang = lang[1]; 
} 

if (!lang && navigator) { 
    if (navigator.language) { 
     lang = navigator.language; 
    } else if (navigator.browserLanguage) { 
     lang = navigator.browserLanguage; 
    } else if (navigator.systemLanguage) { 
     lang = navigator.systemLanguage; 
    } else if (navigator.userLanguage) { 
     lang = navigator.userLanguage; 
    } 
    lang = lang.substr(0, 2); 
} 
0

目前沒有Forge API來檢測語言。

這是可能的解決你所指出的,雖然使用navigate.userAgent問題:看到這個問題:

Get the language of user in android

+0

你打算做些什麼來儘快簡化它嗎?只是想知道我是否需要開發一些堅實的東西。我更喜歡在這一點上信任Forge,特別是因爲我不知道Windows手機在這一點上的表現如何。 –

+0

它目前不在我們的短期路線圖中,但我們將在下週四分類我們的積壓。當我們可以在時間尺度上更清晰的時候,我們會在這個線索上報告 –

+0

@AmirNathoo,有什麼消息嗎? – alexdown