Merge remote-tracking branch 'origin/dev_minibus-d_230425_3.2.0' into dev_minibus-d_230425_3.2.0

This commit is contained in:
yangyakun
2023-05-23 18:24:34 +08:00
5 changed files with 38 additions and 14 deletions

View File

@@ -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() + "")
}

View File

@@ -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 {

View File

@@ -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
}

View File

@@ -25,7 +25,11 @@ object CallerAutopilotCarConfigListenerManager : CallerBase<IMoGoAutopilotCarCon
mCarConfigResp = carConfigResp
M_LISTENERS.forEach {
val listener = it.value
listener.onAutopilotCarConfig(carConfigResp)
try {
listener.onAutopilotCarConfig(carConfigResp)
} catch (t: Throwable) {
t.printStackTrace()
}
}
}

View File

@@ -1,21 +1,32 @@
package com.mogo.eagle.core.function.call.telematic
import android.util.Log
import com.mogo.eagle.core.function.api.telematic.IReceivedMsgListener
import com.mogo.eagle.core.function.call.base.CallerBase
object CallerTelematicListenerManager: CallerBase<IReceivedMsgListener>() {
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}")
}
}
}
}