我正在使用cordova-globalization-plugin确定设备上设置的默认语言。
我已经创建了一个基于Windows 10 Cordova的项目。
现在,我需要获得一个事件,在该事件中可以触发我的语言更改逻辑。
在Windows 10桌面上,用户通常可以转到“设置”->“区域和语言”并更改默认语言。
我希望当用户更改语言并单击Apply时,我希望我的应用程序获取该系统事件并执行一些逻辑。
这可能实现吗?有什么想法吗?
这是我当前的代码
index.js
var app = {
// Application Constructor
initialize: function() {
document.addEventListener('deviceready', this.onDeviceReady.bind(this), false);
},
// deviceready Event Handler
//
// Bind any cordova events here. Common events are:
// 'pause', 'resume', etc.
onDeviceReady: function() {
this.receivedEvent('deviceready');
},
// Update DOM on a Received Event
receivedEvent: function(id) {
var parentElement = document.getElementById(id);
var listeningElement = parentElement.querySelector('.listening');
var receivedElement = parentElement.querySelector('.received');
listeningElement.setAttribute('style', 'display:none;');
receivedElement.setAttribute('style', 'display:block;');
console.log('Received Event: ' + id);
navigator.globalization.getPreferredLanguage(
function (language) { console.log('language: ' + language.value + '\n'); },
function () { console.log('Error getting language\n'); }
);
}
};
app.initialize();