console.log(plus.os.language) ;
console.log(uni.getSystemInfoSync().language)
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win 10
HBuilderX类型: 正式
HBuilderX版本号: 3.2.9
手机系统: Android
手机系统版本号: Android 10
手机厂商: 华为
手机机型: 畅想
页面类型: nvue
打包方式: 云端
项目创建方式: HBuilderX
console.log(plus.os.language) ;
console.log(uni.getSystemInfoSync().language)
1、用HbulidX 3.2.9版本云打包app,进行安装
2、改变手机系统语言;
3、打开app,查看获取语言信息
获取的语言应该和手机语言一致
获取到的语言和手机语言不一致
plus.os.language获取到的语言和手机设定的语言不一样。
这个问题是最新云打包出现的,之前都没有问题,估计是云打包服务器的配置,请官方看下,谢谢!
HX3.2.11已修复
maple (作者)
1、先把手机语言调整其它语言(不要是中文和英文),然后安装app,第一次打开app用plus.os.language或uni.getLocale()获取到的总是“zh”
2、安装app后,当切换手机系统语言(不要是zh和en)的时候,使用plus.os.language或uni.getLocale()获取,,然后杀掉app进程,再打开总是获得是“zh”,如果改变手机系统语言后,直接打开app则获得的是正确的。
3、如果先设置APP语言,uni.setLocale("en"),那么plus.os.language获取的手机系统语言都是“en”,无论手机系统改成什么语言。
感觉好像是zh和en是安装app后,初始化内置的,获取不到正确的手机系统语言,在没有支持uni.setLocal()功能以前的HBuildX版本,都能够正确获取,而且用Native.js方式获取系统语言,能够获取一个手机语言的list,现在都获取不到了。
帮忙看下,谢谢!
2021-10-31 11:45
maple (作者)
该方法获取的语言依然和手机系统设置语言的不一致,获取的是”zh-Hans“,无论怎么修改手机语言,重启app,获取的还是”zh-Hans“.
而且我用native.js的方法获取的语言也是错误的,之前云打包都是正常的,就是最近才出现这个问题。根据这个现象,应该是云打包时,贵方服务器打包配置把local属性固定了,请官方看下。谢谢!
2021-10-20 18:34
DCloud_Android_ST
回复 maple: 你要获取手机系统语言是吗
2021-10-20 18:39
maple (作者)
回复 DCloud_Android_ST: 是的
2021-10-20 18:41
maple (作者)
因为我们的app要面向不同语言的用户,所以要获取手机系统语言来展示不同的信息。之前打包都是好的。而且之前用native.js能够获取手机系统语言列表,但是只能够获取一个,还是错的。还请大佬帮忙看下。
2021-10-20 18:43
DCloud_Android_ST
回复 maple: 你用HX3.2.10 alpha 试下
2021-10-20 18:44
maple (作者)
回复 DCloud_Android_ST: 这个alpha测试了,经过多次测试,结果如下:
1、在支持uni.getLocal功能之前的HBuildX版本云打包均正常获取系统语言;
2、在此之后的正式版和alpha版都不能够正常获取系统语言,这个问题之前有人反馈到论坛了;
3、由此可见是由于开发uni.getLocal功能影响了获取系统语言的正确性,希望官方能够修复下,谢谢!
2021-10-20 20:05
DCloud_Android_ST
回复 maple: 我们在验证一下
2021-10-21 10:59
maple (作者)
回复 DCloud_Android_ST: 好的,谢谢!
2021-10-21 11:00