Big*_*g O 1 html5 android backbone.js cordova
我正在开发一个使用PhoneGap和Backbone JS的HTML5应用程序.
问题是Android设备上通过设置更改的语言没有进入我的HTML 5应用程序,虽然我可以看到它在独立的浏览器实例中被更改.
为了支持应用程序的全球化,我使用i18n插件为应用程序选择当前语言.我的应用程序适用于iOS.然而,当我尝试这在Android上,由用户选择的语言没有得到体现.例如,如果我选择法国作为从系统设置我的语言,并尝试看看什么是价值window.navigator.language它仍然连接作为反对酒店fr,这在iOS上完全体现出来.只是为了您的信息,正如PhoneGap所建议的那样,在Android上我正在打电话
`public class myApp extends DroidGap {
private String pageURl = "somepath";
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.loadUrl(pageUrl); // this will load my app's main html page.
}
}`
Run Code Online (Sandbox Code Playgroud)
有人可以帮我弄清问题是什么吗?
谢谢大O.
dha*_*val 10
尝试使用以下补丁从用户代理字符串中获取语言,它应该工作:
var lang;
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);
}
console.log("current language is", lang);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3694 次 |
| 最近记录: |