什么样才算是热启动?
发布于 4 年前 作者 weihan 11741 次浏览 来自 官方Issues
  • 文档中说道:

  • 热启动:假如用户已经打开过某小程序,然后在一定时间内再次打开该小程序,此时无需重新启动,只需将后台态的小程序切换到前台,这个过程就是热启动;

  • 开发中遇到的场景:

  • 我第一次从聊天卡片打开小程序(冷启动),

  • 然后点右上角的圆圈关闭小程序,然后马上从聊天卡片进入小程序(热启动),<--情况1

    我按home键,切出微信,然后我在从后台的进程中进入小程序(热启动),<--情况2

  • 代码如下

  • const app = getApp()
     
    let lock = true;
     
    Page({
      data: {
        lock: true
      },
      onShow () {
        console.log(lock);
        if (lock) {
          lock = false;
          wx.showModal({
            title: 'xxx',
            content: 'xxx',
          })
        }
      },
      onShareAppMessage () {
        return {
          title: 'xxxx'
        }
      }
    })
    情况1的时候 输出 true, 情况2的时候输出false。
  • 这两种情况有什么差异吗?

2 回复

自己问题自己回答。

热启动:假如用户已经打开过某小程序,然后在一定时间内再次打开该小程序,此时无需重新启动,只需将后台态的小程序切换到前台,这个过程就是热启动。

总结:只要小程序运行在后台,再打开就是热启动。

右上角的圆圈关闭小程序相当把小程序的进程kill掉了,再进入的时候就等于重新打开了

回到顶部