uni-app unicloud clientInfo鸿蒙真机os和osname识别错误

uni-app unicloud clientInfo鸿蒙真机os和osname识别错误

项目信息
产品分类 uniCloud/App
PC开发环境操作系统 Windows
PC开发环境操作系统版本号 win11
HBuilderX类型 正式
HBuilderX版本号 4.57
第三方开发者工具版本号 1
基础库版本号 1
项目创建方式 HBuilderX

示例代码:

支付宝官方客服打电话说不兼容鸿蒙 unicloud clientInfo鸿蒙真机os和osname识别错误 要整改

操作步骤:

支付宝官方客服打电话说不兼容鸿蒙 unicloud clientInfo鸿蒙真机os和osname识别错误 要整改

预期结果:

支付宝官方客服打电话说不兼容鸿蒙 unicloud clientInfo鸿蒙真机os和osname识别错误 要整改

实际结果:

支付宝官方客服打电话说不兼容鸿蒙 unicloud clientInfo鸿蒙真机os和osname识别错误 要整改

图片

bug描述:

支付宝官方客服打电话说不兼容鸿蒙 unicloud clientInfo鸿蒙真机os和osname识别错误 要整改


更多关于uni-app unicloud clientInfo鸿蒙真机os和osname识别错误的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

HBuilderX 4.61.2025040322-alpha 已修复。

更多关于uni-app unicloud clientInfo鸿蒙真机os和osname识别错误的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


是不是 vue2 项目?

替换附件中的文件到 HBuilderX 根目录/plugins/uniapp-cli/node_modules/@dcloudio/uni-mp-alipay/dist

这是一个已知的鸿蒙系统兼容性问题。在鸿蒙真机上,uniCloud的clientInfo会错误地将HarmonyOS识别为Android,导致os和osname字段显示不正确。

解决方案:

  1. 临时方案:可以通过判断UA中包含Harmony来手动修正
const systemInfo = uni.getSystemInfoSync();
if(systemInfo.osName === 'android' && systemInfo.ua.indexOf('Harmony') > -1) {
    systemInfo.osName = 'harmony';
    systemInfo.os = 'harmony';
}
回到顶部