[6.2.6] fix ui bug

This commit is contained in:
zhongchao
2023-12-19 15:43:14 +08:00
parent b5b4513ee0
commit 2caebf68db
2 changed files with 67 additions and 51 deletions

View File

@@ -1,53 +1,78 @@
package com.mogo.eagle.function.biz.v2x.v2n
import android.content.*
import android.os.*
import android.util.*
import androidx.annotation.*
import androidx.localbroadcastmanager.content.*
import com.mogo.eagle.core.data.config.*
import android.content.Context
import android.content.Intent
import android.os.Build
import android.os.Handler
import android.os.Looper
import android.util.Log
import androidx.annotation.RequiresApi
import androidx.localbroadcastmanager.content.LocalBroadcastManager
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_V2X_MSG
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_SOURCE_CLOUD
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_TYPE_STATUS
import com.mogo.eagle.core.data.enums.*
import com.mogo.eagle.core.data.enums.CommunicationType
import com.mogo.eagle.core.data.enums.DataSourceType
import com.mogo.eagle.core.data.enums.EventTypeEnumNew
import com.mogo.eagle.core.data.enums.EventTypeEnumNew.Companion.isRoadEvent
import com.mogo.eagle.core.data.enums.WarningDirectionEnum.ALERT_WARNING_TOP
import com.mogo.eagle.core.data.map.*
import com.mogo.eagle.core.data.map.entity.*
import com.mogo.eagle.core.data.msgbox.*
import com.mogo.eagle.core.data.map.MogoLocation
import com.mogo.eagle.core.data.map.entity.V2XMessageEntity
import com.mogo.eagle.core.data.map.entity.V2XRoadEventEntity
import com.mogo.eagle.core.data.msgbox.MsgBoxBean
import com.mogo.eagle.core.data.msgbox.MsgBoxType
import com.mogo.eagle.core.data.msgbox.V2XMsg
import com.mogo.eagle.core.data.multidisplay.TelematicConstant
import com.mogo.eagle.core.data.v2x.*
import com.mogo.eagle.core.function.api.autopilot.*
import com.mogo.eagle.core.function.api.cloud.*
import com.mogo.eagle.core.function.call.autopilot.*
import com.mogo.eagle.core.data.v2x.V2XEvent
import com.mogo.eagle.core.data.v2x.V2XMarkerCardResult
import com.mogo.eagle.core.data.v2x.V2XWarningTarget
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener
import com.mogo.eagle.core.function.api.autopilot.IMoGoV2XListener
import com.mogo.eagle.core.function.api.cloud.IMoGoCloudListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02
import com.mogo.eagle.core.function.call.autopilot.CallerV2XListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerV2XListenerManager.V2NCarTypeCheck.Companion.verifyCarType
import com.mogo.eagle.core.function.call.cloud.*
import com.mogo.eagle.core.function.call.hmi.*
import com.mogo.eagle.core.function.call.msgbox.*
import com.mogo.eagle.core.function.call.cloud.CallerCloudListenerManager
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager
import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
import com.mogo.eagle.core.utilcode.mogo.*
import com.mogo.eagle.core.utilcode.mogo.logger.*
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_V2X
import com.mogo.eagle.core.utilcode.util.*
import com.mogo.eagle.function.biz.v2x.*
import com.mogo.eagle.core.utilcode.util.CoordinateUtils
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.Utils
import com.mogo.eagle.function.biz.v2x.V2XBizTrace
import com.mogo.eagle.function.biz.v2x.v2n.V2XPoiLoader.Companion.v2xPoiLoader
import com.mogo.eagle.function.biz.v2x.v2n.alarm.*
import com.mogo.eagle.function.biz.v2x.v2n.alarm.V2XAlarmServer
import com.mogo.eagle.function.biz.v2x.v2n.consts.V2XConst.BROADCAST_SCENE_EXTRA_KEY
import com.mogo.eagle.function.biz.v2x.v2n.consts.V2XConst.BROADCAST_SCENE_HANDLER_ACTION
import com.mogo.eagle.function.biz.v2x.v2n.network.callback.*
import com.mogo.eagle.function.biz.v2x.v2n.receiver.*
import com.mogo.eagle.function.biz.v2x.v2n.scenario.impl.*
import com.mogo.eagle.function.biz.v2x.v2n.utils.*
import com.zhjt.service.chain.*
import kotlinx.coroutines.*
import kotlinx.coroutines.android.*
import com.mogo.eagle.function.biz.v2x.v2n.network.callback.IV2XCallback
import com.mogo.eagle.function.biz.v2x.v2n.receiver.SceneBroadcastReceiver
import com.mogo.eagle.function.biz.v2x.v2n.scenario.impl.V2XScenarioManager
import com.mogo.eagle.function.biz.v2x.v2n.utils.V2XEventAnalyticsManager
import com.mogo.eagle.function.biz.v2x.v2n.utils.toRoadMarker
import com.zhjt.service.chain.ChainLog
import com.zhjt.service.chain.TraceNodeCore.Companion.update
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.android.asCoroutineDispatcher
import kotlinx.coroutines.cancel
import kotlinx.coroutines.launch
import mogo.telematics.pad.MessagePad.PlanningObject
import mogo.v2x.*
import mogo.v2x.MogoV2X
import java.nio.charset.Charset
import java.util.concurrent.*
import java.util.concurrent.atomic.*
import java.util.concurrent.ConcurrentHashMap
import java.util.concurrent.CopyOnWriteArrayList
import java.util.concurrent.CopyOnWriteArraySet
import java.util.concurrent.atomic.AtomicBoolean
object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback,
IMoGoAutopilotIdentifyListener, IMoGoCloudListener,
@@ -149,12 +174,12 @@ object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback,
/**
* V2XEvent事件回调
*/
/*@ChainLog(
linkChainLog = CHAIN_TYPE_STATUS,
linkCode = CHAIN_SOURCE_CLOUD,
nodeAliasCode = CHAIN_CODE_V2X_MSG,
paramIndexes = [0]
)*/
// @ChainLog(
// linkChainLog = CHAIN_TYPE_STATUS,
// linkCode = CHAIN_SOURCE_CLOUD,
// nodeAliasCode = CHAIN_CODE_V2X_MSG,
// paramIndexes = [0]
// )
override fun onAck(event: V2XEvent) {
Log.d("$M_V2X$TAG", "OK->: $event")
when (event) {
@@ -176,16 +201,16 @@ object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback,
val flag = verifyCarType()
Log.d("$M_V2X$TAG", "---- 收到ai云V2N事件 ---:${flag}, ${FunctionBuildConfig.v2nMainSwitch}, ${FunctionBuildConfig.isNewV2NData}")
if (flag && (!FunctionBuildConfig.v2nMainSwitch || !FunctionBuildConfig.isNewV2NData)) {
try {
// try {
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
Log.d("$M_V2X$TAG", "onAck -> 司机端: 将收到云端事件给到乘客端...")
CallerTelematicManager.sendMsgToAllClients(TelematicConstant.V2N_AI_ROAD_DATA_TO_PASSENGER, GsonUtils.toJson(event).toByteArray(Charset.defaultCharset()))
} else {
Log.d("$M_V2X$TAG", "onAck -> 乘客端: 收到V2N事件...")
}
} catch (t: Throwable) {
t.printStackTrace()
}
// } catch (t: Throwable) {
// t.printStackTrace()
// }
handleRoadMarkerEvent(event.data.toRoadMarker())
} else{
V2XBizTrace.onAck("事件未触发,被开关拦截",mapOf("roadEvent" to event, "v2nMainSwitch" to FunctionBuildConfig.v2nMainSwitch,"isNewV2NData" to FunctionBuildConfig.isNewV2NData), true)
@@ -198,12 +223,6 @@ object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback,
}
@RequiresApi(Build.VERSION_CODES.N)
// @ChainLog(
// linkChainLog = CHAIN_TYPE_STATUS,
// linkCode = CHAIN_SOURCE_ADAS,
// nodeAliasCode = CHAIN_CODE_V2X_MSG,
// paramIndexes = [0]
// )
override fun onAutopilotIdentifyPlanningObj(planningObjects: List<PlanningObject>?) {
super.onAutopilotIdentifyPlanningObj(planningObjects)
planningObjects?.let {

View File

@@ -63,9 +63,6 @@ class PncActionsView @JvmOverloads constructor(
override fun onAttachedToWindow() {
super.onAttachedToWindow()
tvHmiPncActions.setTextSize(COMPLEX_UNIT_PX, txtSize)
tvHmiPncActions.background =
AppCompatResources.getDrawable(context, bgResources)
tvHmiPncActions.text = "前方右转"
CallerAutoPilotStatusListenerManager.addListener(TAG, this)
CallerPlanningActionsListenerManager.addListener(TAG, this)
CallerTrafficLightListenerManager.addListener(TAG, this)