微信小程序开发之运行机制

运行机制

前台/后台状态

小程序启动后,界面被展示给用户,此时处于前台状态。
当用户点击右上角胶囊按钮关闭小程序,或者按了home键离开微信,小程序并没有完全终止运行,而是进入后台状态,小程序还可以运行一小段时间。
当用户再次进入微信或打开小程序,小程序会从后台进入前台,如果用户很久没有进入小程序或系统资源紧张,小程序可能被销毁

小程序启动

  • 冷启动:用户首次打开,或小程序被系统销毁后再次打开。
  • 热启动:小程序并未销毁,从后台进入前台状态。

小程序销毁时机

  • 小程序进入后台后,可以维持一小段时间的运行状态,如果这段时间未进入前台,小程序就会被销毁。
  • 小程序占用系统资源过高,可能会被系统销毁或被微信客户端主动回收。在iOS上,当微信客户端在一定时间间隔内连续收到系统内存告警时,会根据一定策略主动销毁小程序。可以通过wx.onMemoryWarning监听内存告警事件。

App.js 生命周期方法调用时机

  • onLaunch:小程序初始化完成时触发,全局触发一次。
  • onShow:小程序启动或从后台进入前台显示时触发。
  • onHide:前台进入后台时触发。
  • onError:脚本错误或API调用报错时触发。
  • onPageNotFound:小程序要打开的页面不存在时触发,可以在此方法中页面重定向
  • onUnhandledRejection:小程序有未处理的 Promise 拒绝时触发。