<script> import { API } from '@/util/api.js'; export default { onLaunch: function() { console.log('App Launch'); }, onShow: function() { // #ifdef APP-PLUS var wms_version = uni.getStorageSync('wms_version') || ''; this.request(API.getAppLatestVersion, 'POST', {}, false).then(res => { if (res.err_code === 0) { //判断是否跟线上版本一样 if (wms_version != res.data.version) { uni.showModal({ title: '更新提示', content: res.data.remark, confirmText: '确定更新', cancelText: '取消更新', success: data => { if (data.confirm) { uni.setStorageSync('wms_version', res.data.version); //更新本地存储最新版本号 this.downloadApk(res.data.download_url); //开始下载apk文件 console.log('用户点击确定'); } else if (data.cancel) {} } }); } } }); // #endif }, onHide: function() { console.log('App Hide'); }, methods: { //下载apk文件 downloadApk(url) { uni.showLoading({ title: '下载安装文件', mask: true }); let dtask = plus.downloader.createDownload(url, {}, (d, status) => { if (status == 200) { uni.hideLoading(); //下载成功后调用安装方法 this.installApk(d.filename); } else { uni.showToast({ title: '下载失败', icon: 'error' }); console.log('下载失败'); } }); dtask.start(); }, //安装apk文件 installApk(filePath) { plus.runtime.install( filePath, {}, () => { console.log('更新成功'); }, e => { console.log('安装失败:' + JSON.stringify(e)); } ); } } }; </script> <style> @import './assets/css/font.css'; page { height: 100%; background: #f1f4f6; } </style>