MAP推拉升级

增加本地“下载中”状态记忆(效能有一个下载准备中的过程,此时不会发送状态,但鹰眼本地需要更改状态)
This commit is contained in:
xuxinchao
2022-05-24 15:28:09 +08:00
parent edf04a5e73
commit 4bebe56baa
3 changed files with 35 additions and 21 deletions

View File

@@ -18,6 +18,7 @@ import com.mogo.eagle.core.data.bindingcar.IPCUpgradeStateInfo
import com.mogo.eagle.core.data.camera.CameraEntity
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.data.config.HmiBuildConfig
import com.mogo.eagle.core.data.constants.MoGoConfig
import com.mogo.eagle.core.data.constants.MoGoFragmentPaths
import com.mogo.eagle.core.data.enums.SidePattern
import com.mogo.eagle.core.data.enums.WarningDirectionEnum
@@ -57,6 +58,7 @@ import com.mogo.eagle.core.function.hmi.ui.widget.V2XNotificationView
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr
import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.eagle.core.utilcode.util.TimeUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
@@ -979,6 +981,7 @@ class MoGoHmiFragment : MvpFragment<MoGoHmiContract.View?, HmiPresenter?>(),
override fun confirm() {
//确认升级
CallerBindingcarManager.getBindingcarProvider().upgradeConfirm(images, padSn, releaseId)
SharedPrefsMgr.getInstance(requireContext()).putBoolean(MoGoConfig.CONFIRM_UPGRADE,true)
adUpgradeDialog?.dismiss()
adUpgradeDialog = null
}

View File

@@ -9,6 +9,7 @@ import com.mogo.cloud.passport.MoGoAiCloudClient
import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo
import com.mogo.eagle.core.data.bindingcar.AdUpgradeStateHelper
import com.mogo.eagle.core.data.bindingcar.IPCUpgradeStateInfo
import com.mogo.eagle.core.data.constants.MoGoConfig
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.api.bindingcar.IMoGoBindingCarListener
@@ -18,6 +19,7 @@ import com.mogo.eagle.core.function.call.bindingcar.CallerBindingcarManager
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.function.hmi.R
import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr
import com.mogo.eagle.core.utilcode.util.AppUtils
import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
@@ -65,20 +67,20 @@ class SystemVersionView @JvmOverloads constructor(
//工控机版本视图点击事件
ivAdVersion.setOnClickListener {
CallerLogger.i("$M_HMI$$TAG", "ad version view clicked")
if(AdUpgradeStateHelper.isUpgradeableStatus()){
if(autopilotStatus == 2){
//当前处于自动驾驶状态不可进行升级Toast提示
ToastUtils.showShort("升级前请先退出自动驾驶模式")
}else{
dockerList?.let {
//弹窗提示,确认是否进行工控机升级
CallerHmiManager.showAdUpgradeDialog(it,
MoGoAiCloudClient.getInstance().aiCloudClientConfig.sn,
""
)
}
}
}
// if(AdUpgradeStateHelper.isUpgradeableStatus()){
// if(autopilotStatus == 2){
// //当前处于自动驾驶状态不可进行升级Toast提示
// ToastUtils.showShort("升级前请先退出自动驾驶模式")
// }else{
// dockerList?.let {
// //弹窗提示,确认是否进行工控机升级
// CallerHmiManager.showAdUpgradeDialog(it,
// MoGoAiCloudClient.getInstance().aiCloudClientConfig.sn,
// ""
// )
// }
// }
// }
ipcUpgradeStateInfo?.let {
when {
AdUpgradeStateHelper.isDownloading(it.status) -> {
@@ -124,6 +126,14 @@ class SystemVersionView @JvmOverloads constructor(
}
if(SharedPrefsMgr.getInstance(context).getBoolean(MoGoConfig.CONFIRM_UPGRADE,false)){
//将角标改为“下载中”
ivAdStatus?.setImageResource(R.drawable.icon_downloading)
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
//设置状态为不可升级
AdUpgradeStateHelper.setUpgradeableStatus(false)
}
}
/**
@@ -177,43 +187,42 @@ class SystemVersionView @JvmOverloads constructor(
ivAdStatus?.setImageResource(R.drawable.icon_latest_version)
adCircularProgressView?.visibility = View.GONE
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
}
AdUpgradeStateHelper.isDownloadFinish(status) ->{
//升级中,将状态设为“升级中”角标,并隐藏进度条
ivAdStatus?.setImageResource(R.drawable.icon_upgrading)
adCircularProgressView?.visibility = View.GONE
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
}
AdUpgradeStateHelper.isUpgrading(status) ->{
//升级中,将状态设为“升级中”角标,并隐藏进度条
ivAdStatus?.setImageResource(R.drawable.icon_upgrading)
adCircularProgressView?.visibility = View.GONE
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
}
AdUpgradeStateHelper.isUpgrading(status) ->{
//升级中,将状态设为“升级中”角标,并隐藏进度条
ivAdStatus?.setImageResource(R.drawable.icon_upgrading)
adCircularProgressView?.visibility = View.GONE
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
}
AdUpgradeStateHelper.isUpgradeSuccess(status) -> {
//升级成功,将状态设为“最新版”角标,并隐藏进度条
ivAdStatus?.setImageResource(R.drawable.icon_latest_version)
adCircularProgressView?.visibility = View.GONE
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
}
AdUpgradeStateHelper.isUpgradeFailed(status) -> {
//升级失败,将状态设为“升级失败”角标,并隐藏进度条
ivAdStatus?.setImageResource(R.drawable.icon_upgrade_failed)
adCircularProgressView?.visibility = View.GONE
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
}
else -> {
//其他状态,均显示“最新版”,并隐藏进度条
ivAdStatus?.setImageResource(R.drawable.icon_latest_version)
adCircularProgressView?.visibility = View.GONE
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
}
}
}