2

Android 上的语言检测似乎并不容易。我还没有亲自测试过,但显然,“navigator.language”总是返回“en”。iOS 和 Android 都可以返回当前的设备语言。有没有一种 Forge 方法可以为我们做原生/js 桥接?

4

2 回答 2

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 );
}
于 2012-07-25T13:13:43.550 回答
0

目前没有用于检测语言的 Forge API。

可以通过使用 navigate.userAgent 解决您指出的问题:请参阅此问题:

获取android中用户的语言

于 2012-07-03T22:52:42.707 回答