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

注释很详细,直接上代码

新增内容:
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.模拟失败的情况

相关推荐
文慧的科技江湖14 小时前
OCPP 1.6 与 2.0.1 核心消息差异对照表 - 慧知开源充电桩平台
小程序·开源·ocpp协议·慧知开源充电桩平台
Greg_Zhong15 小时前
微信小程序中便捷实现自定义底部tab栏
微信小程序·自定义底部tab
LXXgalaxy15 小时前
微信小程序“记住密码”功能的实现与落地 vue3+ts的细致解析
微信小程序·小程序·notepad++
Greg_Zhong15 小时前
微信小程序中使用【免费商用】字体的下载和初步认识和使用
微信小程序·阿里巴巴、站酷·腾讯云对象存储(cos)
克里斯蒂亚诺更新15 小时前
微信小程序 腾讯地图 点聚合 简单示例
微信小程序·小程序·notepad++
Geek_Vision16 小时前
鸿蒙原生APP接入小程序运行能力:数字园区场景实战复盘
微信小程序·harmonyos
CRMEB系统商城17 小时前
国内开源电商系统的格局与演变——一个务实的技术视角
java·大数据·开发语言·小程序·开源·php
2501_9160074717 小时前
iOS逆向工程:详细解析ptrace反调试机制的破解方法与实战步骤
android·macos·ios·小程序·uni-app·cocoa·iphone
00后程序员张18 小时前
前端可视化大屏制作全指南:需求分析、技术选型与性能优化
前端·ios·性能优化·小程序·uni-app·iphone·需求分析
January12071 天前
Taro3 + Vue3 小程序文件上传组件,支持 PDF/PPTX 跨端使用
小程序