app.vue
<script>
import {
baseUrl,
cms_version
} from '@/api/api.js';
export default {
onLaunch: function() {
console.log('App Launch');
let that = this
// #ifdef APP-PLUS
plus.runtime.getProperty(plus.runtime.appid, wgtinfo => {
let version = wgtinfo.version;
let type = '';
if (uni.getSystemInfoSync().platform == 'ios') {
type = 1;
} else if (uni.getSystemInfoSync().platform == 'android') {
type = 2;
}
cms_version({}).then(res => {
if (res.code == 200 && res.data.appVersion != version) {
if (res.data.isForcedUpdate == 1) {
that._install(res.data);
} else {
uni.showModal({
title: '提示',
content: '检测到系统有更新,是否升级?',
success: function(r) {
if (r.confirm) {
that._install(res.data);
} else if (r.cancel) {
console.log('用户点击取消');
}
}
});
}
}
// else {
// uni.showToast({
// title: '已经是最新版本',
// icon: 'none'
// });
// }
});
});
// #endif
},
onShow: function() {
console.log('App Show')
},
onHide: function() {
console.log('App Hide')
},
methods: {
_install(item) {
//安装新版本
console.log('安装新版本', item);
plus.nativeUI.showWaiting('更新中...');
var url = item.downUrl; //更新包地址
// var url = "http://qlty.jidnfei.cn/file/apk/app.wgt"; //更新包地址
let that = this;
var dtask = plus.downloader.createDownload(url, {}, function(d, status) {
plus.nativeUI.closeWaiting();
if (status == 200) {
uni.showToast({
icon: 'none',
title: '正在准备环境,请稍后!',
duration: 2000
});
setTimeout(function() {
var path = d.filename; //下载apk
//plus.runtime.install()
plus.runtime.install(
path, {
force: true
},
function() {
var str = '更新成功,请手动重启';
if (plus.os.name.toLowerCase() == 'ios') {
str = '更新成功,将自动重启';
}
plus.nativeUI.alert(str, function() {
if (plus.os.name.toLowerCase() == 'ios') {
plus.runtime.restart();
} else {
plus.runtime.quit();
}
});
},
function(ttt) {
plus.nativeUI.toast('更新失败', {
verticalAlign: 'center'
});
}
); // 自动安装apk文件
}, 100);
} else {
plus.downloader.clear();
plus.nativeUI.alert('资源包下载失败:' + status);
}
});
dtask.start();
},
}
}
</script>
<style lang="scss">
/* 官方uni.css */
@import '/common/uni.css';
/* 动画库 */
@import '/common/animate.min.css';
/* icon. */
@import '/common/icon.css';
/* 自定义css */
@import '/common/common.scss';
@import "uview-ui/index.scss";
page {
background: #F4F4F4;
}
</style>