位置: IT常识 - 正文

uniapp 实现app自动更新(uniapp示例)

编辑:rootadmin
uniapp 实现app自动更新

推荐整理分享uniapp 实现app自动更新(uniapp示例),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uniapp实现app自动更新,uniapp自动化部署,uniapp自定义弹出框,uniapp 自启动,uniapp 自定义loading,uniapp 自定义loading,uniapp 自定义loading,uniapp自动化部署,内容如对您有帮助,希望把文章链接给更多的朋友!

uniapp 实现app自动更新(uniapp示例)

需求概述: 最近遇到的需求,扫码核验的app需要在线自动升级安装(因app简单上不了应用市场,所以调研用在线更新的办法)

第一步:首先需要一个可以更新和获取数据的接口(后端)

比如第一次打包时的版本名称是1.0.1,那第一次将这个1.0.1版本的手动安装到手机上后,后续想要实现自动更新,再次打包的版本名称就必须大于1.0.1(因为本次实现的逻辑就是根据版本名称) 版本号位置:manifest.json >> 基础配置 >> 应用版本名称

当需要更新app的时候,改变版本名称(必须大于上一个版本),开始打包

同时在后端的接口里同步更新你的此次打包的版本名称

第二步:打包后的apk文件需要放在服务器上,然后拿到在服务器上的文件的地址(后续有用)第三步:开始在App.vue里书写前端逻辑(直接贴代码)onLoad() : 在页面加载的时候触发,只会调用一次,在onLoad() 函数中,可以通过 option获取当前页面路径中的参数onShow(): 在页面显示时调用,也就是切换页面的时候,或者切入前台的时候触发,可以多次触发 根据自己的需求来确定是写在onShow还是onLoad

原理:获取当前app的版本名称,在onShow触发的时候调接口比对当前app版本名称和线上最新版本名称,如果线上最新版本名称大于当前版本名称则下载最新的apk安装更新

