微信小程序发版提示用户更新(静默更新)

70 阅读1分钟
//App.vue中
 
onLaunch() {
    this.autoUpdate()
},
 
methods:{
  autoUpdate() {
    console.log( "更新提示1")
    const self=this
    // 获取小程序更新机制兼容
   if (wx.canIUse('getUpdateManager')) {
	 const updateManager = wx.getUpdateManager()
	//1. 检查小程序是否有新版本发布
	updateManager.onCheckForUpdate(function (res) {
	// 请求完新版本信息的回调
	if (res.hasUpdate) {
		//2. 小程序有新版本,则静默下载新版本
		updateManager.onUpdateReady(function () {
			console.log("更新提示2")
			wx.showModal({
				title: '更新提示',
				content: '新版本已经准备好,是否重启应用?',
				success: function (res) {
					if (res.confirm) {
				//3. 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
					updateManager.applyUpdate()
					} else if (res.cancel) {
					//如果需要强制更新,则给出二次弹窗,如果不需要,可删除
					wx.showModal({
					 title: '温馨提示~',
					 content: '此版本更新涉及到新的功能,旧版本无法正常访问的哦',
					 showCancel: false,
					 success: function (res) { 
						 updateManager.applyUpdate() 
							}
						})
					}
				}
			})
		})
		updateManager.onUpdateFailed(function () {
			// 新的版本下载失败
			wx.showModal({
			  title: '已经有新版本了哟~',
			  content: '请您删除当前小程序,到微信 “发现-小程序” 页,重新搜索打开哦',
			})
		})
	  }
	})
} else {
	// 此时微信版本太低(一般而言版本都是支持的)
	wx.showModal({
		title: '提示',
		content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
		})
	}
			
 }
 		   
}