// var alog = uni.requireNativePlugin("AndroidLog") // var apk = uni.requireNativePlugin("ApkPlug") function update(vue){ plus.runtime.getProperty(plus.runtime.appid, function(wgtInfo){ vue.$u.api.appveriosn({ appid: wgtInfo.appid, name: wgtInfo.name, versionName: wgtInfo.version, versionCode: wgtInfo.versionCode }) .then(res => { let data = res.data; if(data.isUpload && data.wgtUrl){ updateExecute({ note: data.note, downUrl: data.wgtUrl, type: 1 }); }else if (data.isUpload && data.pkgUrl){ updateExecute({ note: data.note, downUrl: data.pkgUrl, type: 2 }); }else{ plus.nativeUI.toast('已经是最新版本'); } }) .catch(err => { }); }); } function updateExecute(data){ alog.info({msg: '升级信息:' + JSON.stringify(data)}); uni.showModal({ title: "更新提示", content: '有新版本:' + data.note, success: (res) => { if (res.confirm) { if(data.type === 1){ uni.downloadFile({ url: data.downUrl, success: (downloadResult) => { if (downloadResult.statusCode === 200) { plus.runtime.install(downloadResult.tempFilePath, { force: false }, function() { plus.runtime.restart(); }, function(e) { plus.nativeUI.toast('更新版本失败'); }); }else { plus.nativeUI.toast('下载版本失败'); } } }); }else{ plus.runtime.openURL(data.downUrl); // var downTask = uni.downloadFile({ // url: data.downUrl, // success: (downloadResult) => { // if (downloadResult.statusCode === 200) { // var locl = plus.io.convertLocalFileSystemURL(downloadResult.tempFilePath); // alog.info({msg: '转换本地路径:' + locl}); // apk.instll(locl); // }else { // plus.nativeUI.toast('下载版本失败'); // } // } // }); // downTask.onProgressUpdate((res) => { // alog.info({msg: '下载进度' + res.progress}); // }); } } } }) } export default update