在index.vue 中的onload方法里面或者app.vue中的onLaunch中添加如下 methods 部分:
本次在app.vue中添加
<script>
export default {
onLaunch: function() {
console.log('App Launch');
var that = this;
that.update()
},
onShow: function() {
console.log('App Show');
},
onHide: function() {
console.log('App Hide');
},
methods: {
update() {
var _this = this;
uni.request({
url: _this.websiteUrl+'/api/versions/', //请求接口
method: 'POST',
success: result => {
console.log(1111111111, result)
if (result.data.code == 1000) {
plus.runtime.getProperty(plus.runtime.appid, function(inf) {
console.log("版本:", inf)
if(inf.version != result.data.latestVersion){
uni.showModal({
title: "发现新版本",
content: "确认下载更新",
success: (res) => {
if (res.confirm == true) {//当用户确定更新,执行更新
_this.doUpData(result.data.appVersionPackage);
}
}
})
}
});
}
},
})
},
doUpData(appVersionPackage) {
var _this = this;
uni.showLoading({
title: '更新中……'
})
uni.downloadFile({//执行下载
url: _this.websiteUrl + appVersionPackage, //下载地址
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();
}
);
}
}
});
}
}
});
}
}
};
</script>
<style>
/* 解决头条小程序组件内引入字体不生效的问题 */
/* #ifdef MP-TOUTIAO */
@import url("./common/icon.css")
@font-face {
font-family: uniicons;
src: url('/static/uni.ttf');
}
/* #endif */
</style>
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。