unapp --app的热更新
使用uniapp开发的app的热更新,在app.vue里面
plus.runtime.getProperty(plus.runtime.appid, function(widgetInfo) {
console.log(widgetInfo.version,'获取当前手机里面的版本号')
that.ajax({
url:'/api/common/checkAppVersion?app_version', //请求接口获取后台的版本号,对比
method:'get',
data:{
app_version:widgetInfo.version
},
loadStr:'',
success:function(res){
console.log(res)
if(res.message){
}else{
var data=res.data
console.log(data)
if (data.wgtUrl) {
var wgtUrl = that.ApiUrl +data.wgtUrl;//保存下载地址
that.$store.commit('saveVersion', wgtUrl);
console.log(wgtUrl)
uni.showModal({
title: "发现新版本",
content: "确认下载更新",
showCancel:false,
success: (res) => {
if (res.confirm) {//当用户确定更新,执行更新
uni.downloadFile({
url:wgtUrl,
success: (downloadResult) => {
if (downloadResult.statusCode === 200) {
plus.runtime.install(downloadResult.tempFilePath, {
force: false
}, function() {
console.log('install success...');
plus.runtime.restart();
}, function(e) {
console.log(e)
console.error('install fail...');
});
}
},
fail:(res) =>{
console.log(res)
}
});
} else if (res.cancel) {
// console.log('用户点击取消');
}
}
})
}
}
}
})
});