收藏
回答

请问在小程序已经存在历史版本,客户通过扫码进入小程序的某个页面时,打开的小程序不是最新版本?

小程序已经存在历史版本,客户通过扫码进入小程序的某个页面时,打开的小程序不是最新版本?

即使最新版本发布已经一周多,这个时候顾客本地有之前打开的历史版本的小程序,他扫码或是通过短链接浏览器调起进入某个小程序的页面,这属于热启动。这个时候访问到的小程序并不是最新版的小程序。请问大家是不是也遇到过这类问题?

回答关注问题邀请回答
收藏

2 个回答

  • 八九
    八九
    2021-11-28

    加一个检测更新

    2021-11-28
    有用 1
    回复 5
    • Sakura
      Sakura
      2021-11-28
      检测更新,针对热启动的场景,检测更新似乎没有作用。如果本地有历史版本,用户扫码进入某个页面的时候,属于热启动,这种时候没有强制更新,进入的还是本地的历史版本。这种情况怎么处理呢?
      2021-11-28
      回复
    • 八九
      八九
      2021-11-28回复Sakura
      不可能一直挂着
      2021-11-28
      回复
    • Sakura
      Sakura
      发表于移动端
      2021-11-28回复八九
      这种情况没有办法避免是嘛?
      2021-11-28
      回复
    • 八九
      八九
      2021-11-28回复Sakura
      你写检测更新啊,不更新不给用就是
      2021-11-28
      回复
    • Sakura
      Sakura
      发表于移动端
      2021-11-28回复八九
      我写了检测更新,但是还是有部分用户版本依然没有更新到最新,我根据这些用户进入小程序的场景值看到,这部分用户是通过跳转另一个小程序,或者扫码进入的某个页面。就是困惑为啥已经写了强制更新,依然有些用户没有更新到最新版本
      2021-11-28
      回复
  • Ray
    Ray
    2021-11-28
    onLaunch () {
            if (wx.canIUse('getUpdateManager')) {
              const updateManager = wx.getUpdateManager()
              updateManager.onCheckForUpdate(function (res{
                if (res.hasUpdate) {
                  updateManager.onUpdateReady(function () {
                    wx.showModal({
                      title'更新提示',
                      content'新版本已经准备好,是否重启应用?',
                      successfunction (res{
                        if (res.confirm) {
                          updateManager.applyUpdate()
                        }
                      }
                    })
                  })
                  updateManager.onUpdateFailed(function () {
                    wx.showModal({
                      title'已经有新版本了哟~',
                      content'新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~'
                    })
                  })
                }
              })
            } else {
              wx.showModal({
                title'提示',
                content'当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
              })
            }
          }
    
    2021-11-28
    有用
    回复 3
    • Sakura
      Sakura
      2021-11-28
      加了这个代码,但是我看到微信说明文档里面写,只有冷启动的时候才会有作用,所以我把上面强制更新的代码放到onShow里面,每次热启动的时候,即使有最新版本,也不会触发新版本的下载更新。这样就导致有可能用户扫码进入某个页面的时候,他本地已经有历史版本,这时候打开的就是历史版本
      2021-11-28
      回复
    • Ray
      Ray
      2021-11-28回复Sakura
      这个是强制更新的啊,确认后就自动更新了
      2021-11-28
      回复
    • Sakura
      Sakura
      发表于移动端
      2021-11-28回复Ray
      好的,谢谢
      2021-11-28
      回复
登录 后发表内容