查看: 68|回复: 0

uni-app 实现APP的版本更新

[复制链接]

3

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2009-12-2
发表于 2020-7-28 15:24:00 | 显示全部楼层 |阅读模式

在index.vue 中的onload方法里面或者app.vue中的onLaunch中添加如下部分:

update() {
	var _this = this;
	uni.request({
	url: `${this.$store.state.apiBaseUrl}/users/versions`,  //请求接口
	method: 'POST',
	success: result => {
		if (result.data.code == 1) { 
			plus.runtime.getProperty(plus.runtime.appid, function(inf) {
				if(inf.version != result.data.data.versions){
					uni.showModal({
						title: "发现新版本",
						content: "确认下载更新",
						success: (res) => {
							if (res.confirm == true) {//当用户确定更新,执行更新
								_this.doUpData();
							} 
						}
					})
				}
			});
		}
	},
	})
},

doUpData() {
	uni.showLoading({
		title: '更新中……'
	})
	uni.downloadFile({//执行下载
		url: '***', //下载地址
		success: downloadResult => {//下载成功
			uni.hideLoading();
			if (downloadResult.statusCode == 200) {
				uni.showModal({
					title: '',
					content: '更新成功,确定现在重启吗?',
					confirmText: '重启',
					confirmColor: '#EE8F57',
					success: function(res) {
						if (res.confirm == true) {
							plus.runtime.install(//安装
								downloadResult.tempFilePath, {
									force: true
								},
								function(res) {
									utils.showToast('更新成功,重启中');
									plus.runtime.restart();
								}
							);
						}
					}
				});
			}
		}
	});
}

  

 



来源:https://www.cnblogs.com/yeziyou/p/13391349.html
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部