Merge branch 'dev_opt_2.15.0' of gitlab.zhidaoauto.com:SCA/L4HA/AndroidApp/MoGoEagleEye into dev_opt_2.15.0

This commit is contained in:
xinfengkun
2023-04-06 17:20:01 +08:00
3 changed files with 25 additions and 5 deletions

View File

@@ -2,6 +2,7 @@ package com.zhjt.mogo_core_function_devatools
import android.app.Activity
import android.content.Context
import android.util.Log
import android.view.View
import android.view.ViewGroup
import com.alibaba.android.arouter.facade.annotation.Route

View File

@@ -20,7 +20,6 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsListenerManager.invokeMoFangStatus
import com.mogo.eagle.core.function.call.mofang.CallerMofangListenerManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_F
@@ -113,9 +112,12 @@ class MoFangManager private constructor() : IMoGoMoFangListener {
val isConnectedMethod = BluetoothDevice::class.java.getDeclaredMethod("isConnected")
isConnectedMethod.isAccessible = true
val isConnected = isConnectedMethod.invoke(device) as Boolean
CallerLogger.d("$M_F${TAG}"," showBondedDevice name = ${device.name} ---address = ${device.address}----isMfConnect = $isMfConnect ---isConnected = $isConnected")
d("$M_F${TAG}"," showBondedDevice name = ${device.name} ---address = ${device.address}----isMfConnect = $isMfConnect ---isConnected = $isConnected")
if (device.name == "MINI_KEYBOARD") { //并且连接
mContext?.let { SharedPrefsMgr.getInstance(it).putString(MfConstants.BLUETOOTH_NAME, device.name) }
UiThreadHandler.postDelayed({
invokeMoFangStatus(isConnected)
}, 1000)
}
mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean(MfConstants.BLUETOOTH_STATUS, isConnected) }
@@ -134,7 +136,7 @@ class MoFangManager private constructor() : IMoGoMoFangListener {
override fun onReceive(context: Context, intent: Intent) {
when (intent.action) {
BluetoothAdapter.ACTION_STATE_CHANGED -> { //中间状态
CallerLogger.d("$M_F${TAG}","bluetoothMonitorReceiver ACTION_STATE_CHANGED action = ${intent.action}")
d("$M_F${TAG}","bluetoothMonitorReceiver ACTION_STATE_CHANGED action = ${intent.action}")
}
BluetoothDevice.ACTION_ACL_CONNECTED -> { //蓝牙设备已连接
@@ -144,11 +146,11 @@ class MoFangManager private constructor() : IMoGoMoFangListener {
isMfConnect = true
mContext?.let { SharedPrefsMgr.getInstance(it).putBoolean(MfConstants.BLUETOOTH_STATUS, true) }
}
CallerLogger.d("$M_F${TAG}","bluetoothMonitorReceiver ACTION_ACL_CONNECTED ----- isMfConnect = $isMfConnect")
d("$M_F${TAG}","bluetoothMonitorReceiver ACTION_ACL_CONNECTED ----- isMfConnect = $isMfConnect")
}
BluetoothDevice.ACTION_ACL_DISCONNECTED -> { //蓝牙设备已断开 主动更新
CallerLogger.d("$M_F${TAG}","bluetoothMonitorReceiver ACTION_ACL_DISCONNECTED ----- isMfConnect = $isMfConnect ")
d("$M_F${TAG}","bluetoothMonitorReceiver ACTION_ACL_DISCONNECTED ----- isMfConnect = $isMfConnect ")
if (isMfConnect) {
invokeMoFangStatus(false)
isMfConnect = false

View File

@@ -9,10 +9,27 @@ import mogo.v2x.MogoV2X
*/
object CallerV2XListenerManager : CallerBase<IMoGoV2XListener>() {
private var eventCountTmp: Int = -1
private var constructTmp: MogoV2X.RSI_PB? = null
private var triangleTmp: MogoV2X.RSI_PB? = null
private var congestionTmp: MogoV2X.RSI_PB? = null
private var parkingViolationTmp: MogoV2X.RSM_PB? = null
override fun doSomeAfterAddListener(tag: String, listener: IMoGoV2XListener) {
if (eventCountTmp >= 0) {
listener.onV2nGlobalPathEvents(eventCountTmp, constructTmp, triangleTmp, congestionTmp, parkingViolationTmp)
}
}
/**
* 分发主车路径全局事件
*/
fun dispatchV2nGlobalPathEvents(eventCount: Int, construct: MogoV2X.RSI_PB?, triangle: MogoV2X.RSI_PB?, congestion: MogoV2X.RSI_PB?, parkingViolation: MogoV2X.RSM_PB?) {
eventCountTmp = eventCount
constructTmp = construct
triangleTmp = triangle
congestionTmp = congestion
parkingViolationTmp = parkingViolation
M_LISTENERS.forEach {
val listener = it.value
listener.onV2nGlobalPathEvents(eventCount, construct, triangle, congestion, parkingViolation)