| | |
| | | <script> |
| | | import {getLastApp} from 'api/index.js'; |
| | | import VUE_APP_BASE_URL from 'common/constant.js' |
| | | |
| | | var jpushModule = uni.requireNativePlugin("JG-JPush") |
| | | export default { |
| | | data() { |
| | | return { |
| | | version: '' |
| | | } |
| | | }, |
| | | onLaunch: function() { |
| | | //#ifdef APP-PLUS |
| | | plus.runtime.getProperty(plus.runtime.appid, wgtinfo => { |
| | | uni.setStorageSync('version', wgtinfo.version) |
| | | console.log("version",wgtinfo.version) |
| | | }) |
| | | //#endif |
| | | |
| | | console.log('App Launch',jpushModule) |
| | | jpushModule.initJPushService(); |
| | |
| | | |
| | | }, |
| | | onShow: function() { |
| | | plus.runtime.getProperty(plus.runtime.appid, wgtinfo => { |
| | | this.version = wgtinfo.version; |
| | | if(this.version){ |
| | | this.getMaxVersion(); |
| | | } |
| | | }) |
| | | |
| | | console.log('App Show') |
| | | |
| | | |
| | | }, |
| | | onHide: function() { |
| | | // jpushModule.initJPushService(); |
| | | console.log('App Hide') |
| | | }, |
| | | methods: { |
| | | // 获取最新版本 |
| | | getMaxVersion() { |
| | | uni.getSystemInfo({ |
| | | success: (res) => { |
| | | getLastApp().then(res => { |
| | | if (res.code === 100) { |
| | | console.log(res,'res'); |
| | | this.updateVersion(res.data); |
| | | } |
| | | }) |
| | | }, |
| | | }); |
| | | }, |
| | | |
| | | // 版本对比 |
| | | updateVersion(data) { |
| | | const lastVersion = data.version; //最新版本 |
| | | const curVersion = this.version; // 当前版本 |
| | | console.log("lastVersion",lastVersion) |
| | | console.log("curVersion",curVersion) |
| | | if (curVersion && lastVersion) { |
| | | const curNum = parseInt(curVersion.replace(/[,|.]/g, '')) |
| | | const lastNum = parseInt(lastVersion.replace(/[,|.]/g, '')) |
| | | |
| | | if (lastNum > curNum) { |
| | | this.showFly(data.attachmentInfo.fileUrl,lastVersion); |
| | | |
| | | } |
| | | } |
| | | }, |
| | | // 版本下载 升级 |
| | | showFly(url,lastVersion) { |
| | | console.log("url",url) |
| | | uni.showModal({ |
| | | title: "更新提示", |
| | | content: `发现新版本${lastVersion},立即升级!`, |
| | | showCancel: false, // 如果是强制更新就不显示取消按钮 |
| | | success: (e) => { |
| | | if (e.confirm) { |
| | | uni.showLoading({ |
| | | title: "更新中……", |
| | | }); |
| | | const downloadTask = uni.downloadFile({ |
| | | url: VUE_APP_BASE_URL + url, // 这个是最新版本apk包的地址 |
| | | success: (res) => { |
| | | uni.hideLoading(); |
| | | if (res.statusCode === 200) { |
| | | console.log("url",VUE_APP_BASE_URL + url) |
| | | plus.runtime.install(res.tempFilePath, { force: true }, _res => { |
| | | uni.showToast({ |
| | | title: "更新成功,重启中", |
| | | duration: 1600, |
| | | }); |
| | | plus.runtime.restart(); |
| | | uni.hideToast(); |
| | | } |
| | | ); |
| | | } else { |
| | | uni.showToast({ |
| | | title: "下载失败!", |
| | | icon: "none", |
| | | duration: 800, |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | |