diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/DataCenterProvider.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/DataCenterProvider.kt index f3da028c43..895fbc9706 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/DataCenterProvider.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/DataCenterProvider.kt @@ -29,7 +29,10 @@ class DataCenterProvider : IDataCenterProvider { CallerMsgBoxManager.queryAllMessages(it) TrafficLightDispatcher.INSTANCE.initServer(it) SpeedLimitDispatcher.INSTANCE.initLimit(it) - IotManager.init(AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) + IotManager.init( + AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode), + AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode) + ) } } diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/iot/IotManager.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/iot/IotManager.kt index 458c1eb0e8..42e622c8f3 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/iot/IotManager.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/iot/IotManager.kt @@ -22,7 +22,7 @@ object IotManager : IMoGoCloudListener, IWriteChainLogListener { private const val EVENT_KEY_HARDWARE_DEVICES = "event_key_hardware_devices" private var isPassenger: Boolean = false - fun init(isPassenger: Boolean) { + fun init(isPassenger: Boolean, isB2: Boolean) { this.isPassenger = isPassenger if (isPassenger) { CallerCloudListenerManager.addListener(TAG, this) @@ -30,7 +30,7 @@ object IotManager : IMoGoCloudListener, IWriteChainLogListener { hardwareDeviceBind(SharedPrefsMgr.getInstance().sn) } else { LedSourceManager.registerWriteChainLogListener(this) - LedSourceManager.init(true) + LedSourceManager.init(true, isB2) } } diff --git a/libraries/mogo-hardware-devices/src/main/java/com/mogo/support/device/led/LedSourceManager.kt b/libraries/mogo-hardware-devices/src/main/java/com/mogo/support/device/led/LedSourceManager.kt index f8d3ab9786..c50454c1b1 100644 --- a/libraries/mogo-hardware-devices/src/main/java/com/mogo/support/device/led/LedSourceManager.kt +++ b/libraries/mogo-hardware-devices/src/main/java/com/mogo/support/device/led/LedSourceManager.kt @@ -37,6 +37,7 @@ object LedSourceManager : IWriteChainLogListener { private var typeTurnSignal = 0;//转向灯状态 0:无灯;1:左转;2:右转;3:双闪 private var lastUpdateEmergencyBrakeTime = 0L//上次触发急刹展示的时间 private var isDriver = false + private var isB2 = false private var writeChainLogListener: IWriteChainLogListener? = null //红绿灯定时器,超时未更新隐藏红绿灯 @@ -56,24 +57,31 @@ object LedSourceManager : IWriteChainLogListener { } fun unregisterWriteChainLogListener() { - this.writeChainLogListener = null + if (isDriver && isB2) { + this.writeChainLogListener = null + } } - fun init(isDriver: Boolean) { + fun init(isDriver: Boolean, isB2: Boolean) { this.isDriver = isDriver - LedScreenCpower5aManager.getInstance().addListener(cpower5aListener) + this.isB2 = isB2 + if (isDriver && isB2) { + LedScreenCpower5aManager.getInstance().addListener(cpower5aListener) + } } fun destroy() { - frontViewModel.reset() - backViewModel.reset() - LedScreenCpower5aManager.getInstance().removeListener(cpower5aListener) - typeTurnSignal = 0 - lastUpdateEmergencyBrakeTime = 0L - lightCountDownTimer?.cancel() - lightCountDownTimer = null - lastLightTime = System.currentTimeMillis() + if (isDriver && isB2) { + frontViewModel.reset() + backViewModel.reset() + LedScreenCpower5aManager.getInstance().removeListener(cpower5aListener) + typeTurnSignal = 0 + lastUpdateEmergencyBrakeTime = 0L + lightCountDownTimer?.cancel() + lightCountDownTimer = null + lastLightTime = System.currentTimeMillis() + } } private fun receiveUI(ledUI: LedUI) { @@ -106,7 +114,7 @@ object LedSourceManager : IWriteChainLogListener { * type: 0:无灯;1:左转;2:右转;3:双闪 */ fun updateTurnSignalData(type: Int) { - if (isDriver) { + if (isDriver && isB2) { if (typeTurnSignal != type) { writeChainLogListener?.onWriteChainLog(TAG, "LED外屏数据源", "车灯状态=${type}") typeTurnSignal = type @@ -120,7 +128,7 @@ object LedSourceManager : IWriteChainLogListener { * 车辆急刹 */ fun updateAccelerationData(acceleration: Double) { - if (isDriver) { + if (isDriver && isB2) { if (acceleration <= -2) { writeChainLogListener?.onWriteChainLog( TAG, @@ -187,7 +195,7 @@ object LedSourceManager : IWriteChainLogListener { stateStraight: Int, durationStraight: Int, stateTurnRight: Int, durationTurnRight: Int ) { - if (isDriver) { + if (isDriver && isB2) { var stateTurnRoundTemp: TrafficLightState? = null var stateTurnLeftTemp: TrafficLightState? = null var stateStraightTemp: TrafficLightState? = null @@ -212,7 +220,7 @@ object LedSourceManager : IWriteChainLogListener { stateStraightTemp = transitionTurnType(stateStraight) stateTurnRightTemp = transitionTurnType(stateTurnRight) } - if (isShow){ + if (isShow) { writeChainLogListener?.onWriteChainLog( TAG, "LED外屏数据源", @@ -274,7 +282,7 @@ object LedSourceManager : IWriteChainLogListener { arrivalStopName: String, isLastStop: Boolean ) { - if (isDriver) { + if (isDriver && isB2) { writeChainLogListener?.onWriteChainLog( TAG, "LED外屏数据源",