最近在做一个小程序每次更新版本之后都需要删除小程序,再次扫码进入才可以看到新版本,接下来吾爱编程为大家介绍一下微信小程序版本自动更新的方法,有需要的小伙伴可以参考一下:

1、启动机制:

(1)、热启动:小程序打开后,在一段时间内(目前:5分钟)再次被打开,此时会将后台的小程序切换到前台。

(2)、冷启动:程序首次打开或销毁后再次被打开

2、更新机制:

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

3、API更新:// 获取小程序更新机制兼容

if (wx.canIUse('getUpdateManager')) {

const updateManager = wx.getUpdateManager()

updateManager.onCheckForUpdate(function (res) {

// 请求完新版本信息的回调

if (res.hasUpdate) {

updateManager.onUpdateReady(function () {

wx.showModal({

title: '更新提示',

content: '新版本已经准备好,是否重启应用?',

success: function (res) {

if (res.confirm) {

// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启

updateManager.applyUpdate()

}

}

})

})

updateManager.onUpdateFailed(function () {

// 新的版本下载失败

wx.showModal({

title: '已经有新版本了哟~',

content: '新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~',

})

})

}

})

} else {

// 如果希望用户在最新版本的客户端上体验您的小程序,可以这样子提示

wx.showModal({

title: '提示',

content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'

})

}

4、代码位置:

(1)、小程序重新初始化时会触发onLaunch事件.  onLaunch事件会触发在页面onShow事件之前.获取小程序更新版本可以写在onLaunch里。

(2)、如果在onLaunch里进行请求, 这是异步请求. 如果对交互顺序有要求, 如: 版本更新--重新获取数据-- 用户展示, 那么需要考虑在callback里进行重获数据。

5、提示需要新版本微信:

(1)、随着小程序的不断更新, 部分功能可能需要最新版的微信客户端才能使用. 这时候可以弹窗提示用户更新到最新版本微信。

(2)、完整代码:onLaunch () {

if (wx.canIUse('getUpdateManager')) {

const updateManager = wx.getUpdateManager()

updateManager.onCheckForUpdate(function (res) {

if (res.hasUpdate) {

updateManager.onUpdateReady(function () {

wx.showModal({

title: '更新提示',

content: '新版本已经准备好,是否重启应用?',

success: function (res) {

if (res.confirm) {

updateManager.applyUpdate()

}

}

})

})

updateManager.onUpdateFailed(function () {

wx.showModal({

title: '已经有新版本了哟~',

content: '新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~'

})

})

}

})

} else {

wx.showModal({

title: '提示',

content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'

})

}

}

以上就是吾爱编程为大家介绍的关于微信小程序版本自动更新的方法,了解更多相关文章请关注吾爱编程网!

