微信小程序(十三)生命周期-更新应用提醒

注释很详细,直接上代码

新增内容:
1.onLaunch用法
2.onShow用法
3.onHide用法
4.应用更新API的调用模板

源码:

js 复制代码
App({
    //小程序初始化时触发,全局只触发一次
    onLaunch(option) {
        //可以获取场景值和启动参数,eg.option
        console.log('onLaunch');

        // 获取全局唯一的版本更新管理器实例
        const updateManager = wx.getUpdateManager()

        // 检查是否有新版本
        updateManager.onCheckForUpdate(function (res) {
            // 当调用 wx.getUpdateManager() 后,会触发 onCheckForUpdate 回调函数
            // 请求完新版本信息的回调,res.hasUpdate 为 true 代表有新版本,为 false 代表无新版本
            console.log(res.hasUpdate) // 输出是否有新版本的信息
        })

        // 监听新版本下载完成
        updateManager.onUpdateReady(function () {
            // 当新版本下载完成后,会触发 onUpdateReady 回调函数
            // 弹窗提示用户,询问是否重启应用来应用新版本
            wx.showModal({
                title: '更新提示', // 弹窗标题
                content: '新版本已经准备好,是否重启应用?'// 弹窗内容
                success: function (res) {
                    if (res.confirm) {
                        // 用户点击确定,调用 applyUpdate 应用新版本并重启应用
                        updateManager.applyUpdate() // 应用新版本并重启应用
                    }
                }
            })
        })

        // 监听新版本下载失败
        updateManager.onUpdateFailed(function () {
            // 当新版本下载失败时,会触发 onUpdateFailed 回调函数
            // 弹窗提示用户,通知新版本下载失败
            wx.showModal({
                title: '更新失败', // 弹窗标题
                content: '更新失败,请检查网络重试' // 弹窗内容
            })
        })
    },

    //下面两个触发事件可用于统计小程序打开的时长(有点学习通的感觉了hhh)

    //小程序启动或从后台进入前台显示时触发
    onShow() {
        console.log('onShow');
    },

    //小程序从前台进入后台时触发
    onHide() {
        console.log('onHide');
    }
})

效果演示:

  1. 模拟成功的情况

2.模拟失败的情况

相关推荐
拼图20914 小时前
微信小程序——配置路径别名和省略后缀
微信小程序·小程序
m0_7401904615 小时前
小程序部分pai
小程序
wocwin15 小时前
uniapp 微信小程序Vue3项目使用内置组件movable-area封装悬浮可拖拽按钮(拖拽结束时自动吸附到最近的屏幕边缘)
vue.js·微信小程序
2501_9159184118 小时前
iOS App 安全加固全流程:静态 + 动态混淆对抗逆向攻击实录
android·ios·小程序·https·uni-app·iphone·webview
2501_915909061 天前
iOS如何查看电池容量?理解系统限制与开发者级能耗调试方法
android·ios·小程序·https·uni-app·iphone·webview
三原1 天前
7000块帮朋友做了2个小程序加一个后台管理系统,值不值?
前端·vue.js·微信小程序
Byte_Me1 天前
IoT 小程序:如何破解设备互联的碎片化困局?
物联网·小程序·iot
小徐_23332 天前
uni-app 弹窗总被父元素“绑架”?3招破局,H5/小程序/APP一招通杀!
前端·微信小程序·uni-app
難釋懷2 天前
微信小程序案例 - 本地生活(首页)
微信小程序·生活·notepad++
2501_915921432 天前
没有Mac如何完成iOS 上架:iOS App 上架App Store流程
android·ios·小程序·https·uni-app·iphone·webview