位置: IT常识 - 正文

uniapp前端实现热更新(uniapp前端 django后端)

编辑:rootadmin
uniapp前端实现热更新

推荐整理分享uniapp前端实现热更新(uniapp前端 django后端),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uniapp redirectto,uniapp开发pc页面,uniapp后端,uniapp require,uniapp开发web,uniapp redirectto,uniapp require,uniapp前端 django后端,内容如对您有帮助,希望把文章链接给更多的朋友!

思路:

1、首先,在主页或app.vue中使用plus.runtime.getProperty()获取到app的当前wgt包版本号。

2、然后,通过后端返回给你的接口里有一个版本号(需要手动去后台管理系统中上传一个wgt包,并输入这个wgt包的版本号)。

3、再之后,将这个版本号与app当前版本号进行对比,若当前版本号大于后端给你的版本号,就不升级,反之,则显示升级弹框,请用户下载升级(开发者调用下载安装api)。

4、最后,使用plus.runtime.restart()进行app重启刷新,在设置中加一个plus.runtime.getProperty()获取到版本号。

热更新所使用到的api:

uniapp前端实现热更新(uniapp前端 django后端)

1、获取app当前wgt包版本号:plus.runtime.getProperty();

2、下载:uni.downloadFile();

3、安装wgt包:plus.runtime.install();

4、重启app:plus.runtime .restart();

代码:

1、先获取app当前版本号与后端最新wgt包进行对比

//用于对比的函数duibi(version1 ,version2){ let arr1=version1.split("."); let arr2=version2.split("."); let length=Math.max(arr1.length,arr2.length); for (let i = 0; i < length; i++) { const n1 = Number(arr1[i]||0) const n2 = Number(arr2[i]||0)// 第一个版本号大 if (n1 > n2) return 1//第二个版本号大 if (n1 < n2) return 2 } return false;}//获取app当前版本号plus.runtime.getProperty(plus.runtime.appid, (widgetInfo) => {this.version = widgetInfo.version; });

注意:千万千万不要用这个(plus.runtime.version)作为判断,它获取的是当前app的安装包版本,上面的那个是获取wgt包的版本,两个不一样,plus.runtime.version始终是一个恒定的值,除非安卓整包更新。plus.runtime.version不能用做wgt热更新判断!!!

2、进行弹框询问和下载安装api调用,重启app完成热更新

