[6.9.0]OTA升级和数据闭环需求开发

This commit is contained in:
xuxinchao
2024-11-29 19:43:13 +08:00
parent 8ee9bde0ea
commit e2541db3b3
18 changed files with 501 additions and 11 deletions

View File

@@ -73,6 +73,7 @@ import com.zhjt.mogo_core_function_devatools.mofang.MoGoMoFangProviderImpl
import com.zhjt.mogo_core_function_devatools.monitor.MonitorManager
import com.zhjt.mogo_core_function_devatools.monitor.db.MonitorDb
import com.zhjt.mogo_core_function_devatools.monitor.db.MonitorDb.Companion.getDb
import com.zhjt.mogo_core_function_devatools.ota.OTAUpgradeManager
import com.zhjt.mogo_core_function_devatools.perf.MoGoCpuUsageProviderImpl
import com.zhjt.mogo_core_function_devatools.report.IPCReportManager.Companion.iPCReportManager
import com.zhjt.mogo_core_function_devatools.scene.SceneManager.Companion.sceneManager
@@ -204,6 +205,7 @@ class DevaToolsProvider : IDevaToolsProvider, IAppStateListener {
// apmEnvProvider.init(if(DebugConfig.isDebug()) "0" else "1", "${ DebugConfig.getNetMode() }", mDockerVersion ?: "")
BadCaseManager.init(mContext!!)
ColdStartManager.init(mContext!!)
OTAUpgradeManager.init(mContext!!)
if (DebugConfig.isDebug()) {
SdtManager.init(mContext!!, true, DetectResultImpl())
}

View File

@@ -1,7 +0,0 @@
package com.zhjt.mogo_core_function_devatools.ota
/**
* OTA升级管理类
*/
class OTAManager {
}

View File

@@ -0,0 +1,11 @@
package com.zhjt.mogo_core_function_devatools.ota
/**
* OTA升级配置
*/
object OTAUpgradeConfig {
@JvmField
var otaToken: String = ""
}

View File

@@ -0,0 +1,82 @@
package com.zhjt.mogo_core_function_devatools.ota
import android.content.Context
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.api.datacenter.IDataCenterBizListener
import com.mogo.eagle.core.function.api.devatools.IOTAListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.function.call.datacenter.CallerDataCenterBizListener
import com.mogo.eagle.core.function.call.devatools.CallerOTAManager
import system_master.SsmInfo
/**
* OTA升级管理类
*/
object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener, IOTAListener {
const val TAG = "OTAUpgradeManager"
fun init(context: Context){
CallerAutoPilotStatusListenerManager.addListener(TAG, this)
CallerDataCenterBizListener.addListener(TAG,this)
CallerOTAManager.addListener(TAG,this)
//查询OTA状态
CallerAutoPilotControlManager.sendSsmFuncOtaStatusQuery(OTAUpgradeConfig.otaToken)
}
/**
* 自动驾驶状态信息
* @param state 状态信息
* 0-不可自动驾驶adas与工控机没有链接或工控机异常
* 1-可自动驾驶,目前处于人工干预状态
* 2-自动驾驶中
* 7-平行驾驶中
*/
override fun onAutopilotStatusResponse(state: Int) {
super.onAutopilotStatusResponse(state)
}
/**
* 是否有订单
* @param inOrder true有订单 false没有订单
*/
override fun invokeOrderStatus(inOrder: Boolean) {
super.invokeOrderStatus(inOrder)
}
/**
* SSM发送OTA升级提示请求
* @param request SSM发送OTA升级提示内容
*/
override fun onOtaDownloadRequest(request: SsmInfo.OtaDownloadRequest) {
super.onOtaDownloadRequest(request)
}
/**
* SSM上报OTA下载进度, 开始升级后定频上报
* @param progress 下载进度
*/
override fun onOtaLoadingProgress(progress: SsmInfo.OtaLoadingProgess) {
super.onOtaLoadingProgress(progress)
}
/**
* SSM上报OTA状态和查询OTA状态
* 冷启动状态变更上报以及查询状态
* 如果是查询到的结果,{@link SsmInfo.OtaStatus#getOtaInfo()}
* 中的{@link SsmInfo.OtaDownloadRequest#getOtaToken()}==""表示不存在升级任务
* @param status 冷启动状态变更上报以及查询状态
*/
override fun onOtaStatus(status: SsmInfo.OtaStatus) {
super.onOtaStatus(status)
OTAUpgradeConfig.otaToken = status.otaInfo.otaToken
}
}