[6.2.4][蘑方] 添加长按键B执行录包功能

This commit is contained in:
renwj
2023-12-04 12:05:41 +08:00
parent 264e68da17
commit 7d040d2ae0

View File

@@ -7,6 +7,7 @@ import com.mogo.commons.utils.MogoAnalyticUtils
import com.mogo.eagle.core.data.config.*
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
import com.mogo.eagle.core.function.call.autopilot.*
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager
import com.mogo.eagle.core.network.utils.GsonUtil
import com.mogo.eagle.core.utilcode.mogo.*
import com.zhjt.mogo.adas.data.bean.MogoReport.Code.Info.IMF
@@ -57,6 +58,7 @@ internal class MoFangCommandExecutor {
private const val MSG_WHAT_KEY_CODE_D = 0x06
private const val MSG_WHAT_KEY_CODE_E = 0x07
private const val MSG_WHAT_KEY_CODE_EL = 0x08
private const val MSG_WHAT_KEY_CODE_BL = 0x09
}
@Volatile
@@ -232,6 +234,27 @@ internal class MoFangCommandExecutor {
}
}
}
MSG_WHAT_KEY_CODE_BL -> {
try {
Log.d(TAG, "--- 长按录包 ---")
MoFangAnalyticUtils.track(EVENT_EXECUTE, mutableMapOf(
EVENT_EXECUTE_PARAMS_KEYCODE to (getKeycodeByWhat(msg.what) ?: ""),
EVENT_EXECUTE_PARAMS_TYPE to (getInputTypeByWhat(msg.what) ?: ""),
EVENT_EXECUTE_PARAMS_LON to location.longitude,
EVENT_EXECUTE_PARAMS_LAT to location.latitude,
EVENT_EXECUTE_PARAMS_SPEED to location.gnssSpeed,
EVENT_EXECUTE_PARAMS_ACC to location.acceleration,
EVENT_EXECUTE_PARAMS_HEADING to location.heading,
EVENT_EXECUTE_PARAMS_LINE_ID to CallerAutoPilotStatusListenerManager.getLineId(),
EVENT_EXECUTE_PARAMS_DOCKER_VERSION to (CallerAutoPilotStatusListenerManager.getDockerVersion() ?: "")
))
linkedLog?.record(mapOf("执行:${System.currentTimeMillis()}" to "$message, $msg"))
CallerDevaToolsManager.startRecordByMoFang()
} catch (t: Throwable) {
t.printStackTrace()
Log.e(TAG, "error: ${t.message}, msg-> $msg")
}
}
}
true
}
@@ -266,6 +289,9 @@ internal class MoFangCommandExecutor {
MSG_WHAT_KEY_CODE_E -> {
"单击键E->开启自驾$extra"
}
MSG_WHAT_KEY_CODE_BL -> {
"长按键B->录包$extra"
}
MSG_WHAT_KEY_CODE_EL -> {
"长按键E->鸣笛$extra"
}
@@ -276,7 +302,7 @@ internal class MoFangCommandExecutor {
private fun getKeycodeByWhat(what: Int): String? {
return when(what) {
MSG_WHAT_KEY_CODE_A, MSG_WHAT_KEY_CODE_AL -> KeyEvent.keyCodeToString(KeyEvent.KEYCODE_A)
MSG_WHAT_KEY_CODE_B -> KeyEvent.keyCodeToString(KeyEvent.KEYCODE_B)
MSG_WHAT_KEY_CODE_B, MSG_WHAT_KEY_CODE_BL -> KeyEvent.keyCodeToString(KeyEvent.KEYCODE_B)
MSG_WHAT_KEY_CODE_AB -> "${KeyEvent.keyCodeToString(KeyEvent.KEYCODE_A)},${KeyEvent.keyCodeToString(KeyEvent.KEYCODE_B)}"
MSG_WHAT_KEY_CODE_C -> KeyEvent.keyCodeToString(KeyEvent.KEYCODE_C)
MSG_WHAT_KEY_CODE_D -> KeyEvent.keyCodeToString(KeyEvent.KEYCODE_D)
@@ -294,7 +320,7 @@ internal class MoFangCommandExecutor {
MSG_WHAT_KEY_CODE_E -> {
"1"
}
MSG_WHAT_KEY_CODE_AL,MSG_WHAT_KEY_CODE_EL -> {
MSG_WHAT_KEY_CODE_AL, MSG_WHAT_KEY_CODE_BL, MSG_WHAT_KEY_CODE_EL -> {
"2"
}
MSG_WHAT_KEY_CODE_AB -> {
@@ -387,6 +413,15 @@ internal class MoFangCommandExecutor {
})
linkedLog?.record(mapOf("发送[EL]:${System.currentTimeMillis()}" to "${whatToString(MSG_WHAT_KEY_CODE_EL)}"))
}
if (keyCode == KeyEvent.KEYCODE_B) {
Log.d(TAG, "--- 长按键B --- 触发录包 ----")
handler.removeMessages(MSG_WHAT_KEY_CODE_BL)
handler.sendMessage(Message.obtain().also {
it.what = MSG_WHAT_KEY_CODE_BL
})
linkedLog?.record(mapOf("发送[BL]:${System.currentTimeMillis()}" to "${whatToString(MSG_WHAT_KEY_CODE_BL)}"))
}
}
fun handleCombineClick(vararg keyCodes: Int) {