【问题标题】:IBM Worklight 6.0 - Unable to detect changed language in BlackBerry 7IBM Worklight 6.0 - 无法检测 BlackBerry 7 中更改的语言
【发布时间】:2014-03-04 17:45:39
【问题描述】:

API 方法WL.App.getDeviceLanguage() 不会在设备上的语言更改后得到“更新”。

考虑具有以下代码的应用程序:

setInterval(function() {
    alert(WL.App.getDeviceLanguage());
}, 2*1000);

如果设备设置为英文,应用程序将正确提醒en。但是,如果您关闭/暂停应用程序,更改语言然后返回应用程序,它仍然会提醒en。要将语言报告为更改后的语言,必须取出电池才能完全重启设备

有什么建议吗?对我来说似乎是一个 Worklight 错误。我正在使用 Worklight 版本 6。

我还要注意navigator.language 产生相同的结果,而blackberry.system.languageBB7 上返回undefined

【问题讨论】:

  • setInterval 的目的是什么?
  • 所以更改语言后返回应用程序后会不断弹出警报。有很多方法可以做到这一点,使用按钮等,或者理想情况下在“恢复”事件上,但这在 BB7 中也不起作用,但这个问题在这里并不真正相关。
  • 这个问题解决了吗?

标签: blackberry ibm-mobilefirst blackberry-webworks


【解决方案1】:

尝试改用WL.App.getDeviceLocale()

此外,Worklight 6.0.0.x 使用 Cordova 2.6。然后,尝试使用Cordova Globalization API set。具体来说,getPreferredLanguage 方法。

最后,WebWorks API 中有System object。请参阅以下 BlackBerry 学习示例:

我还被告知,对于 BB7,需要以下扩展:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多