uni-app 实现APP的版本更新
在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: ‘https://dianqi7niu.win2017.cn/hmm.apk‘, 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(); } ); } } }); } } }); }