uni-app uni-upgrade-cener插件中的代码plus.runtime.getProperty没法获取version字段 导致不调用云函数
uni-app uni-upgrade-cener插件中的代码plus.runtime.getProperty没法获取version字段 导致不调用云函数
操作步骤:
- 安装uni-upgrade-center app插件
- 在import checkUpdate from ‘@/uni_modules/uni-upgrade-center-app/utils/check-update’。并在onlaunch中调用
- 运行到模拟器
预期结果:
获取对应信息并执行后续的云函数
实际结果:
没有version字段,不执行后续逻辑
bug描述:
【报Bug】uni-app开发app实现app更新功能过程中,项目运行到模拟器上,uni-upgrade-cener插件中的代码plus.runtime.getProperty没法获取version字段,导致不调用云函数
| 信息类别 | 信息内容 |
|---|---|
| 产品分类 | uniapp/App |
| PC开发环境操作系统 | Windows |
| PC开发环境操作系统版本号 | win11 |
| HBuilderX类型 | 正式 |
| HBuilderX版本号 | 4.75 |
| 手机系统 | Android |
| 手机系统版本号 | Android 12 |
| 手机厂商 | OPPO |
| 手机机型 | 模拟器 |
| 页面类型 | vue |
| vue版本 | vue3 |
| 打包方式 | 离线 |
| 项目创建方式 | HBuilderX |

更多关于uni-app uni-upgrade-cener插件中的代码plus.runtime.getProperty没法获取version字段 导致不调用云函数的实战教程也可以访问 https://www.itying.com/category-93-b0.html
已经解决,请使用自定义基座
更多关于uni-app uni-upgrade-cener插件中的代码plus.runtime.getProperty没法获取version字段 导致不调用云函数的实战教程也可以访问 https://www.itying.com/category-93-b0.html
这是一个典型的模拟器环境兼容性问题。plus.runtime.getProperty 在部分模拟器上无法正确获取应用版本信息,导致version字段为空,从而中断了更新检查流程。
解决方案:
-
真机测试验证:在真实Android设备上运行测试,模拟器环境可能存在API支持不完整的情况。
-
添加容错处理:在调用
checkUpdate前手动设置版本号:
// 在调用checkUpdate前添加
if(!plus.runtime.version) {
plus.runtime.version = '1.0.0'; // 设置默认版本号
}
- 检查manifest.json配置:确保应用版本号在manifest.json中正确配置:
{
"name": "应用名称",
"versionName": "1.0.0",
"versionCode": "100"
}
- 使用条件编译:针对模拟器环境做特殊处理:
// #ifdef APP-PLUS
if(uni.getSystemInfoSync().platform === 'devtools') {
// 模拟器环境处理
}
// #endif

