小程序启动后,此时小程序处于打开状态,用户关闭小程序或离开微信,在短时间内小程序并不会被销毁,此时小程序处于后台状态,这个时候如果用户再次进入到小程序,就是从后台状态切换到前台状态,此时小程序是热启动。
但如果用户过了很久都没有再进入小程序,那么这个时候小程序可能被销毁,等用户再次打开这个小程序,此时小程序需要重新加载启动,即冷启动。
如果用户是首次打开小程序,小程序也需要重新加载启动,那么这种情况也属于冷启动
冷启动:冷启动的小程序,会先执行app.js
中的onLaunch
和onShow
,然后才是页面的生命周期:onLoad
,onShow
,onReady
…
热启动:热启动的小程序,会先执行app.js
中的onShow
,然后执行页面的生命周期:onShow
更新机制
在发布新版本之后,如果本地有历史版本,此时打开的可能还是旧版本。微信客户端会有若干个时机去检查本地缓存的小程序有没有更新版本,如果有则会静默更新到新版本。开发者在后台发布新版本之后,无法立刻影响到所有现网用户,但最差情况下,也在发布之后 24 小时之内下发新版本信息到用户,用户下次打开时会先更新最新版本再打开。
小程序每次冷启动时,都会检查是否有更新版本,如果发现有新版本,将会异步下载新版本的代码包,并同时用客户端本地的