如何刷新微信服务器小程序版本,微信小程序版本自动更新相关推荐

  1. 微信 服务器设计,WeUI 为微信 Web 服务量身设计

    插件描述:WeUI是一套同微信原生视觉体验一致的基础样式库. WeUI 为微信 Web 服务量身设计 概述 WeUI是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信 Web 开发量身 ...

  2. 从微信服务器获取用户信息,微信小程序Ⅴ [获取登陆用户信息,重点openID(详解)]...

    ♩ 背景 其实这篇文章几个月前就写完了,可是这段时间,微信小程序官方文档有了更新,同事在我本身的实际操做过程当中,发现以前写的过于繁杂,因此如今进行简化梳理,欢迎指摘. 语言框架:ThinkPHP3. ...

  3. 源壁纸微信小程序源码,小米壁纸自动更新采集

    介绍: 修改project.config.json内的项目文件,然后直接通过微信开发者工具或者hbuilder打开即可. 内壁纸资源采自: 注册个小程序  直接域名添加到小程序服务地址 (都是小米的主 ...

  4. 微信服务器 系统发生错误,微信系统故障 仍未修复

    [最科技讯]今日早晨7点半左右,微信出现大面积故障,普通用户无法登录,无法发出信息,也无法刷新朋友圈,无法登陆公众账号平台.无法连接微信网页版.截止上午10点半,该故障依然没有解决. 上午9:25,微 ...

  5. linux u盘更新程序,嵌入式linux下插u盘自动更新的设计

    一.内核配置,配置使其支持u盘 make menu_config Device Drivers ---> [*]USB support --> USB Mass Storage suppo ...

  6. “AMD Software提示和驱动程序版本不匹配?” ——Win10自动更新降级覆盖AMD驱动的解决方法

    目录 前言 一.下载安装AMD驱动 二.下载window官方屏蔽助手 总结 前言 Win10自动更新会把我们自行安装AMD驱动降级,点击AMD Software会提示提示和驱动程序版本不匹配. 本人按 ...

  7. chrome始终显示版本过旧,无法自动更新,官网在线升级包失败的解决办法

    打开官网,修改网址为: https://www.google.cn/chrome/?standalone=1&platform=win64 (电脑是64位,后面数字是64.是32位,后面是32 ...

  8. java反编译微信小程序_微信小程序反编译的实现

    首先声明:本文章仅供学习之用,不可它用. 一.前言 看到人家上线的小程序的效果,纯靠推测,部分效果在绞尽脑汁后能做出大致的实现,但是有些细节,费劲全力都没能做出来.很想一窥源码?查看究竟?看看大厂的前 ...

  9. 安卓4.4.4安装哪个微信版本_微信自动更新在哪里 简单几步轻松关闭微信自动更新方法...

    1月1日,微信自动更新上热搜了,原因是很多安卓手机用户的微信版本自动更新到了最新的7.0.0正式版,由于在没有获得用户确认的情况下,自动更新升级,也引发了不少用户的不满和吐槽.那么,微信自动更新怎么关 ...

  10. 如何将风险应用加入白名单_将微信服务器、API接口的IP列表加入宝塔防火墙IP白名单...

    WordPress 一直是一个最棒的 CMS 内容管理系统,也能够非常轻松的跟微信公众号等进行对接,那么为了防止防火墙将微信功能误拦,我们需要将微信服务器.API 接口 的 IP 列表加入白名单.由于 ...

最新文章

  1. python 每分钟运行一次_调度Python脚本以准确地每小时运行一次
  2. poj3694(双联通分量+LCA)
  3. xshell筛选出字符串中的数字,计算网络流量
  4. sdut 1500 Message Flood
  5. SQL Server-流程控制 7,Return 语句
  6. 使用kettle将文本文件中的数据导入数据库
  7. 用javascript实现(页面正在加载的效果)
  8. C/C++ 结构体成员在内存中的对齐规则(转载)
  9. mysql日期函_mysql日期函数
  10. 感觉csdn论坛不是很好用,感觉……
  11. iOS xcode8提交 iOS10 “此构建版本无效” (已解决)(调用 私有api问题)
  12. 3.2常用的调度算法
  13. 实践:服务器编写/系统架构/cache
  14. 建造者模式(二):游戏角色设计的建造者模式解决方案
  15. 可复制的领导力前两章总结
  16. 【Python基础学习】基本数据结构:列表、元组、栈、字典、集合与队列
  17. 浅谈const int *,int const *与int *const
  18. kaggle网站注册登录流程详细介绍(小白必看)
  19. 如何实现双向绑定?底层原理是什么?
  20. 发那科系统梯形图实例,重点是带中文注释

热门文章

  1. Uber安全员担责,掩盖自动驾驶的追责困境
  2. AppCan技术风暴来袭,12城13场免费培训火速报名中
  3. 【C/C++】如何帅气地在C/C++中输入字符串
  4. 2012年度十大经典网络流行语大盘点
  5. 视频剪辑,教你最简单的方法转换视频格式
  6. Django学习记录4——urls的简述
  7. pycrypto安装错误
  8. 有10箱产品,每箱有1000件,其中正品每件100克。其中有几箱是次品,每件次品比正品轻10克,问能否用秤只称一次,就找出哪几箱是次品?
  9. 星巴克店铺数据集描述性分析
  10. 09 A model framework-based domain-specific composable modeling method for combat system effectiveness