微信小程序启动、更新机制

小程序启动

小程序启动会有两种情况,一种是「冷启动」,一种是「热启动」。

热启动:假如用户已经打开过某小程序,然后在一定时间内再次打开该小程序,此时无需重新启动,只需将后台态的小程序切换到前台,这个过程就是热启动;
冷启动:用户首次打开或小程序被微信主动销毁后再次打开的情况,此时小程序需要重新加载启动,即冷启动。
小程序没有重启的概念。

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

const updateManager = wx.getUpdateManager()

updateManager.onCheckForUpdate(function (res) {
  // 请求完新版本信息的回调
  console.log(res.hasUpdate)
})

updateManager.onUpdateReady(function () {
  wx.showModal({
    title: ‘更新提示‘,
    content: ‘新版本已经准备好,是否重启应用?‘,
    success(res) {
      if (res.confirm) {
        // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
        updateManager.applyUpdate()
      }
    }
  })
})

updateManager.onUpdateFailed(function () {
  // 新版本下载失败
})

原文地址:https://blog.51cto.com/11806679/2395274

时间: 2024-10-22 17:09:53

微信小程序启动、更新机制的相关文章

微信小程序启动过程分析

1.微信客户端在打开小程序之前,会把整个小程序的代码包下载到本地. 2.紧接着通过 app.json 的 pages 字段就可以知道你当前小程序的所有页面路径: { "pages":[ "pages/index/index", "pages/logs/logs" ] } 这个配置说明在项目定义了两个页面,分别位于 pages/index/index 和 pages/logs/logs 目录. 而写在 pages 字段的第一个页面就是这个小程序的首

记录开发微信小程序的坑(3)

现在开发小程序已经到了平稳时期,开始逐步优化小程序 1.微信小程序的更新机制  wx.getUpdateManager()这个函数是用于更新的 连接 https://developers.weixin.qq.com/miniprogram/dev/api/wx.getUpdateManager.html 小程序没有重启的概念 当小程序进入后台,客户端会维持一段时间的运行状态,超过一定时间后(目前是5分钟)会被微信主动销毁 在 iOS 上,当微信客户端在一定时间间隔内(目前是 5 秒)连续收到两次

关于微信小程序更新内容后手机上不能及时显示的办法

这几天一直在做微信小程序的二次开发,每天都要发布程序,但是发布之后微信上查看小程序和以前的一模一样,丝毫没有改变,但是我再本地上却改变了,而且没有开的不校验合法域名那个.这是为啥呢????? 这是跟小程序的更新机制有关的,因为小程序的更新机制是异步的,所以说部分用户不会马上应用上新版本. 小程序启动会有两种情况,一种是「冷启动」,一种是「热启动」. 假如用户已经打开过某小程序,然后在一定时间内再次打开该小程序,此时无需重新启动,只需将后台态的小程序切换到前台,这个过程就是热启动:冷启动指的是用户

微信小程序最新版本已更新下载 (1.02.1806080)

下载地址如下: windows 64 . windows 32 . mac 2018.06.08 更新日志 A 新增 自动预览功能 A 新增 远程调试 Network 面板 A 新增 模拟器静音功能 A 新增 代码断点检测及提示 A 新增 支持插件页面 A 新增 上传插件时推荐版本号 A 新增 Storage 面板清除按钮及数据详情展示 A 新增 项目详情 appid 复制按钮 F 修复 Win10 1803 版本出现自动编译的问题 win10 更新到1803后 频繁自动重新编译,上一个开发工具

微信小程序:原生热布局终将改变世界

最近朋友圈已经被微信小程序刷屏了,这也难怪,腾讯的产品拥有广泛的影响力,谁便推出个东西,都会有很多人认为会改变世界,这不,张小龙刚一发布微信小程序的消息,很多人(技术的和非技术的)就跟打了鸡血似的,估计现在已经鸡血告急了! 我也看了网上的一些关于微信小程序的文章,估计那帮家伙连微信小程序是什么都没搞清楚,就在那里一本正经地胡说八道.好吧,我就通过本文让大家了解一些什么是微信小程序,以及微信小程序到底能为我们带来什么. 关于微信小程序的误解和讨论已经太多了.这里就说一些主要的. 1.  微信小程序

微信小程序学习指南

作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 微信小程序正式公测, 张小龙全面阐述小程序,定档1月9日上线(附90分钟演讲全文) ... 前言:新人第一坑,跳坑指南:修改后,必须保存:ctrl+S: 1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=1476434678461 2:简易教

微信小程序页面事件-下拉刷新,上拉加载更多

1.下拉刷新的概念及应用场景. 概念: 下拉刷新是移动端更新列表数据的交互行为,用户通过手指在屏幕上子上而下的滑动,可以触发页面的下拉刷新,更新列表数据. 应用场景: 在移动端,数据列表是常见的页面效果,更新列表数据是最基本的页面需求,相比于按钮刷新,定时刷新来说,下拉刷新的用户体验方便友好,已经成为移动端刷新列表数据的最佳解决方案. 微信小程序启动下拉刷新: 两种方式: 1.需要在app.json 的window选项中或页面配置中开启enablePullDownRefresh, 但是,一般情况

微信小程序tabBar显示问题

在微信小程序的开发中,我遇到疑惑如下: 在app.json中定义了多个pages,一般微信小程序启动的时候,自动加载pages下的第一个页面, "pages": [              "pages/index/index",           "pages/main/main",      "pages/you/you",      "pages/me/me"  ], "tabBar&q

微信小程序开发需要了解的三个内核技术

本文简要分析微信小程序的运行机制,可能对于你对微信小程序的认识会深刻和透彻一些.官方文档中有如下介绍: 在iOS 上,小程序的 javascript 代码是运行在 JavaScriptCore 中 在Android 上,小程序的 javascript 代码是通过 X5 内核来解析 在开发工具上, 小程序的 javascript 代码是运行在 nwjs(chrome内核) 中 一.JavaScriptCore JavaScriptCores是开源的,下载地址是https://github.com/