uni-app app全量覆盖更新为什么重启会出现wgt版本回退

uni-app app全量覆盖更新为什么重启会出现wgt版本回退

开发环境 版本号 项目创建方式
Mac 15.5 HBuilderX

产品分类:uniapp/App

PC开发环境操作系统:Mac

HBuilderX类型:正式

HBuilderX版本号:4.65

手机系统:Android

手机系统版本号:Android 10

手机厂商:优博讯

手机机型:手持PDA

页面类型:vue

vue版本:vue3

打包方式:云端

示例代码:

plus.runtime.getProperty(plus.runtime.appid, (widgetInfo) => {  
    const appVersion = plus.runtime.version  
    const wgtVersion = widgetInfo.version  
})

操作步骤:

plus.runtime.getProperty(plus.runtime.appid, (widgetInfo) => {  
    const appVersion = plus.runtime.version  
    const wgtVersion = widgetInfo.version  
})

预期结果:

全量更新后无论怎么重启不应该wgt版本异常

实际结果:

全量更新后打开没问题,直接重启整台设备就可能出现wgt版本回退的问题,再重启app可能又会正常

bug描述:

全量更新后打开没问题,直接重启整台设备就可能出现wgt版本回退的问题,再重启app可能又会正常
我是从plus.runtime.getProperty获取的wgt版本


更多关于uni-app app全量覆盖更新为什么重启会出现wgt版本回退的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

请问解决了吗?我也是出现这种问题,之前都好好的,但是现在使用安装包在设备上安卓之后,关机再启动,app就会自动回退到老版本

更多关于uni-app app全量覆盖更新为什么重启会出现wgt版本回退的实战教程也可以访问 https://www.itying.com/category-93-b0.html


没有,已经开始转uniapp x了

这是一个典型的wgt包更新后版本回退问题,可能的原因和解决方案如下:

  1. 问题原因:
  • 设备重启时,系统可能从缓存中恢复了旧的wgt包
  • 更新过程中文件写入未完全同步到存储
  • 某些Android设备对wgt包更新机制支持不完善
  1. 解决方案:
  • 在更新完成后立即调用plus.runtime.restart()强制重启应用
  • 检查更新逻辑,确保wgt包下载和安装完全完成
  • 在manifest.json中配置"syncWgtToNative": true
  1. 代码改进建议:
plus.runtime.install(wgtPath, {
    force: true
}, function() {
    plus.runtime.restart(); // 立即重启
}, function(e) {
    console.error('安装失败:' + e.message);
});
回到顶部