uniapp打包app提示软件更新代码
//#ifdef APP-PLUS
checkUpdate() {
let that = this;
plus.runtime.getProperty(plus.runtime.appid, function(wgtinfo) {
let oldversion = wgtinfo.version;
//console.log(oldversion);
uni.request({
url:'',// 换成自己的接口
data: {
v: oldversion
},
method: 'POST',
success: (res) => {
//console.log(res.data.code);
if (res.data.code == 1) {
let vrest = res.data.data;
// 强制更新 enforce =1 ,热更新enforce =2
if (vrest.enforce == 1) {
// 提醒用户更新
uni.showModal({
title: '更新提示',
content: vrest.content,
success: (showResult) => {
if (showResult.confirm) {
that.common.errorToShow("软件自动更新中,请稍等...");
//console.log(vrest.downloadurl, )
var dtask = plus.downloader.createDownload(vrest.downloadurl, {
method: 'GET',
filename: '_doc/update/'
}, function(d, status) {
if (status == 200) {
var path = d.filename;
plus.runtime.install(path);
} else {
that.common.errorToShow('更新失败');
}
});
dtask.start();
}
}
})
} else {
uni.downloadFile({
url: vrest.downloadurl,
success: (downloadResult) => {
if (downloadResult.statusCode === 200) {
that.common.errorToShow("软件自动更新中,请稍等...");
plus.runtime.install(downloadResult.tempFilePath, {
force: false
}, function() {
that.common.errorToShow("更新成功");
plus.runtime.restart();
}, function(e) {
that.common.errorToShow('更新失败');
});
}
}
});
}
}
}
})
});
},
// #endif