123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- 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){
- wgtUpdate(data)
- }else if (data.isUpload && data.pkgUrl){
- pkgUpdate(data);
- }else{
- updateNone();
- }
- })
- .catch(err => {
-
- });
- });
- }
- function updateNone(){
- plus.nativeUI.toast('已经是最新版本');
- }
- function wgtUpdate(data){
- uni.showModal({
- title: "更新提示",
- content: '有新版本:' + data.note,
- success: (res) => {
- if (res.confirm) {
- uni.downloadFile({
- url: data.wgtUrl,
- 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('下载版本失败');
- }
- }
- });
- }
- }
- })
- }
- function pkgUpdate(data){
- alog.info({msg: '全量更新' + JSON.stringify(data)})
- uni.showModal({
- title: "更新提示",
- content: '有新版本:' + data.note,
- success: (res) => {
- if (res.confirm) {
- // plus.runtime.openURL(data.pkgUrl);
- let downloadTask = uni.downloadFile({
- url: data.pkgUrl,
- success: (downloadResult) => {
- if (downloadResult.statusCode === 200) {
- alog.info({msg: 'apk下载完成:' + JSON.stringify(downloadResult)})
- // plus.runtime.install(downloadResult.tempFilePath, {
- // force: false
- // }, function() {
- // plus.runtime.restart();
- // }, function(e) {
- // plus.nativeUI.toast('更新版本失败');
- // });
- // apk.instll(downloadResult.tempFilePath);
-
- }else {
- plus.nativeUI.toast('下载版本失败');
- }
- }
- });
- downloadTask.onProgressUpdate((res) => {
- alog.info({msg: '下载进度' + res.progress});
- alog.info({msg: '已经下载的数据长度' + res.totalBytesWritten});
- alog.info({msg: '预期需要下载的数据总长度' + res.totalBytesExpectedToWrite});
- });
- }
- }
- })
- }
- export default update
|