[6.9.0]OTA升级修改
This commit is contained in:
@@ -19,4 +19,7 @@ object OTAUpgradeConfig {
|
||||
//当前SSM版本是否支持OTA升级,默认不支持
|
||||
@JvmField
|
||||
var supportOTA: Boolean = false
|
||||
//是否是主动查询
|
||||
@JvmField
|
||||
var isQuery: Boolean = false
|
||||
}
|
||||
@@ -76,18 +76,6 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
if(request.otaToken.isNotEmpty()){
|
||||
if(OTAUpgradeConfig.otaToken != request.otaToken){
|
||||
OTAUpgradeConfig.otaToken = request.otaToken
|
||||
//冷启动已完成(包括成功/失败),且驾驶状态为非自驾状态,且当前无订单进行强提示,否则为弱提示
|
||||
if(OTAUpgradeConfig.coldStartCompleted && !OTAUpgradeConfig.autopilotStatus
|
||||
&& !OTAUpgradeConfig.inOrder){
|
||||
//触发强提示升级
|
||||
CallerHmiManager.showOTAUpgradeDialog(true)
|
||||
}else{
|
||||
//触发弱提示升级
|
||||
//冷启动未完成(进行中),或驾驶状态为自驾状态,或当前有订单,直接默认选择稍后升级,
|
||||
// 并toast提示“收到车辆部署任务,请在车辆空闲时发起升级”
|
||||
CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.DELAY)
|
||||
ToastUtils.showLong("收到车辆部署任务,请在车辆空闲时发起升级")
|
||||
}
|
||||
}
|
||||
}
|
||||
//解析JSON
|
||||
@@ -124,14 +112,29 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
Log.i(TAG, "cur_size=$curSize")
|
||||
Log.i(TAG, "total_size=$totalSize")
|
||||
|
||||
if(index == 0){
|
||||
//是否需要触发提示升级只判断第一个任务
|
||||
if(productStatus == 0){
|
||||
//冷启动已完成(包括成功/失败),且驾驶状态为非自驾状态,且当前无订单进行强提示,否则为弱提示
|
||||
if(OTAUpgradeConfig.coldStartCompleted && !OTAUpgradeConfig.autopilotStatus
|
||||
&& !OTAUpgradeConfig.inOrder){
|
||||
//触发强提示升级
|
||||
CallerHmiManager.showOTAUpgradeDialog(true)
|
||||
}else{
|
||||
//触发弱提示升级
|
||||
//冷启动未完成(进行中),或驾驶状态为自驾状态,或当前有订单,直接默认选择稍后升级,
|
||||
// 并toast提示“收到车辆部署任务,请在车辆空闲时发起升级”
|
||||
CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.DELAY)
|
||||
ToastUtils.showLong("收到车辆部署任务,请在车辆空闲时发起升级")
|
||||
}
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
//// 状态 0:默认(未开始), 1:下载中, 2:下载完成, 3:升级完成, 4:升级失败
|
||||
if(productStatus == 0 || productStatus == 1 || productStatus == 2){
|
||||
upgradeComplete = false
|
||||
CallerOTAManager.invokeOtaDownloadStatus(true)
|
||||
}else{
|
||||
CallerOTAManager.invokeOtaDownloadStatus(false)
|
||||
}
|
||||
|
||||
val otaUpgradeInfo = OtaUpgradeInfo(token, productStatus,failReason,upgradeReason,
|
||||
taskId,taskItemId,otaType,productName,needRestart,isDelay,curSize,totalSize)
|
||||
otaUpgradeList.add(otaUpgradeInfo)
|
||||
@@ -139,6 +142,9 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
CallerHmiManager.showOTADownloadStatusDialog(otaUpgradeList)
|
||||
if(upgradeComplete){
|
||||
OTAUpgradeConfig.otaToken = ""
|
||||
CallerOTAManager.invokeOtaDownloadStatus(false)
|
||||
}else{
|
||||
CallerOTAManager.invokeOtaDownloadStatus(true)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -160,8 +166,6 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
if(status.otaInfo.otaToken.isNotEmpty()){
|
||||
if(OTAUpgradeConfig.otaToken != status.otaInfo.otaToken){
|
||||
OTAUpgradeConfig.otaToken = status.otaInfo.otaToken
|
||||
//触发升级提示
|
||||
CallerHmiManager.showOTAUpgradeDialog(true)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -199,12 +203,30 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
Log.i(TAG, "is_delay=$isDelay")
|
||||
Log.i(TAG, "cur_size=$curSize")
|
||||
Log.i(TAG, "total_size=$totalSize")
|
||||
//// 状态 0:默认(未开始), 1:下载中, 2:下载完成, 3:升级完成, 4:升级失败
|
||||
|
||||
if(index == 0){
|
||||
//是否需要触发提示升级只判断第一个任务
|
||||
if(productStatus == 0){
|
||||
//冷启动已完成(包括成功/失败),且驾驶状态为非自驾状态,且当前无订单进行强提示,否则为弱提示
|
||||
if(OTAUpgradeConfig.coldStartCompleted && !OTAUpgradeConfig.autopilotStatus
|
||||
&& !OTAUpgradeConfig.inOrder){
|
||||
//触发强提示升级
|
||||
CallerHmiManager.showOTAUpgradeDialog(true)
|
||||
}else{
|
||||
//触发弱提示升级
|
||||
//冷启动未完成(进行中),或驾驶状态为自驾状态,或当前有订单,直接默认选择稍后升级,
|
||||
// 并toast提示“收到车辆部署任务,请在车辆空闲时发起升级”
|
||||
CallerAutoPilotControlManager.sendSsmFuncOtaDownloadResponse(OTAUpgradeConfig.otaToken,SsmInfo.IfUpgrade.DELAY)
|
||||
ToastUtils.showLong("收到车辆部署任务,请在车辆空闲时发起升级")
|
||||
}
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// 状态 0:默认(未开始), 1:下载中, 2:下载完成, 3:升级完成, 4:升级失败
|
||||
if(productStatus == 0 || productStatus == 1 || productStatus == 2){
|
||||
upgradeComplete = false
|
||||
CallerOTAManager.invokeOtaDownloadStatus(true)
|
||||
}else{
|
||||
CallerOTAManager.invokeOtaDownloadStatus(false)
|
||||
}
|
||||
if(productStatus == 4){
|
||||
upgradeResult = false
|
||||
@@ -215,12 +237,19 @@ object OTAUpgradeManager: IMoGoAutopilotStatusListener, IDataCenterBizListener,
|
||||
}
|
||||
if(upgradeComplete){
|
||||
OTAUpgradeConfig.otaToken = ""
|
||||
CallerHmiManager.showOTAResultDialog(upgradeResult)
|
||||
if(OTAUpgradeConfig.isQuery){
|
||||
ToastUtils.showLong("暂无待升级任务!")
|
||||
OTAUpgradeConfig.isQuery = false
|
||||
}else{
|
||||
CallerHmiManager.showOTAResultDialog(upgradeResult)
|
||||
}
|
||||
CallerOTAManager.invokeOtaDownloadStatus(false)
|
||||
}else{
|
||||
//通知关闭提示升级窗口(存在域控也在进行5min倒计时,与app存在时间差,域控会更早完成倒计时触发升级,
|
||||
// 此时通知app开始升级,app收到后即使未完成倒计时,也关闭提示弹窗,开始展示下载进展)
|
||||
CallerHmiManager.showOTAUpgradeDialog(false)
|
||||
CallerHmiManager.showOTADownloadStatusDialog(otaUpgradeList)
|
||||
CallerOTAManager.invokeOtaDownloadStatus(true)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user