onShow: function() {console.log('App Show')plus.runtime.getProperty(plus.runtime.appid, function(widgetInfo) {this.version = widgetInfo.versionuni.request({url: 'http://xxxx.cczu.edu.cn:8081/api/dict',success: (res) => {function compareVersion(version1, version2) {const newVersion1 = `${version1}`.split('.').length < 3 ? `${version1}`.concat('.0') : `${version1}`;const newVersion2 = `${version2}`.split('.').length < 3 ? `${version2}`.concat('.0') : `${version2}`; //计算版本号大小,转化大小 function toNum(a){ const c = a.toString().split('.'); const num_place = ["", "0", "00", "000", "0000"], r = num_place.reverse(); for (let i = 0; i < c.length; i++){ const len=c[i].length; c[i]=r[len]+c[i]; } return c.join(''); } // 检测版本号是否需要更新 function checkPlugin(a, b) { const numA = toNum(a); const numB = toNum(b); return numA > numB ? 1 : numA < numB ? -1 : 0; } return checkPlugin(newVersion1 ,newVersion2); } for (let i of res.data.content) { if (i.description === 'app版本') {// 1代表app新包版本号大于本地版本号 if (compareVersion(i.dictDetails[0].value, this.version) === 1) { uni.showModal({ title: '提示', content: '发现新的应用安装包,点击确定立即更新', success: function (res) { if (res.confirm) { console.log('用户点击确定');uni.showLoading({title: '更新中……'}) uni.downloadFile({ // 存放最新安装包的地址 url: 'http://xxxx.xxxx.com/__UNI__xxxx.apk', success: (downloadResult) => { uni.hideLoading(); if (downloadResult.statusCode === 200) { uni.hideLoading(); plus.runtime.install(downloadResult.tempFilePath,{ force: false }, function() { console.log('install success...'); plus.runtime.restart(); }, function(e) { uni.hideLoading(); console.error('install fail...'); }); } } }); } else if (res.cancel) { console.log('用户点击取消'); } } }); } else { } } }}});});},
本文链接地址:https://www.jiuchutong.com/zhishi/297687.html 转载请保留说明!

上一篇:基于51单片机的智能台灯设计(基于51单片机的电子秤设计)

下一篇:全网独家首发|极致版YOLOv7改进大提升(推荐)网络配置文件仅24层!更清晰更方便更快的改进YOLOv7网络模型(全网首发是什么意思)

  • 苹果微信朋友圈封面视频怎么设置(苹果微信朋友圈怎么返回到最上面)

    苹果微信朋友圈封面视频怎么设置(苹果微信朋友圈怎么返回到最上面)

  • 教师资格证兼容窗口弹不出来(教师资格证兼容性)

    教师资格证兼容窗口弹不出来(教师资格证兼容性)

  • 小米手环如何连接手机(小米手环如何连接keep)

    小米手环如何连接手机(小米手环如何连接keep)

  • 抖抖音怎么用一个手机号注册两个号(抖音怎么用抖一抖)

    抖抖音怎么用一个手机号注册两个号(抖音怎么用抖一抖)

  • 探探解除匹配在喜欢的人里面还能找到吗(探探解除匹配在哪里恢复)

    探探解除匹配在喜欢的人里面还能找到吗(探探解除匹配在哪里恢复)

  • 影视tv下载了怎么打不开

    影视tv下载了怎么打不开

  • 手机换了电池还是耗电快怎么办(手机换了电池还能闪充吗)

    手机换了电池还是耗电快怎么办(手机换了电池还能闪充吗)

  • 陌陌被拉黑了对方能看到信息吗(陌陌被拉黑了对方能看到资料信息吗)

    陌陌被拉黑了对方能看到信息吗(陌陌被拉黑了对方能看到资料信息吗)

  • 电脑数学键盘打不出数字键怎么办(电脑数学键盘打不了字)

    电脑数学键盘打不出数字键怎么办(电脑数学键盘打不了字)

  • 手机数据漫游要不要开(手机数据漫游要关闭吗)

    手机数据漫游要不要开(手机数据漫游要关闭吗)

  • 在apple store买东西几天能到(在applestore买东西送到哪)

    在apple store买东西几天能到(在applestore买东西送到哪)

  • 无线lan是什么(wifi的lan1)

    无线lan是什么(wifi的lan1)

  • 打印机共享后不能打印(打印机共享后不能扫描)

    打印机共享后不能打印(打印机共享后不能扫描)

  • 腾讯视频怎么下载高清电影(腾讯视频怎么下载电视剧到手机)

    腾讯视频怎么下载高清电影(腾讯视频怎么下载电视剧到手机)

  • 微信语音怎么把麦关掉(微信语音怎么把听筒改成扬声器)

    微信语音怎么把麦关掉(微信语音怎么把听筒改成扬声器)

  • 抖音如何添加本地视频(抖音如何添加本地频道功能)

    抖音如何添加本地视频(抖音如何添加本地频道功能)

  • 红米note8pro怎么录音(红米note8pro怎么样)

    红米note8pro怎么录音(红米note8pro怎么样)

  • 华为手机震动调大小(华为手机震动调铃声在哪里)

    华为手机震动调大小(华为手机震动调铃声在哪里)

  • 三星s10无线充电功率多大(三星s10无线充电器)

    三星s10无线充电功率多大(三星s10无线充电器)

  • 华为mate30pro隔空操作怎么没有(华为mate30Pro隔空操作突然不好用)

    华为mate30pro隔空操作怎么没有(华为mate30Pro隔空操作突然不好用)

  • 苹果手机数据怎么转移到电脑上(苹果手机数据怎么删除干净)

    苹果手机数据怎么转移到电脑上(苹果手机数据怎么删除干净)

  • 荣耀10支持typec耳机吗(荣耀10支持wifi6吗)

    荣耀10支持typec耳机吗(荣耀10支持wifi6吗)

  • 微博可以定时发送吗(微博可以定时发微博吗)

    微博可以定时发送吗(微博可以定时发微博吗)

  • vogal00是华为什么型号(华为手机vogal00什么意思)

    vogal00是华为什么型号(华为手机vogal00什么意思)

  • 如何在cad布局中设置视口比例(如何在cad布局中画图)

    如何在cad布局中设置视口比例(如何在cad布局中画图)

  • 小米96g和8g的区别(小米96+128够用吗)

    小米96g和8g的区别(小米96+128够用吗)

  • “哈雷六号”科考站上空的南极光,南极洲 (© Stuart Holroyd/Alamy)(哈雷6号)

    “哈雷六号”科考站上空的南极光,南极洲 (© Stuart Holroyd/Alamy)(哈雷6号)

  • 基于反事实的因果推理Causal inference based on counterfactuals--一万六千字文献详细解读(因果关系的推理应用)【全文总结】(基于反事实因果推断的度小满额度模型)

    基于反事实的因果推理Causal inference based on counterfactuals--一万六千字文献详细解读(因果关系的推理应用)【全文总结】(基于反事实因果推断的度小满额度模型)

  • jQuery datatable 表头表体生成滚动条(jquery ui table)

    jQuery datatable 表头表体生成滚动条(jquery ui table)

  • 所得税的记账凭证
  • 纳税调整减少额是什么意思
  • 超过规定标准的扣除项目金额怎么算
  • 缓交的社保费,包括个人部分
  • 一般纳税人条件要求
  • 转正后个税增加
  • 报税期能不能开发票
  • 发票作废了可以重新领吗
  • 房产折旧计算方法 举例
  • 技术转让收入纳税调整
  • 车间停产期间设施有哪些
  • 增值税普通发票跨月冲红
  • 金税盘抄税报税流程
  • 营改增房租增值税税率
  • 供暖税收分类编码是多少
  • 视同销售行为销项税额该怎么核算
  • 招商引资政府返税政策不兑现
  • 小规模免增值税印花税用交吗
  • 科目余额表借方和贷方
  • 收回长期股权投资账务处理成本法
  • 年末利润分配会计处理
  • 机票改签费要开发票吗
  • 财务费用错记制造费用
  • 发放员工过节费
  • 增值税发票自查报告
  • 无形资产如何评估作价
  • 冲暂估成本会计分录怎么做
  • 长期待摊费用摊销会计分录
  • 增值税电子发票有什么用
  • 公司过户费用怎么入账
  • pc程序是什么
  • php实用的案例
  • mac怎么删除cineware
  • 最薄的平板电脑是哪种
  • 皮肤痒怎么回事
  • phpstorm 断点
  • 当月报废的固定资产
  • 个体户变更为有限公司成立时间
  • php购物车订单处理
  • vue 长列表优化
  • thinkphp6验证
  • 专票地址错了要作废吗
  • 增值税期末留抵退税
  • 企业坏账准备提取的方法和提取的比例由国家统一规定
  • 工伤补贴如何做帐
  • 外国人在我国境内被刑事拘留
  • 银行手续费必须有发票才能入账吗
  • vue 同局域网访问不到的问题及解决
  • python np数组
  • sqlserver存储过程声明变量
  • 商誉减值损失怎么填
  • 企业交房租没有发票能充费用吗
  • 成本核算分摊方法总结
  • 技术转让费如何收取合理
  • 土地出让金返还比例是多少
  • 残保金缴纳计算方法2021
  • 贷款减值准备如何计算
  • 营改增对企业税负影响
  • 出口免抵退和免退有什么区别
  • 国税一证通
  • 建筑业当月有收入,没成本怎样办
  • 保险公司理赔款如何入账
  • 出售固定资产属于什么收入
  • 通过分析SQL语句的执行计划优化SQL
  • mysql指定查询
  • windows7怎么打符号
  • 通过防火墙可以保证窃听到的信息毫无价值
  • win10系统怎么安装qq
  • ubuntu清空文件内容
  • windows mobile10
  • 常用dos命令详解
  • Unity3D之Profile
  • jquery表格隔行变色代码
  • 莱鸟人集团
  • 源码搜索
  • jQuery基于toggle实现click触发DIV的显示与隐藏问题分析
  • 阜阳市税务局地址
  • 甘肃税务局电子税务局官网
  • 增值税减免税备案
  • 税务报道可以学什么专业
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设