我想实现一些机制来为Cordova应用程序自动选择UI语言。该应用程序也可以从网络(即浏览器)提供。
从我看来,我可以使用Cordova全球化API插件(here),或者似乎Android和iOS都支持navigator.language,它提供设备语言。
我是否应该选择在内置浏览器/ Web View属性中使用Cordova插件?
谢谢!
答案 0 :(得分:2)
在真实设备上进行一系列搜索和测试之后,我可以说检索设备语言的两种方法或多或少是两个小差异的异常:
italian
,但选择区域USA
。在这种情况下,插件将以it-US
属性不同地返回字符串navigator.language
,该属性将返回字符串it-IT
(在iOS 11上测试)。如果你必须只知道语言,这不是一个大问题。navigator.language
没有立即更新。只有在应用程序被终止后才能使用新设置。该插件不会遭受这个bug的影响。解决方法可能是使用已正确更新的navigator.languages
属性(在Android 5.0.2上测试)。如果您必须只知道该语言,则可以毫无问题地使用navigator
对象提供的信息。