From 624abbe706b54e29ab3657fee32b07576cff5cce Mon Sep 17 00:00:00 2001 From: zhongchao Date: Wed, 10 Nov 2021 20:05:30 +0800 Subject: [PATCH] fix ui bug and add log --- .idea/misc.xml | 3 +- .../core/function/hmi/ui/MoGoHmiFragment.kt | 9 +++++- .../src/main/res/layout/fragment_hmi.xml | 12 ++++---- .../res/layout/view_vip_identification.xml | 1 - .../core/function/v2x/vip/VipCarManager.kt | 28 +++++++++++++++---- .../mogo/eagle/core/data/v2x/VipMessage.kt | 2 +- .../socket/MogoAiCloudSocketManager.java | 2 +- 7 files changed, 40 insertions(+), 17 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index 8af1c7c7d7..b81ffe8627 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -16,13 +16,12 @@ - + - diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt index 6cf25475a3..569f83e285 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt @@ -55,7 +55,14 @@ class MoGoHmiFragment : MvpFragment } override fun vipIdentification(visible: Boolean) { - flVipIdentificationView.visibility = if (visible) View.VISIBLE else View.GONE + ThreadUtils.runOnUiThread { + Logger.d(TAG, "vipIdentification") + if (visible) { + flVipIdentificationView.visibility = View.VISIBLE + } else { + flVipIdentificationView.visibility = View.GONE + } + } } override fun createCoverage(activity: FragmentActivity?, containerId: Int?): Fragment? { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml index a856e8ea80..577835099a 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml @@ -29,8 +29,9 @@ android:layout_width="@dimen/module_vip_width" android:layout_height="@dimen/module_vip_height" android:layout_marginLeft="@dimen/module_vip_margin_left" - app:layout_constraintLeft_toRightOf="@+id/flSpeedChartView" - app:layout_constraintTop_toTopOf="@+id/flSpeedChartView" /> + android:visibility="gone" + app:layout_constraintLeft_toRightOf="@+id/viewSpeedChart" + app:layout_constraintTop_toTopOf="@+id/viewSpeedChart" /> + app:layout_constraintEnd_toStartOf="@id/viewTrafficLightVr" + app:layout_constraintTop_toTopOf="parent" + tools:visibility="visible" /> \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_vip_identification.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_vip_identification.xml index d063b9158d..b3f34d3fe5 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_vip_identification.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_vip_identification.xml @@ -11,7 +11,6 @@ android:layout_height="@dimen/dp_104" android:scaleType="fitXY" android:src="@drawable/v2x_vip_identification_vr" - android:visibility="gone" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/vip/VipCarManager.kt b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/vip/VipCarManager.kt index 255bb1170a..fa20ef0042 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/vip/VipCarManager.kt +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/vip/VipCarManager.kt @@ -12,6 +12,7 @@ import com.mogo.eagle.core.function.api.trafficlight.IMoGoTrafficLightListener import com.mogo.eagle.core.function.call.hmi.CallerHmiManager import com.mogo.eagle.core.function.call.trafficlight.CallTrafficLightListenerManager import com.mogo.eagle.core.function.v2x.trafficlight.core.MogoTrafficLightManager +import com.mogo.eagle.core.utilcode.util.SPUtils import com.mogo.map.navi.IMogoCarLocationChangedListener2 import com.mogo.module.common.MogoApisHandler import com.mogo.module.common.enums.EventTypeEnum @@ -37,9 +38,23 @@ class VipCarManager : IMogoOnMessageListener, IMoGoTrafficLightListe fun initServer(context: Context) { mContext = context - MogoApisHandler.getInstance().apis.registerCenterApi.registerCarLocationChangedListener(TAG, this) - MogoApisHandler.getInstance().apis.getSocketManagerApi(context) + MogoApisHandler.getInstance() + .apis.registerCenterApi.registerCarLocationChangedListener(TAG, this) + MogoApisHandler.getInstance() + .apis.getSocketManagerApi(context) .registerOnMessageListener(401025, this) + + val vipSetTime = SPUtils.getInstance().getLong("vip") + if (vipSetTime == -1L) { + return + } + //todo 后续改成接口调用查询,防止清除缓存造成状态不统一 + if (vipSetTime > 0 && System.currentTimeMillis() - vipSetTime < 0) { //未超时,需要设置VIP + CallerHmiManager.vipIdentification(true) + CallTrafficLightListenerManager.registerTrafficLightListener(TAG, this) + } else { + SPUtils.getInstance().remove("vip") //超时 + } } override fun target(): Class { @@ -47,13 +62,16 @@ class VipCarManager : IMogoOnMessageListener, IMoGoTrafficLightListe } override fun onMsgReceived(vipMessage: VipMessage?) { + Logger.d(TAG, "onMsgReceived vipMessage : ${vipMessage.toString()}") vipMessage?.let { when (it.vipType) { - 0 -> { + 0 -> { //取消VIP + SPUtils.getInstance().remove("vip") CallerHmiManager.vipIdentification(false) CallTrafficLightListenerManager.unRegisterTrafficLightListener(TAG) } - 1 -> { + 1 -> { //设置VIP + SPUtils.getInstance().put("vip", vipMessage.timeOut) CallerHmiManager.vipIdentification(true) CallTrafficLightListenerManager.registerTrafficLightListener(TAG, this) } @@ -67,7 +85,7 @@ class VipCarManager : IMogoOnMessageListener, IMoGoTrafficLightListe //如果上次结果和本次灯态结果变化比较大,则已变灯,控制HMI展示弹窗 if ((result!!.laneList.mid.remain - trafficLightResult.laneList.mid.remain) > 3) { CallerHmiManager.showWarningV2X(EventTypeEnum.TYPE_VIP_IDENTIFICATION.poiType.toInt(), - "", + EventTypeEnum.TYPE_VIP_IDENTIFICATION.content, EventTypeEnum.TYPE_VIP_IDENTIFICATION.tts, EventTypeEnum.TYPE_VIP_IDENTIFICATION.poiType, object : IMoGoWarningStatusListener { diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/v2x/VipMessage.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/v2x/VipMessage.kt index ab9fd581af..fc8b61621d 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/v2x/VipMessage.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/v2x/VipMessage.kt @@ -6,5 +6,5 @@ package com.mogo.eagle.core.data.v2x * vipType: Vip --1 变成VIP,--0 撤销VIP * content: VIP消息 */ -class VipMessage(val timeOut: Long, val vipType: Int, val content: String) { +data class VipMessage(val timeOut: Long, val vipType: Int, val content: String) { } \ No newline at end of file diff --git a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/socket/MogoAiCloudSocketManager.java b/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/socket/MogoAiCloudSocketManager.java index ac9f284b7a..4eb11582b7 100644 --- a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/socket/MogoAiCloudSocketManager.java +++ b/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/socket/MogoAiCloudSocketManager.java @@ -176,7 +176,7 @@ public class MogoAiCloudSocketManager extends ConnectionLifecycleListener implem if (listeners != null && !listeners.isEmpty()) { for (IMogoOnMessageListener listener : listeners) { if (listener != null) { - Logger.d(TAG, "received msgId = %s, content = %s", mAckListeners.get(msgType), obj); + Logger.d(TAG, "received msgId = %s, content = %s", mAckListeners.get(msgType), obj.toString()); listener.onMsgReceived(obj); } }