收藏
回答

微信小程序强制更新版本遇到的问题?

想要增加一个强制更新微信小程序版本的功能,在开发者工具中调试,是没有问题的。但是,发了线上版本后,却不弹出更新版本的弹窗。

代码如下,还请大佬帮忙看一下,问题在哪?已经调试了好久了 , 看了各种帖子,还是解决不了。

App({

    onLaunch: function () {

         /* 版本自动更新代码 */

         const updateManager = wx.getUpdateManager()

         console.log('updateManager in onLanuch', updateManager)

         updateManager.onCheckForUpdate(function (res) {

           console.log('has update in onLanuch:', res.hasUpdate) // 请求完新版本信息的回调 true说明有更新

         })

         updateManager.onUpdateReady(function () {

           wx.showModal({

             title: '更新检测', // 此处可自定义提示标题

             content: '检测到新版本,是否重启小程序?', // 此处可自定义提示消息内容

             success: function (res) {

               if (res.confirm) {

                 // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启

                 updateManager.applyUpdate()

               }

             }

           })

         })

         updateManager.onUpdateFailed(function () {

           // 新的版本下载失败

           wx.showModal({

             title: '更新提示',

             content: '新版本下载失败',

             showCancel: false

           })

         })

    },

    onShow: function () {

        /* 版本自动更新代码 */

        const updateManager = wx.getUpdateManager()

        console.log('updateManager in onshow', updateManager)

        updateManager.onCheckForUpdate(function (res) {

          console.log('has update in onshow:', res.hasUpdate) // 请求完新版本信息的回调 true说明有更新

        })

        updateManager.onUpdateReady(function () {

          wx.showModal({

            title: '更新检测222', // 此处可自定义提示标题

            content: '检测到新版本,是否重启小程序?222', // 此处可自定义提示消息内容

            success: function (res) {

              if (res.confirm) {

                // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启

                updateManager.applyUpdate()

              }

            }

          })

        })

        updateManager.onUpdateFailed(function () {

          // 新的版本下载失败

          wx.showModal({

            title: '更新提示',

            content: '新版本下载失败',

            showCancel: false

          })

        })

     },

    globalData: {

      userInfo: null

    },

  })


其中,onShow 方法是为了调试加上去的,请大佬尽快回复哦,不甚感激!

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

1 个回答

  • 社区技术运营专员-Jahozheng
    社区技术运营专员-Jahozheng
    2023-06-02

    在最新版本才带了这个检查的话,旧版本没有这个代码就不会触发提示,

    2023-06-02
    有用
    回复 2
    • 眉黛
      眉黛
      2023-06-02
      onLaunch 和 onLoad 两个生命周期函数是异步的,如果先执行 onLoad 函数,并且挂了,那么 onLaunch 函数还会执行吗?
      2023-06-02
      回复
    • 眉黛
      眉黛
      2023-06-02
      你说的最新版本是微信的版本吧,我更新到最新版本了
      2023-06-02
      回复
登录 后发表内容