From 28fd08eae2a5674dc0ca711b741417b8e11054b3 Mon Sep 17 00:00:00 2001 From: xinfengkun Date: Tue, 30 May 2023 16:48:15 +0800 Subject: [PATCH 1/2] =?UTF-8?q?[minibus320][adas]=20=E4=BF=AE=E5=A4=8DMAP?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E8=A7=A3=E6=9E=90=E5=BC=82=E5=B8=B8=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../autopilot/MoGoAutopilotControlProvider.kt | 5 +++-- .../core/utilcode/util/ParseVersionUtils.java | 13 +++++++++++-- .../src/main/proto/message_pad.proto | 2 +- .../zhidao/support/adas/high/AdasManager.java | 19 ++++++++++++++++--- .../ability/AutopilotAbilityManager.java | 4 ++-- 5 files changed, 33 insertions(+), 10 deletions(-) diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt index 339b5457a9..c350f49704 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt @@ -38,6 +38,7 @@ 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_ADAS_IMPL import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr +import com.mogo.eagle.core.utilcode.util.ParseVersionUtils import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler @@ -849,8 +850,8 @@ class MoGoAutopilotControlProvider : if(carConfigResp.dockVersion.isNotEmpty()){ if(carConfigResp.dockVersion.contains("taxi")){ //修改雨天模式开关默认状态为开启(仅针对taxi320及以上的版本)-sop 215 - val num = AdasManager.getInstance().parseVersion(carConfigResp.dockVersion) - if(num >= 320){ + val num = ParseVersionUtils.parseVersion(true,carConfigResp.dockVersion) + if(num >= 30200){ FunctionBuildConfig.isRainMode = true } } diff --git a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/ParseVersionUtils.java b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/ParseVersionUtils.java index b09b3a0ab8..88447b8145 100644 --- a/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/ParseVersionUtils.java +++ b/core/mogo-core-utils/src/main/java/com/mogo/eagle/core/utilcode/util/ParseVersionUtils.java @@ -3,6 +3,7 @@ package com.mogo.eagle.core.utilcode.util; import android.text.TextUtils; import android.util.Log; +import java.util.Locale; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -33,7 +34,11 @@ public class ParseVersionUtils { /** * 解析版本 格式 xxx.xxx.xxx(x的数量不固定) - * 如果用于比较,仅适用于非个位数非0的字符串,例如:"12.03.04" 解析出为120304可能无法正常对比 + * 仅用于版本比较,不能用于展示 + * 例如: + * "12.03.04" 解析结果:120304 + * "2.11.0" 解析结果:21100 + * "3.0.0" 解析结果:30000 * 目前已用于DockerVersion和MaserVersion的解析 * * @param isUseAll 是否使用全部截取数据 true:表示 12.34.56 截取之后 123456 false:表示12.34.56 截取之后 12 @@ -48,8 +53,12 @@ public class ParseVersionUtils { if (matcher.find()) { String group = matcher.group(); if (!TextUtils.isEmpty(group)) { + String format = "%02d"; if (isUseAll) { - group = group.replace(".", ""); + String[] temp = group.split("\\."); + group = String.format(Locale.getDefault(), format, Integer.parseInt(temp[0])); + group += String.format(Locale.getDefault(), format, Integer.parseInt(temp[1])); + group += String.format(Locale.getDefault(), format, Integer.parseInt(temp[2])); } else { group = group.split("\\.")[0]; } diff --git a/libraries/mogo-adas-data/src/main/proto/message_pad.proto b/libraries/mogo-adas-data/src/main/proto/message_pad.proto index 1e02521784..21bc4568a5 100644 --- a/libraries/mogo-adas-data/src/main/proto/message_pad.proto +++ b/libraries/mogo-adas-data/src/main/proto/message_pad.proto @@ -317,7 +317,7 @@ message CarConfigResp string carType = 9; //车辆类型 string subCarType = 10; //车辆子类型 reserved 11 to 100; - int32 mapVersion = 101;//dockVersion解析出版本号,解析失败为-1。例如:"MAP-taxi_RoboTaxi_df_2.8.0.3_20220928_test" 解析结果为:280 + int32 mapVersion = 101;//dockVersion解析出版本号,仅用于版本对比,解析失败为-1。例如:"MAP-taxi_RoboTaxi_df_2.8.0.3_20220928_test" 解析结果为:20800 bool isDF = 102;//车型是否是东风 bool isHQ = 103;//车型是否是红旗 bool isJinlv = 104;//车型是否是金旅小巴 diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java index 8732af2ce3..6b13e4396f 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java @@ -15,6 +15,7 @@ import com.zhidao.support.adas.high.common.ReceiveTimeoutManager; import java.util.HashSet; import java.util.List; +import java.util.Locale; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -1053,7 +1054,11 @@ public class AdasManager implements IAdasNetCommApi { /** * 解析版本 格式 xxx.xxx.xxx(x的数量不固定) - * 如果用于比较,仅适用于除个位数非0的字符串,例如:"12.03.04" 解析出为120304可能无法正常对比 + * 仅用于版本比较,不能用于展示 + * 例如: + * "12.03.04" 解析结果:120304 + * "2.11.0" 解析结果:21100 + * "3.0.0" 解析结果:30000 * 目前已用于DockerVersion和MaserVersion的解析 * * @param ver 版本字符串 例如:"MAP-taxi_RoboTaxi_df_2.8.0.3_20220928_test" 解析结果为:280 @@ -1065,7 +1070,11 @@ public class AdasManager implements IAdasNetCommApi { /** * 解析版本 格式 xxx.xxx.xxx(x的数量不固定) - * 如果用于比较,仅适用于非个位数非0的字符串,例如:"12.03.04" 解析出为120304可能无法正常对比 + * 仅用于版本比较,不能用于展示 + * 例如: + * "12.03.04" 解析结果:120304 + * "2.11.0" 解析结果:21100 + * "3.0.0" 解析结果:30000 * 目前已用于DockerVersion和MaserVersion的解析 * * @param isUseAll 是否使用全部截取数据 true:表示 12.34.56 截取之后 123456 false:表示12.34.56 截取之后 12 @@ -1080,8 +1089,12 @@ public class AdasManager implements IAdasNetCommApi { if (matcher.find()) { String group = matcher.group(); if (!TextUtils.isEmpty(group)) { + String format = "%02d"; if (isUseAll) { - group = group.replace(".", ""); + String[] temp = group.split("\\."); + group = String.format(Locale.getDefault(), format, Integer.parseInt(temp[0])); + group += String.format(Locale.getDefault(), format, Integer.parseInt(temp[1])); + group += String.format(Locale.getDefault(), format, Integer.parseInt(temp[2])); } else { group = group.split("\\.")[0]; } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbilityManager.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbilityManager.java index a7d316e434..f44c666eba 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbilityManager.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbilityManager.java @@ -138,7 +138,7 @@ public class AutopilotAbilityManager { } private void initAutopilotAbility() { - if (dockerVersion >= 250) { + if (dockerVersion >= 20500) { stop230(); if (autopilotAbility250 == null) { autopilotAbility250 = new AutopilotAbility250(); @@ -186,7 +186,7 @@ public class AutopilotAbilityManager { @Override public void run() { if (dockerVersion == -1 && AdasManager.getInstance().getIpcConnectionStatus() == Constants.IPC_CONNECTION_STATUS.CONNECTED) { - dockerVersion = 230; + dockerVersion = 20300; initAutopilotAbility(); } } From 8b4a7a2f449d4c0a3f83fe8575fde7c655028d2e Mon Sep 17 00:00:00 2001 From: xinfengkun Date: Tue, 30 May 2023 17:20:37 +0800 Subject: [PATCH 2/2] =?UTF-8?q?[minibus320][adas]=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E9=9A=9C=E7=A2=8D=E7=89=A9PB=EF=BC=8C=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E7=9B=B8=E5=AF=B9=E4=BA=8E=E8=87=AA=E8=BD=A6x=E8=BD=B4?= =?UTF-8?q?=E7=9A=84=E8=A7=92=E5=BA=A6=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- libraries/mogo-adas-data/src/main/proto/message_pad.proto | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libraries/mogo-adas-data/src/main/proto/message_pad.proto b/libraries/mogo-adas-data/src/main/proto/message_pad.proto index 21bc4568a5..c72d33a01e 100644 --- a/libraries/mogo-adas-data/src/main/proto/message_pad.proto +++ b/libraries/mogo-adas-data/src/main/proto/message_pad.proto @@ -141,7 +141,8 @@ message TrackedObject repeated Location polygon = 15; geometry.Point center = 16; AdditionalAttribute add_attribute = 17; // 事件类型 - reserved 18 to 100; + double angle = 18; //相对于自车x轴的角度,左正右负 + reserved 19 to 100; string strUuid = 101;//String类型车辆ID }