1、应用名称使用国际化%app.name%,在zh-Hans.json和en.json分别添加“app.name”字段
2、设置系统语言为中文,默认回退语言为英文
3、使用plus.runtime.appid获取APP名字
- 发布:2023-07-21 10:44
- 更新:2023-11-25 18:11
- 阅读:465
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 22H2
HBuilderX类型: 正式
HBuilderX版本号: 3.8.7
手机系统: iOS
手机系统版本号: iOS 16
手机厂商: 苹果
手机机型: iPhone12
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
使用plus.runtime.appid获取APP名字应该得到中文
使用plus.runtime.appid获取APP名字应该得到中文
实际结果:
使用plus.runtime.appid获取APP名字得到的确实英文
使用plus.runtime.appid获取APP名字得到的确实英文
bug描述:
应用名称使用的国际化%app.name%来定义,当我系统语言为中文,默认回退语言设置为英文,使用plus.runtime.appid来获取name得到的是英文名,但uni.getLocale()得到的明明是zh-Hans。当我设置默认回退语言为中文,plus.runtime.appid拿到的name又变成中文了,系统语言为英文时亦是如此.默认语言设置的跟随系统
10 个回复
美乐居士 (作者)
安卓机小米11,安卓版本13也是如此
nopilot
最新hbuilder版本,ios测试也是如此。希望官方能回复解决下,还遇到相机读取权限和用户跟踪权限弹窗的提示语有同样这个bug
套马杆的套子 - 没有解决不了的问题,只有解决不完的问题
手机设置的是什么语言呢?
nopilot
手机设置为英文、中文,问题都是一样的。
如果fallback=中文简体,那么开屏图的APP名字是中文、2个IOS权限弹窗(相册读取、用户跟踪)都是显示中英换杂(提示语标题是正确的中文,但副标题是英文),虽然手机语言=英文。
如果fallback=en,那么那么开屏图的APP名字是英文、2个IOS权限弹窗(相册读取、用户跟踪)都是显示中英混杂(提示语标题是正确的英文,但副标题是中文),虽然手机语言=中文。
这个换了测试手机和hbuilderX版本,问题同样,所以应该是框架组件多语言实现的bug。
套马杆的套子
什么权限呢?你看下在 "app-plus" -> "distribute" -> "android" 节点下,类似于 permissionPhoneState 节点,你看是自己配的么
2023-11-14 10:23
nopilot
IOS的权限勾选是在manifest图形页面,生成的源码如截图
套马杆的套子
https://ask.dcloud.net.cn/article/36549
2023-11-14 11:07
nopilot
再补充下其它manifest的配置截图
nopilot
这个是IOS版本,不是安卓啊。你回的帖子我看了是安卓的,应该不适用IOS吧?
nopilot
这个又重复测试了最新的hbuilderX版本,以及不同的manifest多语言设置(auto+中/英,中/中,英英),发现问题都是一样的,推测就是启动图和那几个框架组件用的是fallback语言,而不是手机os语言、也不是uni.getLocale()的值。
请官方确认修复一下?否则国际化在苹果的表现是明显有问题的。谢谢!
nopilot
这个bug能否请官方确认回复一下吗?如果能排期解决就更感谢不尽。
nopilot
能否烦请官方确认下这是是否是bug?试了各种变通方式,问题都是一样。搜索社区一些老的帖子,发现有多人反馈过同样问题,但都没有得到官方的正式回复。
理解官方技术支持的繁忙程度和优先级。
谢谢!