[6.5.0][道路事件][视角切换] 优化道路ID数据回调逻辑
This commit is contained in:
@@ -32,17 +32,14 @@ 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.api.map.road.IMoGoMapRoadListener
|
||||
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.CallerChassisLocationWGS84ListenerManager
|
||||
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.CallerCloudListenerManager
|
||||
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager
|
||||
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.AppIdentityModeUtils
|
||||
@@ -61,7 +58,6 @@ 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.zhidaoauto.map.data.road.StopLine
|
||||
import com.zhjt.service.chain.ChainLog
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
@@ -79,7 +75,7 @@ import java.util.concurrent.atomic.AtomicReference
|
||||
|
||||
object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback,
|
||||
IMoGoAutopilotIdentifyListener, IMoGoCloudListener,
|
||||
IMoGoV2XListener, IMoGoAutopilotStatusListener, IMoGoMapRoadListener {
|
||||
IMoGoV2XListener, IMoGoAutopilotStatusListener {
|
||||
|
||||
private const val TAG = "V2XEventManager"
|
||||
|
||||
@@ -108,39 +104,9 @@ object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback,
|
||||
v2xPoiLoader.startLoopPoi()
|
||||
// 注册广播接收场景弹窗使用的
|
||||
SceneBroadcastReceiver.register(context)
|
||||
CallerMapRoadListenerManager.addListener(TAG, this)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onRoadIdInfo(roadId: String) {
|
||||
super.onRoadIdInfo(roadId)
|
||||
Log.d(TAG, "--- onRoadIdInfo ---: $roadId")
|
||||
this.roadId = roadId
|
||||
val enterCrossRoadId = this.roadIdWithEnterCross
|
||||
if (hasCrossRoad && roadId.isNotBlank() && enterCrossRoadId.isNotBlank() && enterCrossRoadId != roadId) {
|
||||
hasCrossRoad = false
|
||||
if (firstLocationInCross.get() == null) {
|
||||
Log.d(TAG, "--- onRoadIdInfo --- 1 ---: $roadId")
|
||||
firstLocationInCross.set(CallerChassisLocationWGS84ListenerManager.getChassisLocationWGS84())
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun onStopLineInfo(info: StopLine) {
|
||||
super.onStopLineInfo(info)
|
||||
Log.d(TAG, "--- onStopLineInfo --- 1 ---: ${ info.distance }")
|
||||
if (!hasCrossRoad && info.distance <= 10) {
|
||||
Log.d(TAG, "--- onStopLineInfo --- 2 ---: $roadId")
|
||||
hasCrossRoad = true
|
||||
roadIdWithEnterCross = this.roadId
|
||||
firstLocationInCross.set(null)
|
||||
}
|
||||
}
|
||||
|
||||
fun getFirstLocationInCross(): MogoLocation? {
|
||||
return firstLocationInCross.get()
|
||||
}
|
||||
|
||||
private fun registerListener() {
|
||||
CallerChassisLocationGCJ02ListenerManager.addListener(TAG, 1, this)
|
||||
v2xPoiLoader.addCallback(this)
|
||||
@@ -363,7 +329,6 @@ object V2XEventManager : IMoGoChassisLocationGCJ02Listener, IV2XCallback,
|
||||
unRegisterListener()
|
||||
}
|
||||
v2xPoiLoader.stopLoopPoi()
|
||||
CallerMapRoadListenerManager.removeListener(TAG)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user