uni.downloadFile({
url: updateData.apkUrl,
fail: (e) => {
spinner.unmount();
uni.showModal({
title: '下载失败',
content: '更新文件下载失败,请重新启动APP',
showCancel: false,
success: (res) => {
if (res.confirm) {
client.quit();
}
}
});
},
success: (downloadResult) => {
spinner.unmount();
if (downloadResult && downloadResult.statusCode === 200) {
plus.runtime.install(downloadResult.tempFilePath, {
force: true
}, () => {
client.restart();
}, (e) => {
uni.showModal({
title: '更新失败',
content: 'APP更新失败,请重新安装',
showCancel: false,
success: (res) => {
if (res.confirm) {
client.quit();
}
}
});
});
}
}
});
- 发布:2024-01-26 10:18
- 更新:2024-01-26 12:19
- 阅读:353
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows 10 专业版
HBuilderX版本号: 3.7.1
手机系统: iOS
手机系统版本号: iOS 16
手机厂商: 苹果
手机机型: iphone所有机型
页面类型: vue
vue版本: vue2
打包方式: 离线
项目创建方式: CLI
CLI版本号: 4.5.13
示例代码:
操作步骤:
添加模块,重新离线打包更新App Store,用户去App Store更新后,我们再发热更新,用户热更新不起了,但是卸载重装就能正常热更新
添加模块,重新离线打包更新App Store,用户去App Store更新后,我们再发热更新,用户热更新不起了,但是卸载重装就能正常热更新
预期结果:
正常热更新
正常热更新
实际结果:
热更新失败
热更新失败
车轮滚滚 (作者)
f"code":-1229"message":"HTML5+Runtime缺少升级包manifest.json中配置的模块:Camera.Geolocation,Barcode,https:/ask.dcloud.net.cn/article/282"}这是报错信息
报错信息 "code":-1229"message":"HTML5+Runtime缺少升级包manifest.json中配置的模块:Camera.Geolocation,Barcode,https:/ask.dcloud.net.cn/article/282"} 说明当前资源和热更新资源中对应的模块是不匹配的,检查一下打包时内置的资源 manifest.json 文件中 permissions 节点和 wgt 资源中 manifest.json 文件中 permissions 节点包含的内容是否一致
-
回复 车轮滚滚: 离线打包,那可能是你升级的时候没有将uni资源 manifest.json 中的版本号和原生工程中的版本号统一导致的,云打包会自动配置这个版本号所以不会有问题,可以测试一下看看是不是这个原因
2024-01-29 12:34
车轮滚滚 (作者)
我就是重新打包更新App Store了,用户去App Store更新后,我再发的热更新
2024-01-26 10:30
II优选
回复 车轮滚滚: 那就不了解了
2024-01-26 10:33