当前位置: 首页 > news >正文

探索:Uniapp 安卓热更新

文章目录

  • 效果
  • 快速验证是否可行
  • 实现步骤
  • 参考文章


效果

在这里插入图片描述

在这里插入图片描述


快速验证是否可行

  • 首先打包一个版本比当前安卓高的 wgt 版本,可以在首页写一些更新
    在这里插入图片描述

  • 然后把 wgt 资源放到服务器中,让前端拿到下载地址

  • 主要的热更新逻辑是如下的代码,看看这个是否能生效即可

const updateApp = async () => {console.log('updateApp:>>')console.log('updateInfo:>>', updateInfo.value);if (!updateInfo.value.wgtUrl) {uni.showToast({title: '更新包不存在',icon: 'none'});return}updateLoading.value = trueconst downloadTask = uni.downloadFile({url: updateInfo.value.wgtUrl,success: (res) => {if (res.statusCode === 200) {console.log('downloadTask, res', res)updateLoading.value = falseinstallUpdate(res.tempFilePath);}},fail: (err) => {uni.showToast({ title: '下载失败', icon: 'none' });console.error('下载失败:', err);}});// 进度更新downloadTask.onProgressUpdate((res) => {updateProgress.value = res.progress;});
};
// 安装更新
const installUpdate = (tempFilePath: string) => {// #ifdef APP-PLUSplus.runtime.install(tempFilePath,{ force: false },() => {restartFlag.value = true;setTimeout(() => {plus.runtime.restart();}, 1500);},(err) => {uni.showToast({ title: '安装失败', icon: 'none' });console.error('安装失败:', err);});// #endif
};

实现步骤

  • wgt 的包版本要比当前安装的版本高,否则会报如下错误
{"code": -1205,"message": "WGT installation package manifest.json the version of the file does not match"
}

参考文章

  • https://juejin.cn/post/7511904422525321252
http://www.dtcms.com/a/310871.html

相关文章:

  • flink写paimon表的过程解析
  • cmd怎么取消关机命令
  • 【DL学习笔记】yaml、json、随机种子、浮点精度、amp
  • hcip---ospf知识点总结及实验配置
  • 学习嵌入式第十八天
  • rag学习-以项目为基础快速启动掌握rag
  • 深入 Go 底层原理(十):defer 的实现与性能开销
  • Vue3+ts自定义指令
  • 深入 Go 底层原理(二):Channel 的实现剖析
  • 基于结构熵权-云模型的铸铁浴缸生产工艺安全评价
  • 打靶日记-RCE-labs(续)
  • linux eval命令的使用方法介绍
  • php完整处理word中表单数据的方法
  • 【软考中级网络工程师】知识点之级联
  • PHP面向对象编程与数据库操作完全指南-上
  • ctfshow_源码压缩包泄露
  • Arduino IDE离线安装ESP8266板管理工具
  • 网络安全基础知识【6】
  • Linux初步认识与指令与权限
  • 机器学习sklearn:聚类
  • 读书:李光耀回忆录-我一生的挑战-新加坡双语之路
  • 【物联网】基于树莓派的物联网开发【21】——MQTT获取树莓派传感器数据广播实战
  • Python So Easy 大虫小呓三部曲 - 高阶篇
  • html5+css3+canvas长文转长图工具支持换行
  • 国产嵌入式调试器之光? RT-Trace 初体验!
  • C++之vector类的代码及其逻辑详解 (中)
  • 电力系统分析学习笔记
  • 谷歌Chrome浏览器安装插件
  • 论文笔记:Bundle Recommendation and Generation with Graph Neural Networks
  • 设计Mock华为昇腾GPU的MindSpore和CANN的库的流程与实现