From 0604e2f952fade299d5068d8b0b1c952a07fc106 Mon Sep 17 00:00:00 2001 From: wangfukang <15630117759@163.com> Date: Wed, 4 Nov 2026 20:53:17 +0800 Subject: [PATCH] 1 --- App.vue | 65 +++++++++++++++++++++++++++++++++------------------------ 1 file changed, 38 insertions(+), 27 deletions(-) diff --git a/App.vue b/App.vue index 5156797..1a4b362 100644 --- a/App.vue +++ b/App.vue @@ -92,15 +92,15 @@ return } this.globalData.privacyInitialized = true - // #ifdef APP-PLUS - jpushModule = uni.requireNativePlugin("JG-JPush"); - audioObj = uni.getBackgroundAudioManager(); - // #endif const baseUrl = getApp().globalData.mainurl //这里是热更新的代码 // #ifdef APP-PLUS this.checkAppUpdate(baseUrl) // #endif + // #ifdef APP-PLUS + jpushModule = uni.requireNativePlugin("JG-JPush"); + audioObj = uni.getBackgroundAudioManager(); + // #endif // this.getRegistrationID() // #ifdef APP-PLUS if (jpushModule.setLoggerEnable) { @@ -238,31 +238,42 @@ } }, checkAppUpdate(baseUrl) { - plus.runtime.getProperty(plus.runtime.appid, (widgetInfo) => { - const currentVersion = widgetInfo && widgetInfo.version ? widgetInfo.version : plus.runtime.version - uni.request({ - url: baseUrl + '/setting/app-update/latest', - data: {}, - success: (res) => { - const body = res.data || {} - const data = body.result || {} - console.log('app update response:', JSON.stringify(data), 'current:', currentVersion) - if (!data.url) { - console.log('app update skipped: url is empty') - return - } - if (data.version && this.compareVersion(data.version, currentVersion) <= 0) { - console.log('app update skipped: current version is latest', currentVersion, data.version) - return + console.log('app update check start:', baseUrl) + try { + if (!plus || !plus.runtime) { + console.error('app update skipped: plus.runtime is unavailable') + return + } + plus.runtime.getProperty(plus.runtime.appid, (widgetInfo) => { + const currentVersion = widgetInfo && widgetInfo.version ? widgetInfo.version : plus.runtime.version + console.log('app update current widget:', JSON.stringify(widgetInfo), 'runtime:', plus.runtime.version) + uni.request({ + url: baseUrl + '/setting/app-update/latest', + data: {}, + success: (res) => { + const body = res.data || {} + const data = body.result || {} + console.log('app update response:', JSON.stringify(data), 'current:', currentVersion) + if (!data.url) { + console.log('app update skipped: url is empty') + return + } + if (data.version && this.compareVersion(data.version, currentVersion) <= 0) { + console.log('app update skipped: current version is latest', currentVersion, data.version) + return + } + const downloadUrl = this.appendUpdateQuery(data.url, data.version) + console.log('app update downloading:', downloadUrl) + this.downloadAndInstallWgt(downloadUrl) + }, + fail: (err) => { + console.error('app update request fail:', JSON.stringify(err)) } - const downloadUrl = this.appendUpdateQuery(data.url, data.version) - this.downloadAndInstallWgt(downloadUrl) - }, - fail: (err) => { - console.error('app update request fail:', JSON.stringify(err)) - } + }) }) - }) + } catch (e) { + console.error('app update check error:', JSON.stringify(e)) + } }, downloadAndInstallWgt(url) { uni.downloadFile({