参考:https://www.jianshu.com/p/4f5e3faaf483

https://blog.csdn.net/kirinlau/article/details/89022913

知识点1: 当用户点击左上角关闭,或者按了设备Home 键离开微信,小程序并没有直接销毁,而是进入了后台;
当再次进入微信或再次打开小程序,又会从后台进入前台,只有当小程序进入后台一定时间,或者系统资源占用过高,才会被真正的销毁。

知识点2: 小程序的启动分为"冷启动" 和 "热启动".
热启动是指: 小程序打开后,在一段时间内(目前:5分钟)再次被打开,此时会将后台的小程序切换到前台。
冷启动是指: 小程序首次打开或销毁后再次被打开

知识点3: 更新版本
冷启动时, 如果发现有新版本,将会异步下载新版本的代码包,并同时用客户端本地的包进行启动,即新版本的小程序需要等下一次冷启动才会应用上
如果要马上应用最新版本,使用 wx.getUpdateManager API 进行处理。

直接扔onLuanch:

const updateManager = wx.getUpdateManager()updateManager.onCheckForUpdate(function (res) {// 请求完新版本信息的回调console.log('检查新的版本结果:', res, res.hasUpdate)})updateManager.onUpdateReady(function () {wx.showModal({title: '更新提示',content: '新版本已经准备好,是否重启应用?',success: function (res) {console.log('新的版本下载结果', res);if (res.confirm) {// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启updateManager.applyUpdate()}}})})updateManager.onUpdateFailed(function () {// 新的版本下载失败console.log('新的版本下载失败');})
//app.js
App({onLaunch: function (options) {this.autoUpdate()},autoUpdate : function(){var self = thisif(wx.canIUse('getUpdateManager')){const updateManager = wx.getUpdateManager()// 检查小程序是否有新版本发布updateManager.onCheckForUpdate(function(res){// 请求完新版本的信息回调if(res.hasUpdate){wx.showModal({title: '更新提示',content: '新版本已经准备好,是否重启应用?',success:function(res){if(res.confirm){// 下载self.downloadAndUpdate(updateManager)}else if(res.cancel){// 点击取消,做强制更新操作wx.showModal({title: '温馨提示',content: '一定要更新哦,旧版本无法正常使用',showCancel:false,//隐藏取消按钮confirmText:'确定更新',success:function(res){if(res.confirm){// 再次调用下载,并重启self.downloadAndUpdate(updateManager)}}})}}})}})}else{// 增加用户体验,给出友好提示wx.showModal({title: '提示',content: '当前微信版本过低,无法使用该功能,请升级后重试。'})}},/*** 下载新版本并重启*/downloadAndUpdate: function (updateManager) {var self = thiswx.showLoading();// 监听小程序有版本更新事件,客户端主动触发updateManager.onUpdateReady(function(){wx.hideLoading();// 新版本下载好,调用applyUpdateupdateManager.applyUpdate()})// 监听小程序更新失败事件updateManager.onUpdateFailed(function(){wx.showModal({title: '已经有新版了哦',content: '请你删除当前小程序,进行升级哦'})})}
})

微信小程序提示更新版本相关推荐

  1. 微信小程序自动更新版本

    PS: 小程序发布版本后正常老用户是不能直接看到的新版本的, 需要通过:删除小程序浏览记录.从我的小程序中移除.退出微信账号重新登录这些办法才能看到新版本内容 这是因为小程序有静默更新机制: 未启动时 ...

  2. 微信小程序自动检测版本并提示更新新版本

    微信小程序自动检测版本并提示更新新版本 微信小程序开发过程中,我们在版本更新迭代后,微信小程序客户端并不能触发自动更新,需要用户手动清理小程序后重新搜索进入后才能获取到最新的小程序版本,但是这个是用户 ...

  3. 微信小程序:(更新)云开发微群人脉

    大家好,今天给大家带来的这一款是经过优化更新并有所改动的一个版本 我们之前也发布过一款,今天这一款是在之前的哪一款的基础下增加优化 该小程序的群码都是系统自动采集的,所以没有上线但是没有群的烦恼 另外 ...

  4. 微信小程序提示框提示

    微信小程序提示框很常见,有的项目弹出提示选择关闭的时候需要不再弹出,清理缓存的时候才弹出. var s = wx.getStorageSync('sh')if (s == '') {// s= tru ...

  5. 标题微信小程序提示页面未注册问题解决

    标题微信小程序提示页面未注册问题解决 1.出现的问题 在WXML部分编译完成后页面可以正常显示样式,然而在.js文件编辑完成后进行编译时会出现如下错误提示: 2.出现的原因及解决方法 .JS文件中缺少 ...

  6. Android App拉起微信小程序提示bad_param

    Android App拉起微信小程序提示bad_param,主要是因为req.userName的值传错,req.userName的值是小程序的原始ID,而不是appId,小程序之间的跳转是appId. ...

  7. 封装微信小程序提示框

    下面是封装好的封装微信小程序提示框,以便在开发过程中能快速使用,并且可以减少代码量. var showBusy = function(o) {     return wx.showToast({   ...

  8. 微信小程序提示框使用,wx.showToast

    微信小程序提示框使用 1.wx.showToast在官方文档的位置 2.使用代码模板 wx.showToast({title: '价格不能等于0',icon: 'success',duration: ...

  9. 微信小程序如何实现版本自动更新

    扫一扫以上小程序[许愿灯池]可以查看具体更新效果 以下是[许愿灯池]小程序的更新效果图: 话不多说,直接上代码: 在app.js这个这个页面中将以下代码复制在onShow()函数里面即可,非常简单! ...

最新文章

  1. python基础语言与应用第五章_《Python基础教程》 读书笔记 第五章(下)循环语句...
  2. iOS: 零误差或极小误差的定时执行或延迟执行?
  3. python爬虫工资-Python爬虫实战-数据可视化
  4. 非负矩阵分解中基于L1和L2范式的稀疏性约束
  5. everyday words
  6. swift中为什么要创造出可选型?
  7. XY路由算法与转弯模型路由算法
  8. C# 各种常用集合类型的线程安全版本
  9. 宽带波束形成 matlab,关于均匀圆阵MVDR宽带波束形成的程序
  10. ERP系统实施的最佳落地方案
  11. 计算机职高会考知识,2013年金华市职高会考各科目考纲汇总.doc
  12. 《安富莱嵌入式周报》第249期:2022.01.17--2022.01.23
  13. 洗衣店小程序,共享洗衣小程序,干洗店小程序毕设作品
  14. Qt网络编程概述(一)
  15. 2分钟学会一个简单USB插入检测电路
  16. 使用WebRTC搭建前端视频聊天室——入门篇
  17. Caffe小玩意(1)-可视化网络结构
  18. spring基于aspectj的AOP配置 aop:aspectj-autoproxy proxy-target-class=true
  19. e盘计算机管理无法格式化,电脑无法格式化e盘怎么办?
  20. 5.OpenCV基础

热门文章

  1. 网络出现502 bad gateway解决方案
  2. ObjectARX(C++)-CAD二次开发调试方法
  3. ssi服务器端指令详解(shtml)
  4. ABB机械臂乱弹1-ABB机器人选项功能
  5. 沈阳计算机专业平均工资水平,2021年沈阳最新平均工资标准,沈阳人均平均工资数据分析...
  6. IOS应用图标上的数字提示实例
  7. 高等代数第3章 n维向量空间Kn
  8. day1--初入python计算机基础和环境搭建
  9. 利用ultraedit打开超大文件 G以上级别的简单配置
  10. oracle表空间可以删除,Oracle表空间的删除