if(当前通过上面的对比需要更新时){uni.showModal({title: "系统提示",content: `当前版本号为(当前版本号),邀您更新版本(最新版本号)`,success: (res) => { //用户确认更新if (res.confirm) { //使用下载api(uni.downloadFile)let uploadTask = uni.downloadFile({url: '下载地址', success: (downloadResult) => { //使用安装wgtapi(plus.runtime.install)plus.runtime.install(downloadResult.tempFilePath, {force: true},function() {uni.showModal({title: '系统提示',content: '新版本已经更新完成,需要重启应用',showCancel: false, //用户点击确认重启success: function(res) {if (res.confirm) { 调用重启api(plus.runtime.restart)plus.runtime.restart();} else if (res.cancel) {console.log('用户点击取消');}}});})}});//在这里监听用户下载进度uploadTask.onProgressUpdate((res)=>{this.pro = res.progress;console.log(this.pro);if(this.pro==100){this.isDown = false;}})}}});}

3、监听用户下载进度并优化弹框

为了使本文看起来不过于繁琐,就不单独再开一个代码块了,需要了解详情的可以进入官方文档https://uniapp.dcloud.net.cn/api/request/network-file.html#uploadfile

本文链接地址:https://www.jiuchutong.com/zhishi/300755.html 转载请保留说明!

上一篇:Web 1.0、Web 2.0 和 Web 3.0 之间的比较

下一篇:YOLO算法创新改进系列项目汇总(入门级教程指南)(yolo算法百度百科)

  • 微信拍照声音怎么关(微信拍照声音怎么关苹果手机13)

    微信拍照声音怎么关(微信拍照声音怎么关苹果手机13)

  • 苹果8外观多大尺寸(苹果8外观尺寸大小)

    苹果8外观多大尺寸(苹果8外观尺寸大小)

  • ipad序列号dm开头什么版(ipad序列号开头是dmq)

    ipad序列号dm开头什么版(ipad序列号开头是dmq)

  • qq一天能加多少群(qq一天能加多少好友会被冻结)

    qq一天能加多少群(qq一天能加多少好友会被冻结)

  • 手机流量慢怎么办(手机流量慢怎么提速)

    手机流量慢怎么办(手机流量慢怎么提速)

  • 店铺屏蔽七天严重吗(店铺屏蔽7天后多久恢复权重)

    店铺屏蔽七天严重吗(店铺屏蔽7天后多久恢复权重)

  • iphone11pro和11pro max区别(iphone11pro和11promax买哪个好)

    iphone11pro和11pro max区别(iphone11pro和11promax买哪个好)

  • 抖音用什么软件做视频(抖音用什么软件剪辑视频比较好)

    抖音用什么软件做视频(抖音用什么软件剪辑视频比较好)

  • 电脑充电时可以使用吗(电脑充电时可以关机吗)

    电脑充电时可以使用吗(电脑充电时可以关机吗)

  • qq怎么查看密保问题(qq怎么查看密保设没设置)

    qq怎么查看密保问题(qq怎么查看密保设没设置)

  • vivo设置返回键位置(vivo设置返回键怎么在屏幕旁边)

    vivo设置返回键位置(vivo设置返回键怎么在屏幕旁边)

  • 苹果x屏幕原彩是什么(苹果x原彩屏是什么)

    苹果x屏幕原彩是什么(苹果x原彩屏是什么)

  • 个人计算机属于什么类型(个人计算机属于小型计算机)

    个人计算机属于什么类型(个人计算机属于小型计算机)

  • ps如何做壁纸(ps壁纸制作教程简单)

    ps如何做壁纸(ps壁纸制作教程简单)

  • 华为p30怎么用两个微信(华为p30怎么两个应用一起看视频)

    华为p30怎么用两个微信(华为p30怎么两个应用一起看视频)

  • 乐视2怎么root授权

    乐视2怎么root授权

  • 三星a5怎么滚动截屏(三星a51手机如何滚动截屏)

    三星a5怎么滚动截屏(三星a51手机如何滚动截屏)

  • 物联卡实名制怎么销户(物联卡实名制怎么解绑)

    物联卡实名制怎么销户(物联卡实名制怎么解绑)

  • 怎样把文件发送到qq里(怎样把文件发送到微信)

    怎样把文件发送到qq里(怎样把文件发送到微信)

  • 抖音视频推荐是什么意思(抖音视频推荐是自然流量吗)

    抖音视频推荐是什么意思(抖音视频推荐是自然流量吗)

  • jkmtl00华为什么型号(jkmtl00b华为什么型号)

    jkmtl00华为什么型号(jkmtl00b华为什么型号)

  • 苹果音量平衡要开启吗(苹果音量平衡要打开还是关闭)

    苹果音量平衡要开启吗(苹果音量平衡要打开还是关闭)

  • 快手怎么取关所有人(快手怎么取关所有粉丝)

    快手怎么取关所有人(快手怎么取关所有粉丝)

  • 华为手势锁屏在哪设置(华为手势锁屏在哪设置方法)

    华为手势锁屏在哪设置(华为手势锁屏在哪设置方法)

  • 小米手环4能打电话吗(小米7手环有哪些功能)

    小米手环4能打电话吗(小米7手环有哪些功能)

  • ipad专业视频剪辑软件(ipad2021剪视频)

    ipad专业视频剪辑软件(ipad2021剪视频)

  • 微信小程序用处有哪些(微信小程序用处大吗)

    微信小程序用处有哪些(微信小程序用处大吗)

  • 多交了企业所得税,下年度退税,需要更正撒意思
  • 税务系统纳税申报
  • 企业所得税怎么算出来
  • 未投入使用的固体废物
  • 房租合同印花税计算方法
  • 关联企业间无偿资金的占用属于借款费用吗
  • 金融业的增值税
  • 简易征收红冲报税方式是什么?
  • 为什么算除税价不算税金
  • 预缴税款个人所得税如何计算
  • 加计扣除10%进项税账务处理 如何填表
  • 股东投进来的钱可以放哪个科目
  • 进项税和销项税借贷方向
  • 租用办公室协议书
  • 在windows7提供了一种什么技术
  • 计提企业所得税费用会计分录
  • 发出商品与库存商品的区别
  • 在win10中怎么从edge旧ie浏览器
  • php创建二维数组
  • macbookpro鼠标滚轮是反的
  • 一般纳税人取得普票会计分录
  • kb4580325更新
  • 私企固定资产管理办法
  • 免征的增值税账务处理
  • 收据中代收款凭证
  • 总结一些php中好用的软件
  • 财务会计制度备案信息有效期起止怎么填
  • 补付转账支票会退回吗
  • threejs怎么用
  • 食堂员工自己吃饭违法吗
  • 金蝶系统采购发票
  • 公司注册实收资本能为0嘛
  • 不走流水开发票可以吗
  • 付国外专利费用需办什么手续
  • 供热管道属于什么结构类型
  • c#连接数据库的基本步骤是什么
  • 工资总额范围怎么填写
  • 暂时性差异和永久性差异怎么区分
  • 代扣代缴附加税减免政策文件
  • 固定资产一次性计入费用的账务处理
  • 进项税准予抵扣条件有哪些
  • 原始凭证审核要点包括
  • 进口货物发生纳税义务时间为
  • 持有至到期投资减值准备
  • 收到银行承兑汇票
  • 资产利润率在1104哪个表
  • 每个月房租
  • 主营业务成本工资计提吗
  • 应收票据背书转让购买原材料
  • 公司员工垫付款项
  • 存货的进口关税计入成本吗
  • 购买的材料入库属于什么会计科目
  • 开出普票会计分录
  • 原材料入库单应根据采购订单还是到货数量
  • 外贸整个流程图
  • 支付信息表
  • 破解浏览器内网教程
  • ubuntu 无线wifi
  • ubuntu网卡命令
  • win7系统笔记本怎么连接wifi
  • centos安装选项怎么选
  • Linux驱动程序开发视频教程
  • windows日历
  • win7旗舰版系统激活密钥
  • win7如何查询电脑使用记录
  • windows图标变化
  • cmd set命令
  • 基于豆瓣电影数据linux
  • unity做网页
  • unity 3d插件
  • webview自定义视频播放器
  • python string包
  • 天津租房网个人房源出租
  • 国税局国家公务员工资待遇
  • 2023居民医保怎么交
  • 纳税信用b级可以贷款多少
  • 江苏电子税务局客服电话
  • 工会经费管理办法2021
  • 财政临时工是什么
  • 烟叶税是谁交
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设