diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt index 7a2c17b937..1acb64f7de 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt @@ -16,6 +16,7 @@ import com.mogo.eagle.core.function.call.obu.CallerObuApiManager import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isDriver import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils.isPassenger import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.mogo.logger.Logger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr import com.zhjt.mogo_core_function_devatools.upgrade.IPCUpgradeManager.Companion.ipcUpgradeManager @@ -60,12 +61,12 @@ class BindingCarManager : IMoGoAutopilotCarConfigListener { } override fun onAutopilotCarConfig(carConfigResp: MessagePad.CarConfigResp) { - CallerLogger.d("${SceneConstant.M_BINDING}${TAG}", "onAutopilotCarConfig ----------> ") - if (carConfigResp != null && !TextUtils.isEmpty(carConfigResp.macAddress)) { - CallerLogger.d("${SceneConstant.M_BINDING}${TAG}", - "onAutopilotCarConfig carConfigResp.macAddress = ${carConfigResp.macAddress} " - ) + Logger.d("${SceneConstant.M_BINDING}${TAG}", "onAutopilotCarConfig ----------> ") + if (!TextUtils.isEmpty(carConfigResp.macAddress)) { + Logger.d("${SceneConstant.M_BINDING}${TAG}", + "onAutopilotCarConfig carConfigResp.macAddress = ${carConfigResp.macAddress} ") getBindingCarInfo(carConfigResp.macAddress, MoGoAiCloudClientConfig.getInstance().sn) + queryAppUpgrade() } } @@ -167,11 +168,10 @@ class BindingCarManager : IMoGoAutopilotCarConfigListener { * 查询app是否需要升级 */ fun queryAppUpgrade() { - CallerLogger.d("${SceneConstant.M_BINDING}${TAG}" + "queryAppUpgrade---role.toString() = ${role.toString()} ---mAddress = $mAddress ---spMac = ${SharedPrefsMgr.getInstance(mContext!!) - .getString(SharedPrefsConstants.APP_MAC)}") + Logger.d("${SceneConstant.M_BINDING}${TAG}", "queryAppUpgrade---role.toString() = $role ---mAddress = $mAddress ---spMac = ${SharedPrefsMgr.getInstance(mContext!!).getString(SharedPrefsConstants.APP_MAC)}") (if (!mAddress.isNullOrEmpty()) mAddress else SharedPrefsMgr.getInstance(mContext!!) .getString(SharedPrefsConstants.APP_MAC))?.let { - CallerLogger.d("${SceneConstant.M_BINDING}${TAG}", "queryAppUpgrade---mAddress = $mAddress") + Logger.d("${SceneConstant.M_BINDING}${TAG}", "queryAppUpgrade---mAddress = $mAddress") UpgradeAppNetWorkManager.instance ?.getAppUpgradeInfo(mContext, it, role.toString() + "") } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/UpgradeAppNetWorkManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/UpgradeAppNetWorkManager.kt index 3393f9953f..f03c1fb9dd 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/UpgradeAppNetWorkManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/upgrade/UpgradeAppNetWorkManager.kt @@ -2,6 +2,7 @@ package com.zhjt.mogo_core_function_devatools.upgrade import android.content.* import android.util.* +import android.widget.Toast import com.mogo.cloud.passport.* import com.mogo.commons.constants.* import com.mogo.commons.utils.* @@ -17,6 +18,7 @@ import com.mogo.eagle.core.function.call.patch.CallerPatchManager.isPatchAccept import com.mogo.eagle.core.network.* import com.mogo.eagle.core.network.utils.* import com.mogo.eagle.core.utilcode.download.Config +import com.mogo.eagle.core.utilcode.kotlin.* import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d import com.mogo.eagle.core.utilcode.mogo.logger.scene.* import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr @@ -40,10 +42,14 @@ class UpgradeAppNetWorkManager private constructor() { private val provider by lazy { upgradeProvider() } + @Volatile + private var upgradeJob: Job? = null + /** * 获取app升级信息 */ - fun getAppUpgradeInfo(context: Context?, mac: String, screenType: String) { // String sn = "X20202203105S688HZ"; + fun getAppUpgradeInfo(context: Context?, mac: String, screenType: String) { + upgradeJob?.safeCancel() scope.launch { val sn = MoGoAiCloudClientConfig.getInstance().sn //null val macAddress = mac //"48:b0:2d:4d:31:7f" @@ -85,6 +91,8 @@ class UpgradeAppNetWorkManager private constructor() { } delay(TimeUnit.HOURS.toMillis(1)) getAppUpgradeInfo(context, mac, screenType) + }.also { + upgradeJob = it } } @@ -128,6 +136,9 @@ class UpgradeAppNetWorkManager private constructor() { provider?.recordUpgradeRecord(info.result.versionName, null, 0) } if (ApkInstaller.isInstallAppStore(Utils.getApp())) { + withContext(Dispatchers.Main) { + Toast.makeText(Utils.getApp(), "检测到新版本[${info.result.versionName}]并且当前设备支持静默升级,开始下载新版本...", Toast.LENGTH_SHORT).show() + } Log.d("ApkInstaller", "EB5设备,直接走静默,不弹窗...") CallerDevaToolsManager.downLoadPackage(if (isGoFullUpgrade) APK else PATCH, downloadUrl.substring(downloadUrl.lastIndexOf("/") + 1), downloadUrl) } else { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/TakeOverView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/TakeOverView.kt index 16f368de6a..c3ead2d664 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/TakeOverView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/vehicle/TakeOverView.kt @@ -55,7 +55,6 @@ class TakeOverView @JvmOverloads constructor( */ override fun onAutopilotStatusResponse(autoPilotStatusInfo: AutopilotStatusInfo) { autopilotStatus = autoPilotStatusInfo.state - Log.i(TAG,"onAutopilotStatusResponse autoPilotStatusInfo state="+autoPilotStatusInfo.state) if(autoPilotStatusInfo.state == 7){ isParallel = true }else if(autoPilotStatusInfo.state == 0 || autoPilotStatusInfo.state == 1){ @@ -70,7 +69,6 @@ class TakeOverView @JvmOverloads constructor( super.onAutopilotGuardian(guardianInfo) ThreadUtils.runOnUiThread { guardianInfo?.let { - Log.i(TAG,"onAutopilotGuardian guardianInfo ="+it.code) if (FunctionBuildConfig.isDemoMode) { return@let } diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotCarConfigListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotCarConfigListenerManager.kt index 0a191d30ca..950f9bb2fe 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotCarConfigListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotCarConfigListenerManager.kt @@ -25,7 +25,11 @@ object CallerAutopilotCarConfigListenerManager : CallerBase() { + private const val TAG = "CallerTelematicListenerManager" + fun invokeReceivedMsg(type: Int, byteArray: ByteArray) { M_LISTENERS.forEach { val listener = it.value - listener.onReceivedMsg(type, byteArray) + try { + listener.onReceivedMsg(type, byteArray) + } catch (e: Exception) { + Log.e(TAG, "转发消息出现异常:${e.message}") + } } } fun dispatchServerSn(sn: String?) { M_LISTENERS.forEach { val listener = it.value - listener.onReceivedServerSn(sn) + try { + listener.onReceivedServerSn(sn) + } catch (e: Exception) { + Log.e(TAG, "转发司机屏SN出现异常:${e.message}") + } } } } \ No newline at end of file