一.小程序更新机制
启动时同步更新:微信运行时,会定期检查最近使用的小程序是否有更新。
如果有更新,下次程序启动时会同步更新,更新到最新版本再打开小程序。
如果用户长时间不使用小程序会强制检查版本更新。
启动时异步更新:在启动前没有发现更新,小程序每次冷启动时,都会检查是否有更新版本。如果发现有更新版本将会异步下载代码包,在小程序下一次冷启动的时候使用。本次依旧用的旧的代码包。
注意: 在异步更新的时候,想要用户使用新的代码包,可以使用wx.getUpdateManager()进行强制更新,其效果就是在使用小程序的时候冷不丁的有一个弹出框,让用户更新小程序。
代码如下:
// app.js
App({
//钩子函数,小程序冷启动的时候,检查版本,并立即下载
onLaunch() {
//监听下载状态
const um=wx.getUpdateManager()
//下载完成,触发回调函数
um.onUpdateReady(function(){
//给用户提示
wx.showModal({
title: '更新提示',
content: '新版本已完成,重启应用?',
success(res){
if(res.confirm){
//强制重启
um.applyUpdate()
}
}
})
})
},
globalData: {
userInfo: null
}
})
二.小程序的运行机制
冷启动:打开新的或者销毁的小程序
热启动:从后台切换到前台的小程序
前台:小程序打开的状态
后台:小程序关闭未销毁的状态
挂起:5s后小程序挂起,JS进程结束
销毁:30分钟小程序销毁
三.小程序的生命周期
分为:应用生命周期,页面生命周期和组件生命周期
指的是小程序从创建到销毁的全过程
小程序提供了很多钩子函数,可以让程序员使用。