uniapp 自动下载更新
uniapp 自动更新下载,不给出提示 默认下载安装
plus.runtime.openURL(data.url); 这个下载 是有系统提示的 弹框询问是否继续下载
plus.downloader.createDownload() 是不提示的 默认直接下载
app vue
export default {
onLaunch: function() {
// #ifdef APP-PLUS
let verobj = {}
plus.runtime.getProperty(plus.runtime.appid, function(wgtinfo) {
verobj = {
version: wgtinfo.version,
verCode: wgtinfo.versionCode
}
uni.setStorageSync('version', verobj);
});
var server = this.$baseURL + "/setting/version"; //检查更新地址
var req = { //升级检测数据
"version": verobj.verCode
};
uni.request({
url: server,
data: req,
success: res => {
console.log(res)
if (res.statusCode == 200 && res.data.data.status === 1) {
let data = res.data.data;
if (verobj.verCode == data.version) {
} else {
verobj.version = data.version;
uni.showToast({
title: !data.note ? '更新版本号 V3.' + data.version : data.note,
icon: 'none'
})
// 方案 1
// uni.setStorageSync('version', verobj);
// uni.showModal({ //提醒用户更新
// title: "更新提示",
// content: !data.note ? '更新版本号 V3.' + data.version : data.note,
// success: res => {
// if (res.confirm) {
// plus.runtime.openURL(data.url);
// }
// }
// })
// 方案二
var dtask = plus.downloader.createDownload(data.url, {}, function(d, status) {
// 下载完成
if (status == 200) {
plus.runtime.install(plus.io.convertLocalFileSystemURL(d.filename), {}, {}, function(error) {
uni.showToast({
title: '安装失败',
mask: false,
duration: 1500
});
})
} else {
uni.showToast({
title: '更新失败',
mask: false,
duration: 1500
});
}
});
dtask.start();
}
}
}
})
// #endif
},
onShow: function() {},
onHide: function() {
console.log('App Hide')
}
}