From 6b5cc1b8887e0d7d14ecdc63d5275cae57abe060 Mon Sep 17 00:00:00 2001 From: xuxinchao Date: Tue, 26 Nov 2024 16:03:43 +0800 Subject: [PATCH] =?UTF-8?q?[6.8.0]=E5=86=B7=E5=90=AF=E5=8A=A8=E4=B8=89?= =?UTF-8?q?=E6=9C=9FBug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../function/hmi/ui/widget/ColdStartView.kt | 68 ++++++++++++++++++- 1 file changed, 66 insertions(+), 2 deletions(-) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ColdStartView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ColdStartView.kt index b265bbb659..fed4c7d167 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ColdStartView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/ColdStartView.kt @@ -301,6 +301,7 @@ class ColdStartView @JvmOverloads constructor( Log.i(TAG,"旧冷启动状态="+it.processStatus) Log.i(TAG,"旧冷启动超时原因="+it.processTimeoutReason) ThreadUtils.runOnUiThread { + tvColdStartContent.text = getColdStartEventStatus(it.eventStatus) if(it.eventStatus == SsmInfo.CSState.COLD_START_READY){ if(!coldStartStatus){ //冷启动就绪 @@ -320,7 +321,6 @@ class ColdStartView @JvmOverloads constructor( reason = "SSM返回冷启动失败" ColdStartAnalyticsManager.coldStartStepAnalytics(ColdStartAnalyticsManager.coldStartFail,reason) } - tvColdStartContent.text = getColdStartEventStatus(it.eventStatus) nodeList.clear() it.nodeList.forEach {node-> if(node.status == SsmInfo.NodeStatus.NODE_TIMEOUT || node.status == SsmInfo.NodeStatus.NODE_FAILED){ @@ -432,9 +432,9 @@ class ColdStartView @JvmOverloads constructor( */ private fun showIPCConnectSuccessView(){ ipcRotationAnim?.cancel() - ivIpcConnectStatus.rotation = 0f tvSystemStartupTitle.text = resources.getString(R.string.cold_start_title_ssm_wait) tvSystemStartupTitle.setTextColor(ContextCompat.getColor(context, R.color.white)) + ivIpcConnectStatus.rotation = 0f ivIpcConnectStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_success)) tvIpcConnectContent.text = resources.getString(R.string.ipc_connect_success) //开启连接SSM倒计时 @@ -453,6 +453,13 @@ class ColdStartView @JvmOverloads constructor( //设置SSM连接文案为连接中 tvSsmConnectContent.text = resources.getString(R.string.ssm_connect_loading) tvSsmConnectContent.setTextColor(ContextCompat.getColor(context, android.R.color.white)) + //设置冷启动状态 + coldStartRotationAnim?.cancel() + connectColdStartTimer?.cancel() + ivColdStartStatus.rotation = 0f + ivColdStartStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_wait)) + tvColdStartContent.text = resources.getString(R.string.cold_start_wait) + tvColdStartContent.setTextColor(ContextCompat.getColor(context, R.color.white)) //隐藏冷启动相关视图 rvNodeList.visibility = View.GONE ivNodeListMask.visibility = View.GONE @@ -480,6 +487,20 @@ class ColdStartView @JvmOverloads constructor( failReason?.let { tvIpcConnectContent.text = it } + //将SSN连接状态置为等待中 + ssmRotationAnim?.cancel() + connectSSMTimer?.cancel() + ivSsmConnectStatus.rotation = 0f + ivSsmConnectStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_wait)) + tvSsmConnectContent.text = resources.getString(R.string.ssm_connect_wait) + tvSsmConnectContent.setTextColor(ContextCompat.getColor(context, R.color.white)) + //冷启动节点状态展示 + coldStartRotationAnim?.cancel() + connectColdStartTimer?.cancel() + ivColdStartStatus.rotation = 0f + ivColdStartStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_wait)) + tvColdStartContent.text = resources.getString(R.string.cold_start_wait) + tvColdStartContent.setTextColor(ContextCompat.getColor(context, R.color.white)) //隐藏冷启动相关视图 rvNodeList.visibility = View.GONE ivNodeListMask.visibility = View.GONE @@ -524,15 +545,24 @@ class ColdStartView @JvmOverloads constructor( //SSM连接状态展示 ivSsmConnectStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_wait)) tvSsmConnectContent.text = resources.getString(R.string.ssm_connect_wait) + tvSsmConnectContent.setTextColor(ContextCompat.getColor(context, R.color.white)) //冷启动节点状态展示 ivColdStartStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_wait)) tvColdStartContent.text = resources.getString(R.string.cold_start_wait) + tvColdStartContent.setTextColor(ContextCompat.getColor(context, R.color.white)) //隐藏Topic列表 rvNodeList.visibility = View.GONE ivNodeListMask.visibility = View.GONE ipcConnectStatus = false + ssmConnectStatus = false + coldStartStatus = false + currentColdStartSuccess = false + newColdStart = false } + /** + * Wifi连接成功 + */ private fun connectWifiSuccess(){ wifiConnectStatus = true wifiRotationAnim?.cancel() @@ -550,6 +580,20 @@ class ColdStartView @JvmOverloads constructor( ipcRotationAnim?.duration = 1500 ipcRotationAnim?.interpolator = LinearInterpolator() ipcRotationAnim?.start() + //将SSN连接状态置为等待中 + ssmRotationAnim?.cancel() + connectSSMTimer?.cancel() + ivSsmConnectStatus.rotation = 0f + ivSsmConnectStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_wait)) + tvSsmConnectContent.text = resources.getString(R.string.ssm_connect_wait) + tvSsmConnectContent.setTextColor(ContextCompat.getColor(context, R.color.white)) + //冷启动节点状态展示 + coldStartRotationAnim?.cancel() + connectColdStartTimer?.cancel() + ivColdStartStatus.rotation = 0f + ivColdStartStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_wait)) + tvColdStartContent.text = resources.getString(R.string.cold_start_wait) + tvColdStartContent.setTextColor(ContextCompat.getColor(context, R.color.white)) //隐藏冷启动相关视图 rvNodeList.visibility = View.GONE ivNodeListMask.visibility = View.GONE @@ -558,6 +602,9 @@ class ColdStartView @JvmOverloads constructor( } } + /** + * 域控连接中 + */ private fun showIPCConnecting(){ tvSystemStartupTitle.text = resources.getString(R.string.cold_start_title_tel_wait) tvSystemStartupTitle.setTextColor(ContextCompat.getColor(context, R.color.white)) @@ -571,6 +618,20 @@ class ColdStartView @JvmOverloads constructor( ipcRotationAnim?.duration = 1500 ipcRotationAnim?.interpolator = LinearInterpolator() ipcRotationAnim?.start() + //将SSN连接状态置为等待中 + ssmRotationAnim?.cancel() + connectSSMTimer?.cancel() + ivSsmConnectStatus.rotation = 0f + ivSsmConnectStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_wait)) + tvSsmConnectContent.text = resources.getString(R.string.ssm_connect_wait) + tvSsmConnectContent.setTextColor(ContextCompat.getColor(context, R.color.white)) + //冷启动节点状态展示 + coldStartRotationAnim?.cancel() + connectColdStartTimer?.cancel() + ivColdStartStatus.rotation = 0f + ivColdStartStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_wait)) + tvColdStartContent.text = resources.getString(R.string.cold_start_wait) + tvColdStartContent.setTextColor(ContextCompat.getColor(context, R.color.white)) //隐藏冷启动相关视图 rvNodeList.visibility = View.GONE ivNodeListMask.visibility = View.GONE @@ -611,6 +672,7 @@ class ColdStartView @JvmOverloads constructor( //展示冷启动连接过程视图 rvNodeList.visibility = View.VISIBLE tvColdStartContent.text = "启动中…" + tvColdStartContent.setTextColor(ContextCompat.getColor(context, R.color.white)) ivColdStartStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_process)) //开启冷启动连接状态动画 if(coldStartRotationAnim == null){ @@ -699,6 +761,7 @@ class ColdStartView @JvmOverloads constructor( ivColdStartStatus.rotation = 0f ivColdStartStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_fail)) tvColdStartContent.text = resources.getString(R.string.cold_start_fail_content) + tvColdStartContent.setTextColor(ContextCompat.getColor(context, R.color.cold_start_fail)) coldStartResultListener?.coldStartFail() } @@ -713,6 +776,7 @@ class ColdStartView @JvmOverloads constructor( ivColdStartStatus.rotation = 0f ivColdStartStatus.setImageDrawable(ResourceUtils.getDrawable(R.drawable.icon_cold_start_success)) tvColdStartContent.text = resources.getString(R.string.cold_start_success_content) + tvColdStartContent.setTextColor(ContextCompat.getColor(context, R.color.white)) connectColdStartTimer?.cancel() UiThreadHandler.postDelayed({ hideColdStartView()