From 10e2a8531f2b98e4e82f54390e3ceccfb2cfaca5 Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Mon, 27 Feb 2023 15:20:08 +0800 Subject: [PATCH 01/17] =?UTF-8?q?[Opt3.0]=E5=85=BC=E5=AE=B9=E4=BB=A5?= =?UTF-8?q?=E5=89=8D=E7=9A=84=E5=8D=95=E8=AF=AD=E8=A8=80=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/mogo/commons/voice/AIAssist.java | 2 +- .../src/main/java/com/mogo/tts/iflytek/IFlyTekTts.kt | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java index 39ed751afa..c721510100 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java +++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java @@ -104,7 +104,7 @@ public class AIAssist { */ public void speakTTSVoice(String text) { if (mTTS != null) { - mTTS.speakTTSVoice(text); + mTTS.speakTTSVoiceWithLevel(text, LEVEL0); } } diff --git a/tts/tts-iflytek/src/main/java/com/mogo/tts/iflytek/IFlyTekTts.kt b/tts/tts-iflytek/src/main/java/com/mogo/tts/iflytek/IFlyTekTts.kt index 56f891b3c1..f0752af30c 100644 --- a/tts/tts-iflytek/src/main/java/com/mogo/tts/iflytek/IFlyTekTts.kt +++ b/tts/tts-iflytek/src/main/java/com/mogo/tts/iflytek/IFlyTekTts.kt @@ -86,9 +86,12 @@ class IFlyTekTts : IMogoTTS, InitListener { } override fun speakTTSVoiceWithLevel(tts: String?, level: Int) { + speakTTSVoiceWithLevel(tts, level, null) } override fun speakTTSVoiceWithLevel(tts: String?, level: Int, callBack: IMogoTTSCallback?) { + if (tts.isNullOrEmpty()) return + speakMultiLangTTSWithLevel(MultiLangTtsEntity(listOf(LangTtsEntity(tts, LanguageType.CHINESE))), level, callBack) } override fun speakMultiLangTTSWithLevel( From 93addfeeab508949a4da71aac0ae95e98c89e24a Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Tue, 28 Feb 2023 10:34:22 +0800 Subject: [PATCH 02/17] =?UTF-8?q?[Opt3.0]=E8=87=AA=E5=8A=A8=E5=88=87?= =?UTF-8?q?=E6=8D=A2Tts=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/mogo/commons/voice/AIAssist.java | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java index c721510100..534f80f4d6 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java +++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java @@ -53,11 +53,24 @@ public class AIAssist { private AIAssist(Context context) { try { // 暂时换成反射,解决死锁问题 - // TODO:("支持切换思必驰和科大讯飞") - Class clazz = Class.forName("com.mogo.tts.pad.PadTTS"); -// Class clazz = Class.forName("com.mogo.tts.iflytek.IFlyTekTts"); - mTTS = (IMogoTTS) clazz.getConstructor().newInstance(); - mTTS.init(context); + Class clazz1 = null; + Class clazz2 = null; + try { + clazz1 = Class.forName("com.mogo.tts.pad.PadTTS"); + } catch (Exception ignored) {} + + try { + clazz2 = Class.forName("com.mogo.tts.iflytek.IFlyTekTts"); + } catch (Exception ignored) {} + + if (clazz1 != null) { + mTTS = (IMogoTTS) clazz1.getConstructor().newInstance(); + } else if (clazz2 != null) { + mTTS = (IMogoTTS) clazz2.getConstructor().newInstance(); + } + if (mTTS != null) { + mTTS.init(context); + } // mTTS = (IMogoTTS) ARouter.getInstance().build(MogoTTSConstants.API_PATH).navigation(context.getApplicationContext()); } catch (Exception e) { e.printStackTrace(); From 404150e24af695bd561e260613a295b78aa30d24 Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Tue, 28 Feb 2023 10:35:20 +0800 Subject: [PATCH 03/17] =?UTF-8?q?[Opt3.0]=E8=A7=A3=E5=86=B3=E5=8F=B8?= =?UTF-8?q?=E4=B9=98=E5=B1=8F=E9=87=8D=E8=BF=9E=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../autopilot/MoGoAutopilotControlProvider.kt | 42 ++++++++++--------- gradle.properties | 18 ++++---- 2 files changed, 31 insertions(+), 29 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 f3d1e06382..868b00b3fd 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 @@ -748,27 +748,29 @@ class MoGoAutopilotControlProvider : } override fun connectSpecifiedServer(ip: String) { - NSDNettyManager.getInstance().connectSpecifiedServer( - ip, - NettyTcpServer.SERVER_PORT, - MoGoAiCloudClientConfig.getInstance().sn, - object : NettyClientListener { - override fun onMessageResponseClient( - msg: MogoProtocolMsg?, - sign: String?, - channel: Channel - ) { - msgHandler.handleMsgFromServer(msg, channel) - } + ThreadUtils.getIoPool().submit { + NSDNettyManager.getInstance().connectSpecifiedServer( + ip, + NettyTcpServer.SERVER_PORT, + MoGoAiCloudClientConfig.getInstance().sn, + object : NettyClientListener { + override fun onMessageResponseClient( + msg: MogoProtocolMsg?, + sign: String?, + channel: Channel + ) { + msgHandler.handleMsgFromServer(msg, channel) + } - override fun onClientStatusConnectChanged( - statusCode: Int, - sign: String?, - channel: Channel - ) { - msgHandler.handleClientConnStatus(statusCode, sign, channel) - } - }) + override fun onClientStatusConnectChanged( + statusCode: Int, + sign: String?, + channel: Channel + ) { + msgHandler.handleClientConnStatus(statusCode, sign, channel) + } + }) + } } /** diff --git a/gradle.properties b/gradle.properties index 621da04292..a561aea8b3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -66,23 +66,23 @@ SERVICE_BIZ_VERSION=1.2.4 LOGLIB_VERSION=1.5.11 ######## MogoAiCloudSDK Version ######## # 网络请求LOGLIB_VERSION -MOGO_NETWORK_VERSION=1.4.4.8 +MOGO_NETWORK_VERSION=1.4.4.9 # 鉴权 -MOGO_PASSPORT_VERSION=1.4.4.8 +MOGO_PASSPORT_VERSION=1.4.4.9 # 常链接 -MOGO_SOCKET_VERSION=1.4.4.8 +MOGO_SOCKET_VERSION=1.4.4.9 # 数据采集 -MOGO_REALTIME_VERSION=1.4.4.8 +MOGO_REALTIME_VERSION=1.4.4.9 # 探路,道路事件发布,获取 -MOGO_TANLU_VERSION=1.4.4.8 +MOGO_TANLU_VERSION=1.4.4.9 # 直播推流 -MOGO_LIVE_VERSION=1.4.4.8 +MOGO_LIVE_VERSION=1.4.4.9 # 直播拉流 -MOGO_TRAFFICLIVE_VERSION=1.4.4.8 +MOGO_TRAFFICLIVE_VERSION=1.4.4.9 # 定位服务 -MOGO_LOCATION_VERSION=1.4.4.8 +MOGO_LOCATION_VERSION=1.4.4.9 # 远程通讯模块 -MOGO_TELEMATIC_VERSION=1.4.4.8 +MOGO_TELEMATIC_VERSION=1.4.4.9 ######## MogoAiCloudSDK Version ######## # 自研地图 MAP_SDK_VERSION=2.10.0.9 From 74d616c092e5cd4c01de9688ddd3fbf909630855 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 28 Feb 2023 10:42:58 +0800 Subject: [PATCH 04/17] [2.13.0-arch-opt] add trace of httpdns and fix small map draw line --- .../core/function/smp/view/SmallMapView.kt | 2 +- .../startup/stageone/HttpDnsStartUp.kt | 20 +++++++++++++++++++ .../core/data/deva/chain/ChainConstant.kt | 2 ++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/view/SmallMapView.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/view/SmallMapView.kt index 3578eb3ce4..5c3d4a6c13 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/view/SmallMapView.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/view/SmallMapView.kt @@ -101,7 +101,7 @@ class SmallMapView @JvmOverloads constructor( fun drawablePolyline() { clearPolyline() if (mAMap != null) { - if (mCoordinatesLatLng.size > 2) { + if (mCoordinatesLatLng.size >= 2) { // 设置开始结束Marker位置 mStartMarker!!.position = mCoordinatesLatLng[0] mEndMarker!!.position = mCoordinatesLatLng[mCoordinatesLatLng.size - 1] diff --git a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt index fc6d116c92..80c1c7fe10 100644 --- a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt +++ b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt @@ -20,6 +20,8 @@ import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_CLOUD_CONNECT_FAIL import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_CLOUD_CONNECT_LOST import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_CLOUD_CONNECT_SUCCESS +import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_CLOUD_PASSPORT_ERROR +import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_CLOUD_PASSPORT_TOKEN import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_CLOUD_RECONNECT import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_CLOUD import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_LOG_CONNECT_STATUS @@ -164,6 +166,15 @@ class HttpDnsStartUp : AndroidStartup() { // 初始化SDK,可以设置状态回调来监听 MoGoAiCloudClient.getInstance().init(context, clientConfig).addTokenCallbacks( object : IMoGoTokenCallback { + + @ChainLog( + linkChainLog = CHAIN_LINK_LOG_CONNECT_STATUS, + linkCode = CHAIN_LINK_CLOUD, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_CLOUD_PASSPORT_TOKEN, + paramIndexes = [0, 1], + clientPkFileName = "sn" + ) override fun onTokenGot(token: String, sn: String) { clientConfig.token = token // 由于存在token过期问题,在更新后会回调至此处,增加二次判定 @@ -179,6 +190,14 @@ class HttpDnsStartUp : AndroidStartup() { } } + @ChainLog( + linkChainLog = CHAIN_LINK_LOG_CONNECT_STATUS, + linkCode = CHAIN_LINK_CLOUD, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_CLOUD_PASSPORT_ERROR, + paramIndexes = [1], + clientPkFileName = "sn" + ) override fun onError(code: Int, msg: String) { CallerLogger.d( "$M_MAIN$TAG", @@ -333,4 +352,5 @@ class HttpDnsStartUp : AndroidStartup() { HttpDnsSimpleLocation("010", 1.0, 1.0) } } + } \ No newline at end of file diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/chain/ChainConstant.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/chain/ChainConstant.kt index cf1fd1655e..0d44eb84ee 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/chain/ChainConstant.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/deva/chain/ChainConstant.kt @@ -60,6 +60,8 @@ class ChainConstant { const val CHAIN_ALIAS_CODE_APP_INFO_CONFIG_UPDATE = "CHAIN_ALIAS_CODE_APP_INFO_CONFIG_UPDATE" const val CHAIN_ALIAS_CODE_FUNC_CONFIG_CHANGED = "CHAIN_ALIAS_CODE_FUNC_CONFIG_CHANGED" + const val CHAIN_ALIAS_CODE_CLOUD_PASSPORT_TOKEN = "CHAIN_ALIAS_CODE_CLOUD_PASSPORT_TOKEN" + const val CHAIN_ALIAS_CODE_CLOUD_PASSPORT_ERROR = "CHAIN_ALIAS_CODE_CLOUD_PASSPORT_ERROR" const val CHAIN_ALIAS_CODE_CLOUD_CONNECT_FAIL = "CHAIN_ALIAS_CODE_CLOUD_CONNECT_FAIL" const val CHAIN_ALIAS_CODE_CLOUD_CONNECT_SUCCESS = "CHAIN_ALIAS_CODE_CLOUD_CONNECT_SUCCESS" const val CHAIN_ALIAS_CODE_CLOUD_RECONNECT = "CHAIN_ALIAS_CODE_CLOUD_RECONNECT" From 31cfcbe406e544a226f94b997f2978989f547b0a Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Tue, 28 Feb 2023 16:22:14 +0800 Subject: [PATCH 05/17] =?UTF-8?q?[dev=5Farch=5Fopt=5F3.0]=20=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=B8=85=E6=89=AB=E8=BD=A6=E6=A8=A1=E5=9E=8B=E5=A4=84?= =?UTF-8?q?=E7=90=86=EF=BC=8C=E4=BF=AE=E6=94=B9=E8=B0=83=E8=AF=95=E9=9D=A2?= =?UTF-8?q?=E6=9D=BFobu=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../binding/BindingCarManager.kt | 6 +- .../binding/BindingCarNetWorkManager.kt | 16 ++++- .../hmi/ui/setting/DebugSettingView.kt | 50 +++++++------ .../main/res/layout/view_debug_setting.xml | 71 +++++++------------ 4 files changed, 68 insertions(+), 75 deletions(-) diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt index 1c032cbf7b..a1cbd52ce6 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarManager.kt @@ -172,8 +172,10 @@ class BindingCarManager : IMoGoAutopilotCarConfigListener { * obu的升级,只需要司机屏连接 */ fun queryObuUpgrade(obuVersionName: String) { - CallerLogger.d("${SceneConstant.M_OBU}${MogoObuConst.TAG_UPGRADE_OBU}","queryObuUpgrade isConnected = ${CallerObuApiManager.isConnected()} --- mAddress = $mAddress") - ObuUpgradeAppNetWorkManager.getInstance().getObuUpgradeInfo(mContext, mAddress, obuVersionName) + if (screenType == 1) { + CallerLogger.d("${SceneConstant.M_OBU}${MogoObuConst.TAG_UPGRADE_OBU}","queryObuUpgrade isConnected = ${CallerObuApiManager.isConnected()} --- mAddress = $mAddress") + ObuUpgradeAppNetWorkManager.getInstance().getObuUpgradeInfo(mContext, mAddress, obuVersionName) + } } } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarNetWorkManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarNetWorkManager.kt index ba157a1abd..36443407ea 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarNetWorkManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/binding/BindingCarNetWorkManager.kt @@ -163,18 +163,26 @@ class BindingCarNetWorkManager private constructor() { } d(SceneConstant.M_BINDING + TAG, "updateCarVrIconRes : $brandId") when (brandId) { - "1" -> { + "1" -> { //东风 CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.chuzuche) HdMapBuildConfig.currentCarVrIconRes = R.raw.chuzuche } - "2" -> { + "2" -> { //红旗 CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.hq_h9) HdMapBuildConfig.currentCarVrIconRes = R.raw.hq_h9 } - "3" -> { + "3" -> { //金旅 CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.xiaobache) HdMapBuildConfig.currentCarVrIconRes = R.raw.xiaobache } + "4" -> { //开沃 + CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.xiaobache) + HdMapBuildConfig.currentCarVrIconRes = R.raw.xiaobache + } + "5" -> { //福田 + CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.huanwei) + HdMapBuildConfig.currentCarVrIconRes = R.raw.huanwei + } else -> { CallerMapUIServiceManager.getMapUIController()?.changeCurrentIcon(R.raw.chuzuche) HdMapBuildConfig.currentCarVrIconRes = R.raw.chuzuche @@ -186,6 +194,8 @@ class BindingCarNetWorkManager private constructor() { return when (HdMapBuildConfig.currentCarVrIconRes) { R.raw.chuzuche -> "1" R.raw.xiaobache -> "3" + R.raw.xiaobache -> "4" + R.raw.huanwei -> "5" else -> "1" } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt index c3245213b3..7af658d49d 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt @@ -400,14 +400,13 @@ internal class DebugSettingView @JvmOverloads constructor( //展示OBU控制中心 obuControllerLayout.visibility = View.VISIBLE tbVehicleStateController.isChecked = true - //展示HMI控制中心 - hmiObuLayout.visibility = View.VISIBLE + } else { buttonView.setCompoundDrawables(null, null, iconRight, null) //隐藏OBU控制中心 obuControllerLayout.visibility = View.GONE tbVehicleStateController.isChecked = false - hmiObuLayout.visibility = View.GONE + } } @@ -1049,29 +1048,6 @@ internal class DebugSettingView @JvmOverloads constructor( HmiBuildConfig.isShowSnBindingView = !isChecked } - /** - * obu弱势交通控制 - */ - tbObuWeaknessTraffic.setOnCheckedChangeListener { _, isChecked -> - // 默认开启 - HmiBuildConfig.isShowObuWeaknessTrafficView = !isChecked - } - - /** - * 云端弱势交通控制 - */ - tbCloudWeaknessTraffic.setOnCheckedChangeListener { _, isChecked -> - // 默认关闭 - HmiBuildConfig.isShowObuWeaknessTrafficView = isChecked - } - - /** - * 限速数据,优先使用obu,默认打开 - */ - tbRoadLimitSpeed.setOnCheckedChangeListener { _, isChecked -> - HmiBuildConfig.isShowObuLimitSpeedView = isChecked - } - /** * 实时加速度面板控制 */ @@ -1647,6 +1623,28 @@ internal class DebugSettingView @JvmOverloads constructor( tbIsDemoMode.text = "开启美化模式" } + //obu TODO 后面会添加很多os那边需要显示的内容 + obuVersionNameTv.text = Html.fromHtml( + "OBU版本号:${ + if (AppConfigInfo.isConnectObu) { + " 1.0" + } else { + "异常" + } + }" + ) + + obuConnectStatusTv.text = Html.fromHtml( + "OBU连接状态:${ + if (AppConfigInfo.isConnectObu) { + "正常" + } else { + "异常" + } + }" + ) + + } /** diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml index e8ac4d98e0..971434f8bc 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml @@ -1077,64 +1077,47 @@ android:id="@+id/tvObuInfo" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_margin="@dimen/dp_10" + android:layout_margin="@dimen/dp_5" android:minLines="4" android:text="OBU配置信息" android:textColor="#000" android:textSize="@dimen/dp_24" app:layout_constraintTop_toBottomOf="@id/obuDivider" /> - - - - + - + - + + + + + - From c94043344e5579dc6ad80d8bd1a1cb0e087f9eee Mon Sep 17 00:00:00 2001 From: xuxinchao Date: Tue, 28 Feb 2023 17:12:38 +0800 Subject: [PATCH 06/17] =?UTF-8?q?[dev=5Farch=5Fopt=5F3.0]=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=8F=B7=E6=98=BE=E7=A4=BAView=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E4=B8=A4=E8=A1=8C=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../function/hmi/ui/widget/VersionNameView.kt | 21 +++++-------------- .../src/main/res/layout/view_version_name.xml | 4 +++- 2 files changed, 8 insertions(+), 17 deletions(-) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/VersionNameView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/VersionNameView.kt index cbfbab04bf..bc404b047d 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/VersionNameView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/VersionNameView.kt @@ -6,13 +6,11 @@ import android.util.AttributeSet import android.view.LayoutInflater import android.widget.LinearLayout import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo -import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager import com.mogo.eagle.core.function.hmi.R import com.mogo.eagle.core.function.main.AppListActivity -import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.util.ActivityUtils import com.mogo.eagle.core.utilcode.util.AppUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler @@ -41,11 +39,8 @@ class VersionNameView @JvmOverloads constructor( } private fun initView(){ - //版本水印只在司机端展示 - if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)){ - showCurrentPadVersion() - showCurrentMapVersion() - } + showCurrentPadVersion() + showCurrentMapVersion() // 调试入口,应对M1、M2没有安装Launcher的情况 setOnLongClickListener { @@ -72,7 +67,7 @@ class VersionNameView @JvmOverloads constructor( UiThreadHandler.post { tvMapVersionName?.let { if (!dockerVersion.isNullOrEmpty()) { - it.text = " ; MAP:${dockerVersion}" + it.text = "MAP:${dockerVersion}" } } } @@ -80,18 +75,12 @@ class VersionNameView @JvmOverloads constructor( override fun onAttachedToWindow() { super.onAttachedToWindow() - //版本水印只在司机端展示 - if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)){ - CallerAutoPilotStatusListenerManager.addListener(TAG, this) - } + CallerAutoPilotStatusListenerManager.addListener(TAG, this) } override fun onDetachedFromWindow() { super.onDetachedFromWindow() - //版本水印只在司机端展示 - if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)){ - CallerAutoPilotStatusListenerManager.removeListener(TAG) - } + CallerAutoPilotStatusListenerManager.removeListener(TAG) } override fun onAutopilotStatusResponse(autoPilotStatusInfo: AutopilotStatusInfo) { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_version_name.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_version_name.xml index 30319d1e89..8109c27c76 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_version_name.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_version_name.xml @@ -2,7 +2,7 @@ + android:orientation="vertical"> \ No newline at end of file From aaf1cb92119bd3012dcf0cda91d88f8e54c35cbf Mon Sep 17 00:00:00 2001 From: xinfengkun Date: Mon, 27 Feb 2023 11:36:04 +0800 Subject: [PATCH 07/17] =?UTF-8?q?[=E5=B7=A5=E6=8E=A7=E6=9C=BA=E7=9B=91?= =?UTF-8?q?=E6=8E=A7]=20=E6=B3=A8=E9=87=8A=E6=8E=89=E5=8F=B8=E6=9C=BA?= =?UTF-8?q?=E7=AB=AF=E6=9C=8D=E5=8A=A1=E5=92=8C=E4=B9=98=E5=AE=A2=E7=AB=AF?= =?UTF-8?q?=E8=BF=9E=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app_ipc_monitoring/build.gradle | 2 +- .../java/com/zhidao/adas/client/ui/MainActivity.java | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/app_ipc_monitoring/build.gradle b/app_ipc_monitoring/build.gradle index 516cadba31..fd686e2b9a 100644 --- a/app_ipc_monitoring/build.gradle +++ b/app_ipc_monitoring/build.gradle @@ -94,6 +94,6 @@ dependencies { // implementation project(':core:mogo-core-utils') implementation 'org.greenrobot:eventbus:3.2.0' implementation 'com.android.support:multidex:1.0.3' - implementation 'com.mogo.cloud:telematic:1.3.59' +// implementation 'com.mogo.cloud:telematic:1.3.59'//注释掉司机端 乘客端 implementation 'com.jcraft:jsch:0.1.55' } diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java index 08ae38336b..5a13b4a000 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java @@ -1,7 +1,5 @@ package com.zhidao.adas.client.ui; -import static com.mogo.telematic.MogoProtocolMsg.NORMAL_DATA; - import android.content.Context; import android.content.DialogInterface; import android.content.Intent; @@ -1084,6 +1082,7 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas if (BuildConfig.IS_CLIENT) { /*—————————————作为乘客端———————————*/ options = new AdasOptions.Builder().setClient(true).build(); + /*乘客端启动 注释掉 NSDNettyManager.getInstance().searchAndConnectServer(this, "1234", new NettyClientListener() { @Override @@ -1103,7 +1102,7 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas getHandler().sendEmptyMessage(WHAT_DRIVER_IP); onUpdateConnectStateView(); } - }); + });*/ } else { /*—————————————作为司机端———————————*/ int mode = Constants.getIpcConnectionMode(this); @@ -1126,6 +1125,7 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas break; } + /*司机端启动 注释掉 NSDNettyManager.getInstance().startNSDNettyServerWithSN(this, new NettyServerListener() { @Override public void onMessageResponseServer(MogoProtocolMsg msg, Channel channel) { @@ -1152,10 +1152,11 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas public void onChannelDisConnect(Channel channel) { Log.i(TAG, "onChannelDisConnect channel=" + channel.id()); } - }, "1234567"); + }, "1234567");*/ } AdasManager.getInstance().create(options, this); AdasManager.getInstance().setOnAdasListener(this); + /*两端数据转发 注释掉 AdasManager.getInstance().setOnMultiDeviceListener(new OnMultiDeviceListener() { @Override public void onForwardingDriverIPCMessage(byte[] bytes) { @@ -1173,7 +1174,7 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas .sendMogoProtocolMsgToServer(new MogoProtocolMsg(NORMAL_DATA, bytes.length, bytes), null); Log.i(TAG, "乘客屏发送数据=" + ByteUtil.byteArrToHex(bytes)); } - }); + });*/ } From 601b95772ff27c1c637c8e108e25c717a0819625 Mon Sep 17 00:00:00 2001 From: xinfengkun Date: Mon, 27 Feb 2023 11:41:44 +0800 Subject: [PATCH 08/17] =?UTF-8?q?[=E5=B7=A5=E6=8E=A7=E6=9C=BA=E7=9B=91?= =?UTF-8?q?=E6=8E=A7]=20=E6=B3=A8=E9=87=8A=E6=8E=89=E5=8F=B8=E6=9C=BA?= =?UTF-8?q?=E7=AB=AF=E6=9C=8D=E5=8A=A1=E5=92=8C=E4=B9=98=E5=AE=A2=E7=AB=AF?= =?UTF-8?q?=E8=BF=9E=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/zhidao/adas/client/ui/MainActivity.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java index 5a13b4a000..d48fec82ef 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java @@ -1588,7 +1588,7 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas break; case WHAT_DRIVER_IP: ipcIp.setVisibility(View.VISIBLE); - ipcIp.setText("司机IP:" + NSDNettyManager.getInstance().getConnServerIp()); +// ipcIp.setText("司机IP:" + NSDNettyManager.getInstance().getConnServerIp()); break; case WHAT_IPC_CONNECT_STATE: if (floatWindow != null) { From 9216aa99f4e2476dba6cf85c0ba0949bb695a4de Mon Sep 17 00:00:00 2001 From: xinfengkun Date: Mon, 27 Feb 2023 17:40:22 +0800 Subject: [PATCH 09/17] =?UTF-8?q?[opt3.0][mogo-adas]=E4=BF=AE=E6=94=B9m1?= =?UTF-8?q?=E4=B8=8D=E8=83=BD=E5=90=AF=E5=8A=A8=E8=87=AA=E5=8A=A8=E9=A9=BE?= =?UTF-8?q?=E9=A9=B6=E7=9A=84=E6=A1=A3=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/README.md | 12 + app/productFlavors/fMultiDisplayOchBus.gradle | 3 + .../fMultiDisplayOchTaxi.gradle | 3 + app/productFlavors/fPadLenovo.gradle | 3 + app/productFlavors/fPadLenovoOchBus.gradle | 3 + .../fPadLenovoOchBusPassenger.gradle | 3 + .../fPadLenovoOchSweeper.gradle | 3 + app/productFlavors/fPadLenovoOchTaxi.gradle | 3 + .../fPadLenovoOchTaxiPassenger.gradle | 3 + .../mogo/launcher/startup/ConfigStartUp.kt | 2 + app_ipc_monitoring/build.gradle | 6 + .../main/java/com/zhidao/adas/client/App.java | 5 + .../zhidao/adas/client/DataDistribution.java | 454 +++++++++--------- .../adas/client/bean/ArrivalNotification.java | 23 - .../adas/client/bean/AutopilotState.java | 24 - .../adas/client/bean/BagManagerCmd.java | 24 - .../zhidao/adas/client/bean/BasicInfoReq.java | 23 - .../adas/client/bean/CarConfigResp.java | 23 - .../adas/client/bean/ChassisStates.java | 24 - .../adas/client/bean/FSMFunctionStates.java | 24 - .../adas/client/bean/GlobalPathResp.java | 23 - .../com/zhidao/adas/client/bean/GnssInfo.java | 24 - .../adas/client/bean/MogoReportMessage.java | 25 - .../com/zhidao/adas/client/bean/ObuMap.java | 3 +- .../com/zhidao/adas/client/bean/ObuRsi.java | 3 +- .../com/zhidao/adas/client/bean/ObuRsm.java | 3 +- .../com/zhidao/adas/client/bean/ObuSpat.java | 3 +- .../adas/client/bean/ObuWarningData.java | 24 - .../client/bean/PerceptionTrafficLight.java | 3 +- .../client/bean/PlanningDecisionState.java | 23 - .../adas/client/bean/PlanningObjects.java | 23 - .../bean/PredictionObstacleTrajectory.java | 24 - .../zhidao/adas/client/bean/ReceiveData.java | 25 + .../adas/client/bean/RecordDataConfig.java | 22 - .../zhidao/adas/client/bean/RecordPanel.java | 24 - .../client/bean/RoboSweeperTaskIndex.java | 24 - .../zhidao/adas/client/bean/StatusInfo.java | 24 - .../adas/client/bean/TrackedObjects.java | 21 - .../zhidao/adas/client/bean/Trajectory.java | 21 - .../zhidao/adas/client/bean/VehicleState.java | 22 - .../com/zhidao/adas/client/bean/Warn.java | 21 - .../zhidao/adas/client/ui/MainActivity.java | 81 ++-- .../adas/client/ui/VersionFragment.java | 94 +++- .../src/main/res/values/colors.xml | 4 +- .../autopilot/MoGoAutopilotControlProvider.kt | 6 +- .../core/data/config/FunctionBuildConfig.kt | 7 + .../zhidao/support/adas/high/AdasOptions.java | 17 +- .../ability/AutopilotAbility230.java | 44 +- .../ability/AutopilotAbility250.java | 40 +- .../ability/AutopilotAbilityManager.java | 81 +--- 50 files changed, 458 insertions(+), 969 deletions(-) delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ArrivalNotification.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/AutopilotState.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/BagManagerCmd.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/BasicInfoReq.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/CarConfigResp.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ChassisStates.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/FSMFunctionStates.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/GlobalPathResp.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/GnssInfo.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/MogoReportMessage.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuWarningData.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PlanningDecisionState.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PlanningObjects.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PredictionObstacleTrajectory.java create mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ReceiveData.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RecordDataConfig.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RecordPanel.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RoboSweeperTaskIndex.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/StatusInfo.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/TrackedObjects.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/Trajectory.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/VehicleState.java delete mode 100644 app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/Warn.java diff --git a/app/README.md b/app/README.md index a74139426c..71338949e3 100644 --- a/app/README.md +++ b/app/README.md @@ -38,3 +38,15 @@ 3. demo: 演示环境(大部分时候都是测试环境) ## 区分 flavor 功能引入 + + + +## 不能启动自动驾驶的档位 +| 车型 | 配置所在文件 | 档位 | 配置 | +|:-|:-|:-|:-| +| 东风、红旗 | fOchTaxi.gradle、fOchTaxiPassenger.gradle | P、R | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' | +| 金旅小巴 | fOchBus.gradle、fOchBusPassenger.gradle、fOchShuttle.gradle、fOchShuttlePassenger.gradle | N、R | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' | +| M1 | fOchBusPassengerM1.gradle | 不限制档位 | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' | +| M2 | fOchBusPassengerM2.gradle | N、P、R | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' | +| 清扫车 | fOchSweeper.gradle | N | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);}}' | +| 开沃 | 暂无 | 不限制档位 | buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' | diff --git a/app/productFlavors/fMultiDisplayOchBus.gradle b/app/productFlavors/fMultiDisplayOchBus.gradle index 49cf57f8f8..43fff66de1 100644 --- a/app/productFlavors/fMultiDisplayOchBus.gradle +++ b/app/productFlavors/fMultiDisplayOchBus.gradle @@ -41,6 +41,9 @@ project.android.productFlavors { // 构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' + + //不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' } } \ No newline at end of file diff --git a/app/productFlavors/fMultiDisplayOchTaxi.gradle b/app/productFlavors/fMultiDisplayOchTaxi.gradle index a04d284d67..7c95db8fd3 100644 --- a/app/productFlavors/fMultiDisplayOchTaxi.gradle +++ b/app/productFlavors/fMultiDisplayOchTaxi.gradle @@ -46,6 +46,9 @@ project.android.productFlavors { // 构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' + + //不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' } } \ No newline at end of file diff --git a/app/productFlavors/fPadLenovo.gradle b/app/productFlavors/fPadLenovo.gradle index b33dba6460..245ff86dca 100644 --- a/app/productFlavors/fPadLenovo.gradle +++ b/app/productFlavors/fPadLenovo.gradle @@ -43,5 +43,8 @@ project.android.productFlavors { // 构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + + //不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null' } } \ No newline at end of file diff --git a/app/productFlavors/fPadLenovoOchBus.gradle b/app/productFlavors/fPadLenovoOchBus.gradle index e671513ffa..f7338b4090 100644 --- a/app/productFlavors/fPadLenovoOchBus.gradle +++ b/app/productFlavors/fPadLenovoOchBus.gradle @@ -46,5 +46,8 @@ project.android.productFlavors { // 构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + + //Bus不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' } } \ No newline at end of file diff --git a/app/productFlavors/fPadLenovoOchBusPassenger.gradle b/app/productFlavors/fPadLenovoOchBusPassenger.gradle index 508ef2da67..aa50f49580 100644 --- a/app/productFlavors/fPadLenovoOchBusPassenger.gradle +++ b/app/productFlavors/fPadLenovoOchBusPassenger.gradle @@ -44,5 +44,8 @@ project.android.productFlavors { // 构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' + + //Bus不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' } } \ No newline at end of file diff --git a/app/productFlavors/fPadLenovoOchSweeper.gradle b/app/productFlavors/fPadLenovoOchSweeper.gradle index 0afcc6abaa..8361d529f8 100644 --- a/app/productFlavors/fPadLenovoOchSweeper.gradle +++ b/app/productFlavors/fPadLenovoOchSweeper.gradle @@ -46,5 +46,8 @@ project.android.productFlavors { // 构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + + //清扫车不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);}}' } } \ No newline at end of file diff --git a/app/productFlavors/fPadLenovoOchTaxi.gradle b/app/productFlavors/fPadLenovoOchTaxi.gradle index c9f2a230f2..ebeac659c3 100644 --- a/app/productFlavors/fPadLenovoOchTaxi.gradle +++ b/app/productFlavors/fPadLenovoOchTaxi.gradle @@ -47,6 +47,9 @@ project.android.productFlavors { // 构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'false' + + //Taxi不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' } } \ No newline at end of file diff --git a/app/productFlavors/fPadLenovoOchTaxiPassenger.gradle b/app/productFlavors/fPadLenovoOchTaxiPassenger.gradle index 36592bccb0..5c37382209 100644 --- a/app/productFlavors/fPadLenovoOchTaxiPassenger.gradle +++ b/app/productFlavors/fPadLenovoOchTaxiPassenger.gradle @@ -46,6 +46,9 @@ project.android.productFlavors { // 构建 是否支持多屏异显异交互 buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true' + + //Taxi不能启动自驾的档位 + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' } } \ No newline at end of file diff --git a/app/src/main/java/com/mogo/launcher/startup/ConfigStartUp.kt b/app/src/main/java/com/mogo/launcher/startup/ConfigStartUp.kt index a149317547..303b93af5c 100644 --- a/app/src/main/java/com/mogo/launcher/startup/ConfigStartUp.kt +++ b/app/src/main/java/com/mogo/launcher/startup/ConfigStartUp.kt @@ -39,6 +39,8 @@ object ConfigStartUp { FunctionBuildConfig.appIdentityMode = BuildConfig.APP_IDENTITY_MODE // 各个module需要的url FunctionBuildConfig.urlJson = GsonUtils.fromJson(BuildConfig.URLs, UrlConfig::class.java) + //不能启动自动驾驶的档位 + FunctionBuildConfig.unableLaunchAutopilotGear = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR // // 这里影响当前Activity的身份信息,多进程先保持与原来一样,主进程为司机端,:passenger 进程为乘客端 TODO 暂时不启用,仅做洱海交付,独立乘客屏+宣传视频 // if (ProcessUtils.getCurrentProcessName().contains(":passenger")) { diff --git a/app_ipc_monitoring/build.gradle b/app_ipc_monitoring/build.gradle index fd686e2b9a..789192a600 100644 --- a/app_ipc_monitoring/build.gradle +++ b/app_ipc_monitoring/build.gradle @@ -64,6 +64,12 @@ android { driver { dimension "multi_device" buildConfigField 'boolean', 'IS_CLIENT', 'false' + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR_TAXI', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR_BUS', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_R);}}' + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR_M1', 'null' + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR_M2', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);add(chassis.Chassis.GearPosition.GEAR_P);add(chassis.Chassis.GearPosition.GEAR_R);}}' + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR_SWEEPER', 'new java.util.HashSet(){{add(chassis.Chassis.GearPosition.GEAR_N);}}' + buildConfigField 'java.util.Set', 'UNABLE_LAUNCH_AUTOPILOT_GEAR_VAN', 'null' } } diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/App.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/App.java index e89e78ab58..f0bd8f52ca 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/App.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/App.java @@ -4,8 +4,13 @@ import android.app.Application; import com.zhidao.adas.client.utils.CrashHandler; +import chassis.Chassis; + public class App extends Application { public static App INSTANCE; + + public Chassis.GearPosition gear; + @Override public void onCreate() { super.onCreate(); diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/DataDistribution.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/DataDistribution.java index fd80d8d570..851fe8b076 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/DataDistribution.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/DataDistribution.java @@ -2,36 +2,15 @@ package com.zhidao.adas.client; import android.util.Pair; -import com.zhidao.adas.client.bean.ArrivalNotification; -import com.zhidao.adas.client.bean.AutopilotState; -import com.zhidao.adas.client.bean.BagManagerCmd; import com.zhidao.adas.client.bean.BaseInfo; -import com.zhidao.adas.client.bean.BasicInfoReq; -import com.zhidao.adas.client.bean.CarConfigResp; -import com.zhidao.adas.client.bean.ChassisStates; import com.zhidao.adas.client.bean.DataShow; import com.zhidao.adas.client.bean.ErrorData; -import com.zhidao.adas.client.bean.FSMFunctionStates; -import com.zhidao.adas.client.bean.GlobalPathResp; -import com.zhidao.adas.client.bean.GnssInfo; -import com.zhidao.adas.client.bean.MogoReportMessage; import com.zhidao.adas.client.bean.ObuMap; import com.zhidao.adas.client.bean.ObuRsi; import com.zhidao.adas.client.bean.ObuRsm; import com.zhidao.adas.client.bean.ObuSpat; import com.zhidao.adas.client.bean.OriginalPointCloudData; import com.zhidao.adas.client.bean.PerceptionTrafficLight; -import com.zhidao.adas.client.bean.PlanningDecisionState; -import com.zhidao.adas.client.bean.PlanningObjects; -import com.zhidao.adas.client.bean.PredictionObstacleTrajectory; -import com.zhidao.adas.client.bean.RecordDataConfig; -import com.zhidao.adas.client.bean.RecordPanel; -import com.zhidao.adas.client.bean.RoboSweeperTaskIndex; -import com.zhidao.adas.client.bean.StatusInfo; -import com.zhidao.adas.client.bean.TrackedObjects; -import com.zhidao.adas.client.bean.Trajectory; -import com.zhidao.adas.client.bean.VehicleState; -import com.zhidao.adas.client.bean.Warn; import com.zhidao.adas.client.log.LogSave; import com.zhidao.adas.client.utils.Constants; import com.zhidao.support.adas.high.common.ThreadPoolManager; @@ -44,6 +23,8 @@ import java.util.Locale; import java.util.concurrent.Future; import java.util.concurrent.LinkedBlockingQueue; +import mogo.telematics.pad.MessagePad; + /** * 数据分发 */ @@ -193,8 +174,8 @@ public class DataDistribution { } public String cutDown(String str) { - if (isCutDown && str.length() > 650) { - str = str.substring(0, 650) + "\n(已缩短。如需查看完整数据,请勾选日志缩短复选框)"; + if (isCutDown && str.length() > 850) { + str = str.substring(0, 850) + "\n(已缩短。如需查看完整数据,请勾选日志缩短复选框)"; } return str; } @@ -202,219 +183,222 @@ public class DataDistribution { private String onTransmit(String time, BaseInfo data) { String temp = data.toString(); String str = cutDown(temp); - if (data instanceof Trajectory) { - listTrajectory.add(0, new DataShow(listTrajectorySize++, time + str)); - if (listTrajectory.size() > LIST_SIZE) { - listTrajectory.remove(listTrajectory.size() - 1); + if (data.header == null) { + if (data instanceof ErrorData) { + listErrorData.add(0, new DataShow(listErrorDataSize++, time + str)); + if (listErrorData.size() > 100) { + listErrorData.remove(listErrorData.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_ERROR.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (data instanceof OriginalPointCloudData) { + listOriginalPointCloud.add(0, new DataShow(listOriginalPointCloudSize++, time + str)); + if (listOriginalPointCloud.size() > LIST_SIZE) { + listOriginalPointCloud.remove(listOriginalPointCloud.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_POINT_CLOUD_ORIGINAL.equals(listener.first)) { + listener.second.onRefresh(); + } } - if (listener != null && Constants.TITLE.RECEIVE_TRAJECTORY.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof TrackedObjects) { - listTrackedObjects.add(0, new DataShow(listTrackedObjectsSize++, time + str)); - if (listTrackedObjects.size() > LIST_SIZE) { - listTrackedObjects.remove(listTrackedObjects.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_TRACKED_OBJECTS.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof OriginalPointCloudData) { - listOriginalPointCloud.add(0, new DataShow(listOriginalPointCloudSize++, time + str)); - if (listOriginalPointCloud.size() > LIST_SIZE) { - listOriginalPointCloud.remove(listOriginalPointCloud.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_POINT_CLOUD_ORIGINAL.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof PlanningObjects) { - listPlanningObjects.add(0, new DataShow(listPlanningObjectsSize++, time + str)); - if (listPlanningObjects.size() > LIST_SIZE) { - listPlanningObjects.remove(listPlanningObjects.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_PLANNING_OBJECTS.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof PlanningDecisionState) { - listPlanningDecisionState.add(0, new DataShow(listPlanningDecisionStateSize++, time + str)); - if (listPlanningDecisionState.size() > LIST_SIZE) { - listPlanningDecisionState.remove(listPlanningDecisionState.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_PLANNING_DECISION_STATE.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof ObuSpat) { - listObuSpat.add(0, new DataShow(listObuSpatSize++, time + str)); - if (listObuSpat.size() > LIST_SIZE) { - listObuSpat.remove(listObuSpat.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_OBU_SPAT.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof ObuRsi) { - listObuRsi.add(0, new DataShow(listObuRsiSize++, time + str)); - if (listObuRsi.size() > LIST_SIZE) { - listObuRsi.remove(listObuRsi.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_OBU_RSI.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof ObuRsm) { - listObuRsm.add(0, new DataShow(listObuRsmSize++, time + str)); - if (listObuRsm.size() > LIST_SIZE) { - listObuRsm.remove(listObuRsm.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_OBU_RSM.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof ObuMap) { - listObuMap.add(0, new DataShow(listObuMapSize++, time + str)); - if (listObuMap.size() > LIST_SIZE) { - listObuMap.remove(listObuMap.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_OBU_MAP.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof GnssInfo) { - listGnssInfo.add(0, new DataShow(listGnssInfoSize++, time + str)); - if (listGnssInfo.size() > LIST_SIZE) { - listGnssInfo.remove(listGnssInfo.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_GNSS_INFO.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof VehicleState) { - listVehicleState.add(0, new DataShow(listVehicleStateSize++, time + str)); - if (listVehicleState.size() > LIST_SIZE) { - listVehicleState.remove(listVehicleState.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_VEHICLE_STATE.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof ChassisStates) { - listChassisStates.add(0, new DataShow(listChassisStatesSize++, time + str)); - if (listChassisStates.size() > LIST_SIZE) { - listChassisStates.remove(listChassisStates.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_CHASSIS_STATES.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof AutopilotState) { - listAutopilotState.add(0, new DataShow(listAutopilotStateSize++, time + str)); - if (listAutopilotState.size() > LIST_SIZE) { - listAutopilotState.remove(listAutopilotState.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_AUTOPILOT_STATE.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof MogoReportMessage) { - listMogoReportMessage.add(0, new DataShow(listMogoReportMessageSize++, time + str)); - if (listMogoReportMessage.size() > LIST_SIZE) { - listMogoReportMessage.remove(listMogoReportMessage.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_REPORT_MESSAGE.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof PerceptionTrafficLight) { - listPerceptionTrafficLight.add(0, new DataShow(listPerceptionTrafficLightSize++, time + str)); - if (listPerceptionTrafficLight.size() > LIST_SIZE) { - listPerceptionTrafficLight.remove(listPerceptionTrafficLight.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_PERCEPTION_TRAFFIC_LIGHT.equals(listener.first)) { - listener.second.onPerceptionTrafficLight((PerceptionTrafficLight) data); - } - } else if (data instanceof PredictionObstacleTrajectory) { - listPredictionObstacleTrajectory.add(0, new DataShow(listPredictionObstacleTrajectorySize++, time + str)); - if (listPredictionObstacleTrajectory.size() > LIST_SIZE) { - listPredictionObstacleTrajectory.remove(listPredictionObstacleTrajectory.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_PREDICTION_OBSTACLE_TRAJECTORY.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof BasicInfoReq) { - - } else if (data instanceof CarConfigResp) { - if (listener != null && Constants.TITLE.TITLE_CAR_CONFIG_RESP.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof RecordPanel) { - listRecordPanel.add(0, new DataShow(listRecordPanelSize++, time + str)); - if (listRecordPanel.size() > LIST_SIZE) { - listRecordPanel.remove(listRecordPanel.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_RECORD_RESULT.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof BagManagerCmd) { - listBagManagerCmd.add(0, new DataShow(listBagManagerCmdSize++, time + str)); - if (listBagManagerCmd.size() > LIST_SIZE) { - listBagManagerCmd.remove(listBagManagerCmd.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_BAG_MANAGER_CMD.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof GlobalPathResp) { - listGlobalPathResp.add(0, new DataShow(listGlobalPathRespSize++, time + str)); - if (listGlobalPathResp.size() > LIST_SIZE) { - listGlobalPathResp.remove(listGlobalPathResp.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_GLOBAL_PATH_RESP.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof Warn) { - listWarn.add(0, new DataShow(listWarnSize++, time + str)); - if (listWarn.size() > LIST_SIZE) { - listWarn.remove(listWarn.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_WARN.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof ArrivalNotification) { - listArrivalNotification.add(0, new DataShow(listArrivalNotificationSize++, time + str)); - if (listArrivalNotification.size() > LIST_SIZE) { - listArrivalNotification.remove(listArrivalNotification.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_ARRIVAL_NOTIFICATION.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof StatusInfo) { - listStatusInfo.add(0, new DataShow(listStatusInfoSize++, time + str)); - if (listStatusInfo.size() > LIST_SIZE) { - listStatusInfo.remove(listStatusInfo.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_STATUS_QUERY_RESP.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof RecordDataConfig) { - listRecordDataConfig.add(0, new DataShow(listRecordDataConfigSize++, time + str)); - if (listRecordDataConfig.size() > LIST_SIZE) { - listRecordDataConfig.remove(listRecordDataConfig.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_RECORD_DATA_CONFIG_RESP.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof RoboSweeperTaskIndex) { - listRoboSweeperTaskIndex.add(0, new DataShow(listRoboSweeperTaskIndexSize++, time + str)); - if (listRoboSweeperTaskIndex.size() > LIST_SIZE) { - listRoboSweeperTaskIndex.remove(listRoboSweeperTaskIndex.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_SWEEPER_TASK_INDEX_DATA.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof FSMFunctionStates) { - listFSMFunctionStates.add(0, new DataShow(listFSMFunctionStatesSize++, time + str)); - if (listFSMFunctionStates.size() > LIST_SIZE) { - listFSMFunctionStates.remove(listFSMFunctionStates.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_FUNCTION_STATES.equals(listener.first)) { - listener.second.onRefresh(); - } - } else if (data instanceof ErrorData) { - listErrorData.add(0, new DataShow(listErrorDataSize++, time + str)); - if (listErrorData.size() > 100) { - listErrorData.remove(listErrorData.size() - 1); - } - if (listener != null && Constants.TITLE.RECEIVE_ERROR.equals(listener.first)) { - listener.second.onRefresh(); + } else { + MessagePad.MessageType messageType = data.header.getMsgType(); + if (messageType == MessagePad.MessageType.MsgTypeTrajectory) { + listTrajectory.add(0, new DataShow(listTrajectorySize++, time + str)); + if (listTrajectory.size() > LIST_SIZE) { + listTrajectory.remove(listTrajectory.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_TRAJECTORY.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeTrackedObjects) { + listTrackedObjects.add(0, new DataShow(listTrackedObjectsSize++, time + str)); + if (listTrackedObjects.size() > LIST_SIZE) { + listTrackedObjects.remove(listTrackedObjects.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_TRACKED_OBJECTS.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypePlanningObjects) { + listPlanningObjects.add(0, new DataShow(listPlanningObjectsSize++, time + str)); + if (listPlanningObjects.size() > LIST_SIZE) { + listPlanningObjects.remove(listPlanningObjects.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_PLANNING_OBJECTS.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypePlanningDecisionState) { + listPlanningDecisionState.add(0, new DataShow(listPlanningDecisionStateSize++, time + str)); + if (listPlanningDecisionState.size() > LIST_SIZE) { + listPlanningDecisionState.remove(listPlanningDecisionState.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_PLANNING_DECISION_STATE.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeGnssInfo) { + listGnssInfo.add(0, new DataShow(listGnssInfoSize++, time + str)); + if (listGnssInfo.size() > LIST_SIZE) { + listGnssInfo.remove(listGnssInfo.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_GNSS_INFO.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeVehicleState) { + listVehicleState.add(0, new DataShow(listVehicleStateSize++, time + str)); + if (listVehicleState.size() > LIST_SIZE) { + listVehicleState.remove(listVehicleState.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_VEHICLE_STATE.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeChassisStates) { + listChassisStates.add(0, new DataShow(listChassisStatesSize++, time + str)); + if (listChassisStates.size() > LIST_SIZE) { + listChassisStates.remove(listChassisStates.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_CHASSIS_STATES.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeAutopilotState) { + listAutopilotState.add(0, new DataShow(listAutopilotStateSize++, time + str)); + if (listAutopilotState.size() > LIST_SIZE) { + listAutopilotState.remove(listAutopilotState.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_AUTOPILOT_STATE.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeReportMessage) { + listMogoReportMessage.add(0, new DataShow(listMogoReportMessageSize++, time + str)); + if (listMogoReportMessage.size() > LIST_SIZE) { + listMogoReportMessage.remove(listMogoReportMessage.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_REPORT_MESSAGE.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypePredictionObstacleTrajectory) { + listPredictionObstacleTrajectory.add(0, new DataShow(listPredictionObstacleTrajectorySize++, time + str)); + if (listPredictionObstacleTrajectory.size() > LIST_SIZE) { + listPredictionObstacleTrajectory.remove(listPredictionObstacleTrajectory.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_PREDICTION_OBSTACLE_TRAJECTORY.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeCarConfigResp) { + if (listener != null && Constants.TITLE.TITLE_CAR_CONFIG_RESP.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeRecordResult) { + listRecordPanel.add(0, new DataShow(listRecordPanelSize++, time + str)); + if (listRecordPanel.size() > LIST_SIZE) { + listRecordPanel.remove(listRecordPanel.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_RECORD_RESULT.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeBagManagerCmd) { + listBagManagerCmd.add(0, new DataShow(listBagManagerCmdSize++, time + str)); + if (listBagManagerCmd.size() > LIST_SIZE) { + listBagManagerCmd.remove(listBagManagerCmd.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_BAG_MANAGER_CMD.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeGlobalPathResp) { + listGlobalPathResp.add(0, new DataShow(listGlobalPathRespSize++, time + str)); + if (listGlobalPathResp.size() > LIST_SIZE) { + listGlobalPathResp.remove(listGlobalPathResp.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_GLOBAL_PATH_RESP.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeWarn) { + listWarn.add(0, new DataShow(listWarnSize++, time + str)); + if (listWarn.size() > LIST_SIZE) { + listWarn.remove(listWarn.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_WARN.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeArrivalNotification) { + listArrivalNotification.add(0, new DataShow(listArrivalNotificationSize++, time + str)); + if (listArrivalNotification.size() > LIST_SIZE) { + listArrivalNotification.remove(listArrivalNotification.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_ARRIVAL_NOTIFICATION.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeStatusQueryResp) { + listStatusInfo.add(0, new DataShow(listStatusInfoSize++, time + str)); + if (listStatusInfo.size() > LIST_SIZE) { + listStatusInfo.remove(listStatusInfo.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_STATUS_QUERY_RESP.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeRecordDataConfigResp) { + listRecordDataConfig.add(0, new DataShow(listRecordDataConfigSize++, time + str)); + if (listRecordDataConfig.size() > LIST_SIZE) { + listRecordDataConfig.remove(listRecordDataConfig.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_RECORD_DATA_CONFIG_RESP.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeSweeperTaskIndexData) { + listRoboSweeperTaskIndex.add(0, new DataShow(listRoboSweeperTaskIndexSize++, time + str)); + if (listRoboSweeperTaskIndex.size() > LIST_SIZE) { + listRoboSweeperTaskIndex.remove(listRoboSweeperTaskIndex.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_SWEEPER_TASK_INDEX_DATA.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (messageType == MessagePad.MessageType.MsgTypeFunctionStates) { + listFSMFunctionStates.add(0, new DataShow(listFSMFunctionStatesSize++, time + str)); + if (listFSMFunctionStates.size() > LIST_SIZE) { + listFSMFunctionStates.remove(listFSMFunctionStates.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_FUNCTION_STATES.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (data instanceof PerceptionTrafficLight) { + listPerceptionTrafficLight.add(0, new DataShow(listPerceptionTrafficLightSize++, time + str)); + if (listPerceptionTrafficLight.size() > LIST_SIZE) { + listPerceptionTrafficLight.remove(listPerceptionTrafficLight.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_PERCEPTION_TRAFFIC_LIGHT.equals(listener.first)) { + listener.second.onPerceptionTrafficLight((PerceptionTrafficLight) data); + } + } else if (data instanceof ObuSpat) { + listObuSpat.add(0, new DataShow(listObuSpatSize++, time + str)); + if (listObuSpat.size() > LIST_SIZE) { + listObuSpat.remove(listObuSpat.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_OBU_SPAT.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (data instanceof ObuRsi) { + listObuRsi.add(0, new DataShow(listObuRsiSize++, time + str)); + if (listObuRsi.size() > LIST_SIZE) { + listObuRsi.remove(listObuRsi.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_OBU_RSI.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (data instanceof ObuRsm) { + listObuRsm.add(0, new DataShow(listObuRsmSize++, time + str)); + if (listObuRsm.size() > LIST_SIZE) { + listObuRsm.remove(listObuRsm.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_OBU_RSM.equals(listener.first)) { + listener.second.onRefresh(); + } + } else if (data instanceof ObuMap) { + listObuMap.add(0, new DataShow(listObuMapSize++, time + str)); + if (listObuMap.size() > LIST_SIZE) { + listObuMap.remove(listObuMap.size() - 1); + } + if (listener != null && Constants.TITLE.RECEIVE_OBU_MAP.equals(listener.first)) { + listener.second.onRefresh(); + } } } return temp; diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ArrivalNotification.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ArrivalNotification.java deleted file mode 100644 index 9c5904dc23..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ArrivalNotification.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class ArrivalNotification extends BaseInfo { - public final MessagePad.ArrivalNotification bean; - - public ArrivalNotification(MessagePad.Header header, MessagePad.ArrivalNotification bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/AutopilotState.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/AutopilotState.java deleted file mode 100644 index e3a2c31b98..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/AutopilotState.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class AutopilotState extends BaseInfo { - public final MessagePad.AutopilotState bean; - - public AutopilotState(MessagePad.Header header, MessagePad.AutopilotState bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/BagManagerCmd.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/BagManagerCmd.java deleted file mode 100644 index db1dd0f4ab..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/BagManagerCmd.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import bag_manager.BagManagerOuterClass; -import mogo.telematics.pad.MessagePad; - -public class BagManagerCmd extends BaseInfo { - public final BagManagerOuterClass.BagManager bean; - - public BagManagerCmd(MessagePad.Header header, BagManagerOuterClass.BagManager bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/BasicInfoReq.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/BasicInfoReq.java deleted file mode 100644 index bce516eee2..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/BasicInfoReq.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class BasicInfoReq extends BaseInfo { - public final MessagePad.BasicInfoReq bean; - - public BasicInfoReq(MessagePad.Header header, MessagePad.BasicInfoReq bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/CarConfigResp.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/CarConfigResp.java deleted file mode 100644 index c8b3b390f3..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/CarConfigResp.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class CarConfigResp extends BaseInfo { - public final MessagePad.CarConfigResp bean; - - public CarConfigResp(MessagePad.Header header, MessagePad.CarConfigResp bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ChassisStates.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ChassisStates.java deleted file mode 100644 index f18d4564a5..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ChassisStates.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import chassis.ChassisStatesOuterClass; -import mogo.telematics.pad.MessagePad; - -public class ChassisStates extends BaseInfo { - public final ChassisStatesOuterClass.ChassisStates bean; - - public ChassisStates(MessagePad.Header header, ChassisStatesOuterClass.ChassisStates bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/FSMFunctionStates.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/FSMFunctionStates.java deleted file mode 100644 index 1d672127ae..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/FSMFunctionStates.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import function_state_management.FunctionStates; -import mogo.telematics.pad.MessagePad; - -public class FSMFunctionStates extends BaseInfo { - public final FunctionStates.FSMFunctionStates bean; - - public FSMFunctionStates(MessagePad.Header header, FunctionStates.FSMFunctionStates bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/GlobalPathResp.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/GlobalPathResp.java deleted file mode 100644 index bd5be112a6..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/GlobalPathResp.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class GlobalPathResp extends BaseInfo { - public final MessagePad.GlobalPathResp bean; - - public GlobalPathResp(MessagePad.Header header, MessagePad.GlobalPathResp bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/GnssInfo.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/GnssInfo.java deleted file mode 100644 index 1ebd36a34f..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/GnssInfo.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class GnssInfo extends BaseInfo { - public final MessagePad.GnssInfo bean; - - public GnssInfo(MessagePad.Header header, MessagePad.GnssInfo bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/MogoReportMessage.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/MogoReportMessage.java deleted file mode 100644 index ec25240c06..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/MogoReportMessage.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; -import mogo_msg.MogoReportMsg; - -public class MogoReportMessage extends BaseInfo { - public final MogoReportMsg.MogoReportMessage bean; - - public MogoReportMessage(MessagePad.Header header, MogoReportMsg.MogoReportMessage bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuMap.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuMap.java index 88c93caf6e..51a2c8c4ed 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuMap.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuMap.java @@ -2,6 +2,7 @@ package com.zhidao.adas.client.bean; import com.google.protobuf.TextFormat; import com.mogo.support.obu.ObuScene; +import com.zhidao.support.adas.high.common.ByteUtil; import java.text.SimpleDateFormat; @@ -18,7 +19,7 @@ public class ObuMap extends BaseInfo { @Override public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); + return super.toString() + "Payload原始数据:" + ByteUtil.byteArrToHex(bean.toByteArray()) + '\n' + TextFormat.printer().escapingNonAscii(false).printToString(bean); } } diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuRsi.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuRsi.java index d433245ebe..8cd054f956 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuRsi.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuRsi.java @@ -2,6 +2,7 @@ package com.zhidao.adas.client.bean; import com.google.protobuf.TextFormat; import com.mogo.support.obu.ObuScene; +import com.zhidao.support.adas.high.common.ByteUtil; import java.text.SimpleDateFormat; @@ -18,7 +19,7 @@ public class ObuRsi extends BaseInfo { @Override public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); + return super.toString() + "Payload原始数据:" + ByteUtil.byteArrToHex(bean.toByteArray()) + '\n' + TextFormat.printer().escapingNonAscii(false).printToString(bean); } } diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuRsm.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuRsm.java index 6045845ae4..badbf1745b 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuRsm.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuRsm.java @@ -2,6 +2,7 @@ package com.zhidao.adas.client.bean; import com.google.protobuf.TextFormat; import com.mogo.support.obu.ObuScene; +import com.zhidao.support.adas.high.common.ByteUtil; import java.text.SimpleDateFormat; @@ -18,7 +19,7 @@ public class ObuRsm extends BaseInfo { @Override public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); + return super.toString() + "Payload原始数据:" + ByteUtil.byteArrToHex(bean.toByteArray()) + '\n' + TextFormat.printer().escapingNonAscii(false).printToString(bean); } } diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuSpat.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuSpat.java index bb4707903e..3ba064f0e6 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuSpat.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuSpat.java @@ -2,6 +2,7 @@ package com.zhidao.adas.client.bean; import com.google.protobuf.TextFormat; import com.mogo.support.obu.ObuScene; +import com.zhidao.support.adas.high.common.ByteUtil; import java.text.SimpleDateFormat; @@ -18,7 +19,7 @@ public class ObuSpat extends BaseInfo { @Override public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); + return super.toString() + "Payload原始数据:" + ByteUtil.byteArrToHex(bean.toByteArray()) + '\n' + TextFormat.printer().escapingNonAscii(false).printToString(bean); } } diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuWarningData.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuWarningData.java deleted file mode 100644 index 7ea1bca9af..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ObuWarningData.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; -import mogo.v2x.ObuWarningEvent; - -public class ObuWarningData extends BaseInfo { - public final ObuWarningEvent.ObuWarningData bean; - - public ObuWarningData(MessagePad.Header header, ObuWarningEvent.ObuWarningData bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PerceptionTrafficLight.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PerceptionTrafficLight.java index 585a18d0a6..246de432ce 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PerceptionTrafficLight.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PerceptionTrafficLight.java @@ -1,6 +1,7 @@ package com.zhidao.adas.client.bean; import com.google.protobuf.TextFormat; +import com.zhidao.support.adas.high.common.ByteUtil; import java.text.SimpleDateFormat; @@ -18,7 +19,7 @@ public class PerceptionTrafficLight extends BaseInfo { @Override public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); + return super.toString() + "Payload原始数据:" + ByteUtil.byteArrToHex(bean.toByteArray()) + '\n' + TextFormat.printer().escapingNonAscii(false).printToString(bean); } } diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PlanningDecisionState.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PlanningDecisionState.java deleted file mode 100644 index c443774c36..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PlanningDecisionState.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class PlanningDecisionState extends BaseInfo { - public final MessagePad.PlanningActionMsg bean; - - public PlanningDecisionState(MessagePad.Header header, MessagePad.PlanningActionMsg bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PlanningObjects.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PlanningObjects.java deleted file mode 100644 index 68c1947de2..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PlanningObjects.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class PlanningObjects extends BaseInfo { - public final MessagePad.PlanningObjects bean; - - public PlanningObjects(MessagePad.Header header, MessagePad.PlanningObjects bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PredictionObstacleTrajectory.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PredictionObstacleTrajectory.java deleted file mode 100644 index b6b070e110..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/PredictionObstacleTrajectory.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; -import prediction.Prediction; - -public class PredictionObstacleTrajectory extends BaseInfo { - public final Prediction.mPredictionObjects bean; - - public PredictionObstacleTrajectory(MessagePad.Header header, Prediction.mPredictionObjects bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ReceiveData.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ReceiveData.java new file mode 100644 index 0000000000..0d8be2857d --- /dev/null +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/ReceiveData.java @@ -0,0 +1,25 @@ +package com.zhidao.adas.client.bean; + +import com.google.protobuf.GeneratedMessageV3; +import com.google.protobuf.TextFormat; +import com.zhidao.support.adas.high.common.ByteUtil; + +import java.text.SimpleDateFormat; + +import mogo.telematics.pad.MessagePad; + +public class ReceiveData extends BaseInfo { + public final GeneratedMessageV3 bean; + + public ReceiveData(MessagePad.Header header, GeneratedMessageV3 bean, SimpleDateFormat sdf) { + super("接收", bean.getSerializedSize(), header, sdf); + this.bean = bean; + } + + + @Override + public String toString() { + return super.toString() + "Payload原始数据:" + ByteUtil.byteArrToHex(bean.toByteArray()) + '\n' + TextFormat.printer().escapingNonAscii(false).printToString(bean); + } + +} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RecordDataConfig.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RecordDataConfig.java deleted file mode 100644 index 1dd5785507..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RecordDataConfig.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class RecordDataConfig extends BaseInfo { - public final MessagePad.RecordDataConfig bean; - - public RecordDataConfig(MessagePad.Header header, MessagePad.RecordDataConfig bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RecordPanel.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RecordPanel.java deleted file mode 100644 index a5d8cd7964..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RecordPanel.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; -import record_cache.RecordPanelOuterClass; - -public class RecordPanel extends BaseInfo { - public final RecordPanelOuterClass.RecordPanel bean; - - public RecordPanel(MessagePad.Header header, RecordPanelOuterClass.RecordPanel bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RoboSweeperTaskIndex.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RoboSweeperTaskIndex.java deleted file mode 100644 index 86eaedbb6c..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/RoboSweeperTaskIndex.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; -import planning.RoboSweeperTaskIndexOuterClass; - -public class RoboSweeperTaskIndex extends BaseInfo { - public final RoboSweeperTaskIndexOuterClass.RoboSweeperTaskIndex bean; - - public RoboSweeperTaskIndex(MessagePad.Header header, RoboSweeperTaskIndexOuterClass.RoboSweeperTaskIndex bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/StatusInfo.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/StatusInfo.java deleted file mode 100644 index 72a96e6b7a..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/StatusInfo.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; -import system_master.SystemStatusInfo; - -public class StatusInfo extends BaseInfo { - public final SystemStatusInfo.StatusInfo bean; - - public StatusInfo(MessagePad.Header header, SystemStatusInfo.StatusInfo bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/TrackedObjects.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/TrackedObjects.java deleted file mode 100644 index 6f49037779..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/TrackedObjects.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class TrackedObjects extends BaseInfo { - private MessagePad.TrackedObjects bean; - - public TrackedObjects(MessagePad.Header header, MessagePad.TrackedObjects bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/Trajectory.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/Trajectory.java deleted file mode 100644 index 764d7fa44e..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/Trajectory.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class Trajectory extends BaseInfo { - public final MessagePad.Trajectory bean; - - public Trajectory(MessagePad.Header header, MessagePad.Trajectory bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } - -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/VehicleState.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/VehicleState.java deleted file mode 100644 index aabab1571e..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/VehicleState.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import chassis.VehicleStateOuterClass; -import mogo.telematics.pad.MessagePad; - -public class VehicleState extends BaseInfo { - public final VehicleStateOuterClass.VehicleState bean; - - public VehicleState(MessagePad.Header header, VehicleStateOuterClass.VehicleState bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/Warn.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/Warn.java deleted file mode 100644 index 5bb43ebaaa..0000000000 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/bean/Warn.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.zhidao.adas.client.bean; - -import com.google.protobuf.TextFormat; - -import java.text.SimpleDateFormat; - -import mogo.telematics.pad.MessagePad; - -public class Warn extends BaseInfo { - public final MessagePad.Warn bean; - - public Warn(MessagePad.Header header, MessagePad.Warn bean, SimpleDateFormat sdf) { - super("接收", bean.getSerializedSize(), header, sdf); - this.bean = bean; - } - - @Override - public String toString() { - return super.toString() + TextFormat.printer().escapingNonAscii(false).printToString(bean); - } -} diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java index d48fec82ef..45b6b6c46d 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java @@ -43,11 +43,7 @@ import androidx.recyclerview.widget.SimpleItemAnimator; import com.google.protobuf.TextFormat; import com.mogo.support.obu.ObuScene; -import com.mogo.telematic.MogoProtocolMsg; -import com.mogo.telematic.NSDNettyManager; -import com.mogo.telematic.client.listener.NettyClientListener; -import com.mogo.telematic.client.status.ConnectState; -import com.mogo.telematic.server.netty.NettyServerListener; +import com.zhidao.adas.client.App; import com.zhidao.adas.client.BuildConfig; import com.zhidao.adas.client.DataDistribution; import com.zhidao.adas.client.R; @@ -55,36 +51,16 @@ import com.zhidao.adas.client.adapter.InfoTitleAdapter; import com.zhidao.adas.client.base.BaseActivity; import com.zhidao.adas.client.base.BaseAdapter; import com.zhidao.adas.client.base.BaseFragment; -import com.zhidao.adas.client.bean.ArrivalNotification; -import com.zhidao.adas.client.bean.AutopilotState; -import com.zhidao.adas.client.bean.BagManagerCmd; -import com.zhidao.adas.client.bean.BasicInfoReq; -import com.zhidao.adas.client.bean.CarConfigResp; -import com.zhidao.adas.client.bean.ChassisStates; import com.zhidao.adas.client.bean.ErrorData; -import com.zhidao.adas.client.bean.FSMFunctionStates; -import com.zhidao.adas.client.bean.GlobalPathResp; -import com.zhidao.adas.client.bean.GnssInfo; import com.zhidao.adas.client.bean.IPCConnectState; -import com.zhidao.adas.client.bean.MogoReportMessage; import com.zhidao.adas.client.bean.ObuMap; import com.zhidao.adas.client.bean.ObuRsi; import com.zhidao.adas.client.bean.ObuRsm; import com.zhidao.adas.client.bean.ObuSpat; import com.zhidao.adas.client.bean.OriginalPointCloudData; import com.zhidao.adas.client.bean.PerceptionTrafficLight; -import com.zhidao.adas.client.bean.PlanningDecisionState; -import com.zhidao.adas.client.bean.PlanningObjects; -import com.zhidao.adas.client.bean.PredictionObstacleTrajectory; -import com.zhidao.adas.client.bean.RecordDataConfig; -import com.zhidao.adas.client.bean.RecordPanel; -import com.zhidao.adas.client.bean.RoboSweeperTaskIndex; +import com.zhidao.adas.client.bean.ReceiveData; import com.zhidao.adas.client.bean.SpecialVehicleBean; -import com.zhidao.adas.client.bean.StatusInfo; -import com.zhidao.adas.client.bean.TrackedObjects; -import com.zhidao.adas.client.bean.Trajectory; -import com.zhidao.adas.client.bean.VehicleState; -import com.zhidao.adas.client.bean.Warn; import com.zhidao.adas.client.log.ConnectStatusSave; import com.zhidao.adas.client.log.LogSave; import com.zhidao.adas.client.other.permission.BackgrounderPermission; @@ -97,14 +73,12 @@ import com.zhidao.support.adas.high.AdasManager; import com.zhidao.support.adas.high.AdasOptions; import com.zhidao.support.adas.high.OnAdasConnectStatusListener; import com.zhidao.support.adas.high.OnAdasListener; -import com.zhidao.support.adas.high.OnMultiDeviceListener; -import com.zhjt.mogo.adas.data.bean.AutopilotStatistics; import com.zhidao.support.adas.high.bean.VersionCompatibility; -import com.zhidao.support.adas.high.common.ByteUtil; import com.zhidao.support.adas.high.common.Constants.IPC_CONNECTION_STATUS; import com.zhidao.support.adas.high.common.CupidLogUtils; import com.zhidao.support.adas.high.common.ProtocolStatus; import com.zhidao.support.adas.high.common.ReceiveTimeoutManager; +import com.zhjt.mogo.adas.data.bean.AutopilotStatistics; import java.net.Inet4Address; import java.net.InetAddress; @@ -123,7 +97,6 @@ import bag_manager.BagManagerOuterClass; import chassis.ChassisStatesOuterClass; import chassis.VehicleStateOuterClass; import function_state_management.FunctionStates; -import io.netty.channel.Channel; import mogo.telematics.pad.MessagePad; import mogo_msg.MogoReportMsg; import perception.TrafficLightOuterClass; @@ -878,44 +851,46 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas @Override public void onTrajectory(MessagePad.Header header, MessagePad.Trajectory trajectory) { - Trajectory base = new Trajectory(header, trajectory, sdf); + ReceiveData base = new ReceiveData(header, trajectory, sdf); DataDistribution.getInstance().addData(base); } @Override public void onTrackedObjects(MessagePad.Header header, MessagePad.TrackedObjects trackedObjects) { - TrackedObjects base = new TrackedObjects(header, trackedObjects, sdf); + ReceiveData base = new ReceiveData(header, trackedObjects, sdf); DataDistribution.getInstance().addData(base); } @Override public void onGnssInfo(MessagePad.Header header, MessagePad.GnssInfo gnssInfo) { - GnssInfo base = new GnssInfo(header, gnssInfo, sdf); + ReceiveData base = new ReceiveData(header, gnssInfo, sdf); DataDistribution.getInstance().addData(base); } @Override public void onVehicleState(MessagePad.Header header, VehicleStateOuterClass.VehicleState vehicleState) { - VehicleState base = new VehicleState(header, vehicleState, sdf); + App.INSTANCE.gear = vehicleState.getGear(); + ReceiveData base = new ReceiveData(header, vehicleState, sdf); DataDistribution.getInstance().addData(base); } @Override public void onChassisStates(MessagePad.Header header, ChassisStatesOuterClass.ChassisStates chassisStates) { - ChassisStates base = new ChassisStates(header, chassisStates, sdf); + App.INSTANCE.gear = chassisStates.getGearSystemStates().getGearPosition(); + ReceiveData base = new ReceiveData(header, chassisStates, sdf); DataDistribution.getInstance().addData(base); } @Override public void onAutopilotState(MessagePad.Header header, MessagePad.AutopilotState autopilotState) { - AutopilotState base = new AutopilotState(header, autopilotState, sdf); + ReceiveData base = new ReceiveData(header, autopilotState, sdf); DataDistribution.getInstance().addData(base); } @Override public void onReportMessage(MessagePad.Header header, MogoReportMsg.MogoReportMessage mogoReportMessage) { - MogoReportMessage base = new MogoReportMessage(header, mogoReportMessage, sdf); + ReceiveData base = new ReceiveData(header, mogoReportMessage, sdf); DataDistribution.getInstance().addData(base); } @@ -927,7 +902,7 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas @Override public void onPredictionObstacleTrajectory(MessagePad.Header header, Prediction.mPredictionObjects predictionObjects) { - PredictionObstacleTrajectory base = new PredictionObstacleTrajectory(header, predictionObjects, sdf); + ReceiveData base = new ReceiveData(header, predictionObjects, sdf); DataDistribution.getInstance().addData(base); } @@ -966,32 +941,32 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas @Override public void onPlanningObjects(MessagePad.Header header, MessagePad.PlanningObjects planningObjects) { - PlanningObjects base = new PlanningObjects(header, planningObjects, sdf); + ReceiveData base = new ReceiveData(header, planningObjects, sdf); DataDistribution.getInstance().addData(base); } @Override public void onBasicInfoReq(MessagePad.Header header, MessagePad.BasicInfoReq basicInfoReq) { - BasicInfoReq info = new BasicInfoReq(header, basicInfoReq, sdf); - DataDistribution.getInstance().addData(info); + ReceiveData base = new ReceiveData(header, basicInfoReq, sdf); + DataDistribution.getInstance().addData(base); AdasManager.getInstance().sendBasicInfoResp("", 0, com.zhidao.support.adas.high.common.Constants.TERMINAL_ROLE.DEBUG); runOnUiThread(new Runnable() { @Override public void run() { - showToastCenter("收到车机基础信息请求:" + info.toString()); + showToastCenter("收到车机基础信息请求:" + base.toString()); } }); } @Override public void onCarConfigResp(MessagePad.Header header, MessagePad.CarConfigResp carConfigResp) { - CarConfigResp base = new CarConfigResp(header, carConfigResp, sdf); + ReceiveData base = new ReceiveData(header, carConfigResp, sdf); DataDistribution.getInstance().addData(base); } @Override public void onRecordResult(MessagePad.Header header, RecordPanelOuterClass.RecordPanel recordPanel) { - RecordPanel base = new RecordPanel(header, recordPanel, sdf); + ReceiveData base = new ReceiveData(header, recordPanel, sdf); DataDistribution.getInstance().addData(base); recordKey = recordPanel.getKey(); recordFileName = recordPanel.getFilename(); @@ -999,37 +974,37 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas @Override public void onGlobalPathResp(MessagePad.Header header, MessagePad.GlobalPathResp globalPathResp) { - GlobalPathResp base = new GlobalPathResp(header, globalPathResp, sdf); + ReceiveData base = new ReceiveData(header, globalPathResp, sdf); DataDistribution.getInstance().addData(base); } @Override public void onWarn(MessagePad.Header header, MessagePad.Warn warn) { - Warn base = new Warn(header, warn, sdf); + ReceiveData base = new ReceiveData(header, warn, sdf); DataDistribution.getInstance().addData(base); } @Override public void onArrivalNotification(MessagePad.Header header, MessagePad.ArrivalNotification arrivalNotification) { - ArrivalNotification base = new ArrivalNotification(header, arrivalNotification, sdf); + ReceiveData base = new ReceiveData(header, arrivalNotification, sdf); DataDistribution.getInstance().addData(base); } @Override public void onStatusQueryResp(MessagePad.Header header, SystemStatusInfo.StatusInfo statusInfo) { - StatusInfo base = new StatusInfo(header, statusInfo, sdf); + ReceiveData base = new ReceiveData(header, statusInfo, sdf); DataDistribution.getInstance().addData(base); } @Override public void onRecordDataConfigResp(MessagePad.Header header, MessagePad.RecordDataConfig config) { - RecordDataConfig base = new RecordDataConfig(header, config, sdf); + ReceiveData base = new ReceiveData(header, config, sdf); DataDistribution.getInstance().addData(base); } @Override public void onPlanningActionMsg(MessagePad.Header header, MessagePad.PlanningActionMsg planningActionMsg) { - PlanningDecisionState base = new PlanningDecisionState(header, planningActionMsg, sdf); + ReceiveData base = new ReceiveData(header, planningActionMsg, sdf); DataDistribution.getInstance().addData(base); } @@ -1060,19 +1035,19 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas @Override public void onFunctionStates(MessagePad.Header header, FunctionStates.FSMFunctionStates functionStates) { - FSMFunctionStates base = new FSMFunctionStates(header, functionStates, sdf); + ReceiveData base = new ReceiveData(header, functionStates, sdf); DataDistribution.getInstance().addData(base); } @Override public void onSweeperTaskIndexData(MessagePad.Header header, RoboSweeperTaskIndexOuterClass.RoboSweeperTaskIndex roboSweeperTaskIndex) { - RoboSweeperTaskIndex base = new RoboSweeperTaskIndex(header, roboSweeperTaskIndex, sdf); + ReceiveData base = new ReceiveData(header, roboSweeperTaskIndex, sdf); DataDistribution.getInstance().addData(base); } @Override public void onBagManagerCmd(MessagePad.Header header, BagManagerOuterClass.BagManager bagManager) { - BagManagerCmd base = new BagManagerCmd(header, bagManager, sdf); + ReceiveData base = new ReceiveData(header, bagManager, sdf); DataDistribution.getInstance().addData(base); } diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/VersionFragment.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/VersionFragment.java index 7b4abdaad1..733e70d9ae 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/VersionFragment.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/VersionFragment.java @@ -23,6 +23,7 @@ import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.SimpleItemAnimator; +import com.zhidao.adas.client.App; import com.zhidao.adas.client.BuildConfig; import com.zhidao.adas.client.R; import com.zhidao.adas.client.adapter.ConfigAdapter; @@ -36,6 +37,7 @@ import com.zhidao.support.adas.high.bean.VersionCompatibility; import com.zhidao.support.adas.high.common.Constants; import com.zhidao.support.adas.high.common.CupidLogUtils; import com.zhidao.support.adas.high.common.MessageType; +import com.zhidao.support.adas.high.common.autopilot.ability.AutopilotAbilityManager; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -45,6 +47,7 @@ import java.util.List; import java.util.Locale; import java.util.Set; +import chassis.Chassis; import mogo.telematics.pad.MessagePad; /** @@ -65,7 +68,7 @@ public class VersionFragment extends BaseFragment { private ConfigAdapter adapter; private InterfaceAdapter unregisteredAdapter; private InterfaceAdapter registeredAdapter; - + private Set[] unableGears; private int role = Constants.TERMINAL_ROLE.DEBUG;//角色 默认调试屏 @@ -216,9 +219,48 @@ public class VersionFragment extends BaseFragment { list.add(new Config("ADAS LIB版本:", AdasManager.getInstance().getAdasVersion())); list.add(new Config("APP构建时间:", BuildConfig.BUILD_TIME)); list.add(getAutopilotAbilityConfig("")); + list.add(gear()); adapter.setData(list); } + private Config gear() { + StringBuilder builder = new StringBuilder(); + Chassis.GearPosition gear = App.INSTANCE.gear; + if (gear != null) { + if (unableGears == null) { + unableGears = new Set[6]; + unableGears[0] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_BUS; + unableGears[1] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_M1; + unableGears[2] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_M2; + unableGears[3] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_SWEEPER; + unableGears[4] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_TAXI; + unableGears[5] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_VAN; + } + for (int j = 0; j < unableGears.length; j++) { + String type = ""; + if (j == 0) { + type = "BUS"; + } else if (j == 1) { + type = "M1"; + } else if (j == 2) { + type = "M2"; + } else if (j == 3) { + type = "SWEEPER"; + } else if (j == 4) { + type = "TAXI"; + } else if (j == 5) { + type = "VAN"; + } + AutopilotAbilityManager.getInstance().setUnableLaunchAutopilotGear(unableGears[j]); + boolean b = AutopilotAbilityManager.getInstance().isLaunchAutopilot(gear); + builder.append("车型:").append(type); + builder.append(" 当前档位:").append(gear.name()); + builder.append(" 是否可以启动自驾:").append(b).append('\n'); + } + } + return new Config("档位影响:", builder.toString()); + } + private Config getAutopilotAbilityConfig(String value) { return new Config("能否启动自动驾驶:", value); } @@ -226,32 +268,34 @@ public class VersionFragment extends BaseFragment { public void autopilotAbility(boolean isAutopilotAbility, String unableAutopilotReason) { List list = adapter.getData(); if (list != null) { - Config temp = getAutopilotAbilityConfig(isAutopilotAbility + ",原因:" + unableAutopilotReason); - int index = list.indexOf(temp); - if (index < 0) { - list.add(temp); - if (getActivity() != null) - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { - adapter.notifyItemInserted(list.size() - 1); - } - }); - } else { - Config config = list.get(index); - config.cover(temp); - config.color = RandomColor.randomColor(); - if (getActivity() != null) - getActivity().runOnUiThread(new Runnable() { - @Override - public void run() { - adapter.notifyItemChanged(index); - } - }); - } + updateRefreshConfig(list, getAutopilotAbilityConfig(isAutopilotAbility + ",原因:" + unableAutopilotReason)); + updateRefreshConfig(list, gear()); } + } - + private void updateRefreshConfig(List list, Config temp) { + int index = list.indexOf(temp); + if (index < 0) { + list.add(temp); + if (getActivity() != null) + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + adapter.notifyItemInserted(list.size() - 1); + } + }); + } else { + Config config = list.get(index); + config.cover(temp); + config.color = RandomColor.randomColor(); + if (getActivity() != null) + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + adapter.notifyItemChanged(index); + } + }); + } } @Override diff --git a/app_ipc_monitoring/src/main/res/values/colors.xml b/app_ipc_monitoring/src/main/res/values/colors.xml index fc88f479a4..cee6d1bede 100644 --- a/app_ipc_monitoring/src/main/res/values/colors.xml +++ b/app_ipc_monitoring/src/main/res/values/colors.xml @@ -19,7 +19,7 @@ #1E90FF #FFC0CB #FF8F00 - #FFE500 - #B9ED3E + #FF33FF + #669900 #2EEDEB 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 868b00b3fd..02f835979b 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 @@ -107,7 +107,7 @@ class MoGoAutopilotControlProvider : .setIpcConnectionMode(AdasOptions.IPC_CONNECTION_MODE.FIXATION) .setIpcFixationIP(AdasManager.getInstance().getIPCFixationIPList(mContext)) .setClient(false) - .setIdentityMode(FunctionBuildConfig.appIdentityMode) + .setUnableLaunchAutopilotGear(FunctionBuildConfig.unableLaunchAutopilotGear) // .setSubscribeInterfaceOptions(subscribeInterfaceOptions)// .build() @@ -198,7 +198,7 @@ class MoGoAutopilotControlProvider : val options = AdasOptions .Builder() .setClient(true) - .setIdentityMode(FunctionBuildConfig.appIdentityMode) + .setUnableLaunchAutopilotGear(FunctionBuildConfig.unableLaunchAutopilotGear) .build() AdasManager.getInstance() .create(options, MoGoAdasMsgConnectStatusListenerImpl()) @@ -226,7 +226,7 @@ class MoGoAutopilotControlProvider : .setIpcConnectionMode(AdasOptions.IPC_CONNECTION_MODE.FIXATION) .setIpcFixationIP(AdasManager.getInstance().getIPCFixationIPList(mContext)) .setClient(false)// 乘客端直连工控机改为false - .setIdentityMode(FunctionBuildConfig.appIdentityMode) + .setUnableLaunchAutopilotGear(FunctionBuildConfig.unableLaunchAutopilotGear) .build() AdasManager.getInstance().create(options, MoGoAdasMsgConnectStatusListenerImpl()) //////////////////////////////////注意先后顺序,AdasManager.getInstance().create后才可以设置监听///////////////////////////////////////////// diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt index 8831a67f91..556522a191 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt @@ -1,5 +1,6 @@ package com.mogo.eagle.core.data.config +import chassis.Chassis import com.mogo.eagle.core.data.deva.net.UrlConfig import com.mogo.eagle.core.utilcode.util.GsonUtils @@ -213,4 +214,10 @@ object FunctionBuildConfig { @JvmField var urlJson: UrlConfig = GsonUtils.fromJson("{\"och_url\":\"https://tech.zhidaohulian.com\"}", UrlConfig::class.java) + /** + * 最外层设置的Url + */ + @Volatile + @JvmField + var unableLaunchAutopilotGear: Set? = null } \ No newline at end of file diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasOptions.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasOptions.java index 3c38a18599..dcdc047c72 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasOptions.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasOptions.java @@ -4,6 +4,9 @@ import com.zhidao.support.adas.high.common.autopilot.ability.AutopilotAbilityMan import com.zhidao.support.adas.high.subscribe.SubscribeInterfaceOptions; import java.util.HashSet; +import java.util.Set; + +import chassis.Chassis; /** * Date:2019/5/31。 @@ -126,13 +129,13 @@ public class AdasOptions { } /** - * 身份/车型 + * 不能启动自驾的档位 * - * @param identityMode 车型 + * @param unableLaunchAutopilotGear 档位 * @return */ - public Builder setIdentityMode(String identityMode) { - options.setIdentityMode(identityMode); + public Builder setUnableLaunchAutopilotGear(Set unableLaunchAutopilotGear) { + options.setUnableLaunchAutopilotGear(unableLaunchAutopilotGear); return this; } @@ -153,7 +156,7 @@ public class AdasOptions { options.ipcAssignIP = null; options.ipcFixationIP = null; options.subscribeInterfaceOptions = null; - options.setIdentityMode(""); + options.setUnableLaunchAutopilotGear(null); return options; } @@ -197,7 +200,7 @@ public class AdasOptions { this.subscribeInterfaceOptions = subscribeInterfaceOptions; } - public void setIdentityMode(String identityMode) { - AutopilotAbilityManager.getInstance().setIdentityMode(identityMode); + public void setUnableLaunchAutopilotGear(Set unableLaunchAutopilotGear) { + AutopilotAbilityManager.getInstance().setUnableLaunchAutopilotGear(unableLaunchAutopilotGear); } } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility230.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility230.java index 9c6ce3ea4c..d6e4188abc 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility230.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility230.java @@ -1,10 +1,7 @@ package com.zhidao.support.adas.high.common.autopilot.ability; -import com.zhidao.support.adas.high.OnAdasListener; - import java.util.Timer; import java.util.TimerTask; -import java.util.regex.Pattern; import chassis.Chassis; import chassis.ChassisStatesOuterClass; @@ -31,10 +28,6 @@ public class AutopilotAbility230 { } private void onCallback() { - //金旅、开沃小巴乘客端 不能启动自动驾驶 - if (AutopilotAbilityManager.getInstance().isBusPassenger()) { - return; - } boolean isAutopilotAbility = true;//是否能启动自动驾驶 String unableAutopilotReason = null;//不能启动自动驾驶原因 //检测底盘相关 @@ -47,36 +40,14 @@ public class AutopilotAbility230 { } } if (isAutopilotAbility) { - /** - * 档位状态判断 目前判断的车型包括 东风Taxi 红旗Taxi 金旅Bus 金旅M1 金旅M1 福田清扫车 开沃 - * TODO 如果 identityMode 未赋值以及目前已知其他车型判断逻辑跟东风Taxi和红旗 走 - */ - //开沃任何档位都能启动自驾 - if (!AutopilotAbilityManager.getInstance().isBusDriverVan()) { - if (chassisStates.hasGearSystemStates()) { - Chassis.GearPosition gear = chassisStates.getGearSystemStates().getGearPosition(); - //金旅Bus和清扫车 档位不正常 - if (AutopilotAbilityManager.getInstance().isBusDriver()) { - if (gear == Chassis.GearPosition.GEAR_N || gear == Chassis.GearPosition.GEAR_R) { - isAutopilotAbility = false; - unableAutopilotReason = "档位不正常"; - } - } else if (AutopilotAbilityManager.getInstance().isSweeperDriverFutian()) { - if (gear == Chassis.GearPosition.GEAR_N) { - isAutopilotAbility = false; - unableAutopilotReason = "档位不正常"; - } - } else { - //东风Taxi和红旗 司机端和乘客端 档位不正常 - if (gear == Chassis.GearPosition.GEAR_P || gear == Chassis.GearPosition.GEAR_R) { - isAutopilotAbility = false; - unableAutopilotReason = "档位不正常"; - } - } + if (chassisStates.hasGearSystemStates()) { + Chassis.GearPosition gear = chassisStates.getGearSystemStates().getGearPosition(); + if (!AutopilotAbilityManager.getInstance().isLaunchAutopilot(gear)) { + isAutopilotAbility = false; + unableAutopilotReason = "档位不正常"; } } } - //TODO 关于手刹:不同车型的实现不同所以目前没法使用此字段 // if (isAutopilotAbility) { // //电子驻车制动系统 @@ -88,9 +59,7 @@ public class AutopilotAbility230 { // } // } } - if (AutopilotAbilityManager.getInstance().getListener() != null) { - AutopilotAbilityManager.getInstance().getListener().onAutopilotAbility(isAutopilotAbility, unableAutopilotReason); - } + AutopilotAbilityManager.getInstance().onAutopilotAbility(isAutopilotAbility, unableAutopilotReason); } public synchronized void start() { @@ -114,5 +83,4 @@ public class AutopilotAbility230 { } - } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility250.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility250.java index 01bf359101..0c459e56a6 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility250.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/common/autopilot/ability/AutopilotAbility250.java @@ -45,10 +45,6 @@ public class AutopilotAbility250 { } private void onCallback(SystemStatusInfo.StatusInfo statusInfo) { - //金旅、开沃小巴乘客端 不能启动自动驾驶 - if (AutopilotAbilityManager.getInstance().isBusPassenger()) { - return; - } boolean isAutopilotAbility = true;//是否能启动自动驾驶 String unableAutopilotReason = null;//不能启动自动驾驶原因 //检测节点状态相关 @@ -122,36 +118,14 @@ public class AutopilotAbility250 { } } if (isAutopilotAbility) { - /** - * 档位状态判断 目前判断的车型包括 东风Taxi 红旗Taxi 金旅Bus 金旅M1 金旅M1 福田清扫车 开沃 - * TODO 如果 identityMode 未赋值以及目前已知其他车型判断逻辑跟东风Taxi和红旗 走 - */ - //开沃任何档位都能启动自驾 - if (!AutopilotAbilityManager.getInstance().isBusDriverVan()) { - if (chassisStates.hasGearSystemStates()) { - Chassis.GearPosition gear = chassisStates.getGearSystemStates().getGearPosition(); - //金旅Bus和清扫车 档位不正常 - if (AutopilotAbilityManager.getInstance().isBusDriver()) { - if (gear == Chassis.GearPosition.GEAR_N || gear == Chassis.GearPosition.GEAR_R) { - isAutopilotAbility = false; - unableAutopilotReason = "档位不正常"; - } - } else if (AutopilotAbilityManager.getInstance().isSweeperDriverFutian()) { - if (gear == Chassis.GearPosition.GEAR_N) { - isAutopilotAbility = false; - unableAutopilotReason = "档位不正常"; - } - } else { - //东风Taxi和红旗 司机端和乘客端 档位不正常 - if (gear == Chassis.GearPosition.GEAR_P || gear == Chassis.GearPosition.GEAR_R) { - isAutopilotAbility = false; - unableAutopilotReason = "档位不正常"; - } - } + if (chassisStates.hasGearSystemStates()) { + Chassis.GearPosition gear = chassisStates.getGearSystemStates().getGearPosition(); + if (!AutopilotAbilityManager.getInstance().isLaunchAutopilot(gear)) { + isAutopilotAbility = false; + unableAutopilotReason = "档位不正常"; } } } - //TODO 关于手刹:不同车型的实现不同所以目前没法使用此字段 // if (isAutopilotAbility) { // //电子驻车制动系统 @@ -163,9 +137,7 @@ public class AutopilotAbility250 { // } // } } - if (AutopilotAbilityManager.getInstance().getListener() != null) { - AutopilotAbilityManager.getInstance().getListener().onAutopilotAbility(isAutopilotAbility, unableAutopilotReason); - } + AutopilotAbilityManager.getInstance().onAutopilotAbility(isAutopilotAbility, unableAutopilotReason); } public synchronized void start() { 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 1e80fe6805..429e08162f 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 @@ -10,11 +10,13 @@ import com.zhidao.support.adas.high.OnAdasListener; import com.zhidao.support.adas.high.common.Constants; import com.zhidao.support.adas.high.common.CupidLogUtils; +import java.util.Set; import java.util.Timer; import java.util.TimerTask; import java.util.regex.Matcher; import java.util.regex.Pattern; +import chassis.Chassis; import chassis.ChassisStatesOuterClass; import mogo.telematics.pad.MessagePad; import system_master.SystemStatusInfo; @@ -38,37 +40,14 @@ public class AutopilotAbilityManager { private AutopilotAbility250 autopilotAbility250; private Timer startTimer; /** - * 身份/车型 + * 不能启动自动驾驶的档位 */ - private String identityMode; + private Set unableLaunchAutopilotGear; public interface OnAutopilotAbilityListener { void onStatusQuery();//查询是被调用 } - /** - * 身份规则定义根据app/productFlavors/README.md - * * taxi司机屏 Taxi_Driver_Base (东风、红旗司机端) - * * taxi乘客屏 Taxi_Passenger_Base (东风、红旗乘客端) - * * bus司机屏 Bus_Driver_Base (金旅小巴司机端) - * * Bus_Driver_Van (开沃小巴司机端) - * * bus乘客屏 Bus_Passenger_Base (金旅、开沃小巴乘客端) - * * Bus_Passenger_M1 (M1小巴乘客端) - * * Bus_Passenger_M2 (M2小巴乘客端) - * * 清扫车 Sweeper_Driver_FT (福田清扫车司机端) - *

- * 此定义不区分角色,只区分业务线和车型 - */ - private interface IDENTITY_MODE { - String TAXI_DRIVER_BASE = "Taxi_Driver_Base";//(东风、红旗司机端) - String TAXI_PASSENGER_BASE = "Taxi_Passenger_Base";//(东风、红旗乘客端) - String BUS_DRIVER_BASE = "Bus_Driver_Base";//(金旅小巴司机端) - String BUS_DRIVER_VAN = "Bus_Driver_Van";//(开沃小巴司机端) - String BUS_PASSENGER_BASE = "Bus_Passenger_Base";//(金旅、开沃小巴乘客端) - String BUS_PASSENGER_M1 = "Bus_Passenger_M1";//(M1小巴乘客端) - String BUS_PASSENGER_M2 = "Bus_Passenger_M2";//(M2小巴乘客端) - String SWEEPER_DRIVER_FT = "Sweeper_Driver_FT";//(福田清扫车司机端) - } private AutopilotAbilityManager() { } @@ -84,8 +63,22 @@ public class AutopilotAbilityManager { return INSTANCE; } - public void setIdentityMode(String identityMode) { - this.identityMode = identityMode; + public void setUnableLaunchAutopilotGear(Set unableLaunchAutopilotGear) { + this.unableLaunchAutopilotGear = unableLaunchAutopilotGear; + } + + /** + * 获取当前档位是否能启动自动驾驶 如果不传递默认可以启动 + * 不能启动自驾档位规则:app/README.md/不能启动自动驾驶的档位 + * + * @param currentGear 当前档位 + * @return 是否能启动自驾 + */ + public boolean isLaunchAutopilot(Chassis.GearPosition currentGear) { + if (unableLaunchAutopilotGear != null && !unableLaunchAutopilotGear.isEmpty()) { + return !unableLaunchAutopilotGear.contains(currentGear); + } + return true; } public void setCarConfig(MessagePad.CarConfigResp carConfig) { @@ -105,8 +98,10 @@ public class AutopilotAbilityManager { this.listener = listener; } - public OnAdasListener getListener() { - return listener; + public void onAutopilotAbility(boolean isAutopilotAbility, String unableAutopilotReason) { + if (listener != null) { + listener.onAutopilotAbility(isAutopilotAbility, unableAutopilotReason); + } } public void setHandler(Handler handler) { @@ -243,32 +238,4 @@ public class AutopilotAbilityManager { } return version; } - - /** - * 金旅、开沃小巴乘客端 - */ - public boolean isBusPassenger() { - return IDENTITY_MODE.BUS_PASSENGER_BASE.equalsIgnoreCase(identityMode); - } - - /** - * 开沃小巴司机端 - */ - public boolean isBusDriverVan() { - return IDENTITY_MODE.BUS_DRIVER_VAN.equalsIgnoreCase(identityMode); - } - - /** - * 金旅小巴司机端 - */ - public boolean isBusDriver() { - return IDENTITY_MODE.BUS_DRIVER_BASE.equalsIgnoreCase(identityMode); - } - - /** - * 福田清扫车司机端 - */ - public boolean isSweeperDriverFutian() { - return IDENTITY_MODE.SWEEPER_DRIVER_FT.equalsIgnoreCase(identityMode); - } } From 1fc73dc09728a41e306056e7a270e3b7980b7892 Mon Sep 17 00:00:00 2001 From: xinfengkun Date: Tue, 28 Feb 2023 16:27:12 +0800 Subject: [PATCH 10/17] =?UTF-8?q?[=E5=B7=A5=E6=8E=A7=E6=9C=BA=E7=9B=91?= =?UTF-8?q?=E6=8E=A7]=E9=AA=8C=E8=AF=81=E5=90=84=E8=BD=A6=E5=9E=8B?= =?UTF-8?q?=E6=A1=A3=E4=BD=8D=E5=AF=B9=E8=87=AA=E5=8A=A8=E9=A9=BE=E9=A9=B6?= =?UTF-8?q?=E7=9A=84=E5=BD=B1=E5=93=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhidao/adas/client/ui/MainActivity.java | 1 + .../adas/client/ui/VersionFragment.java | 105 +++++++----- .../src/main/res/layout/fragment_version.xml | 151 +++++++++++++++++- .../ability/AutopilotAbilityManager.java | 3 +- 4 files changed, 212 insertions(+), 48 deletions(-) diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java index 45b6b6c46d..6e2cd0d297 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/MainActivity.java @@ -1129,6 +1129,7 @@ public class MainActivity extends BaseActivity implements OnAdasListener, OnAdas } }, "1234567");*/ } + options.setUnableLaunchAutopilotGear(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_TAXI); AdasManager.getInstance().create(options, this); AdasManager.getInstance().setOnAdasListener(this); /*两端数据转发 注释掉 diff --git a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/VersionFragment.java b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/VersionFragment.java index 733e70d9ae..6bbb4b3825 100644 --- a/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/VersionFragment.java +++ b/app_ipc_monitoring/src/main/java/com/zhidao/adas/client/ui/VersionFragment.java @@ -13,6 +13,8 @@ import android.widget.Button; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.EditText; +import android.widget.RadioButton; +import android.widget.RadioGroup; import android.widget.Spinner; import android.widget.TextView; import android.widget.Toast; @@ -41,6 +43,7 @@ import com.zhidao.support.adas.high.common.autopilot.ability.AutopilotAbilityMan import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Arrays; import java.util.Date; import java.util.HashSet; import java.util.List; @@ -64,11 +67,16 @@ public class VersionFragment extends BaseFragment { private CheckBox unregistered_check_all; private TextView hint_registered; private TextView hint_unregistered; + private TextView can; + private TextView gear_influence; + private TextView gear; + private TextView title_gear; + private RadioButton rb_taxi; + private RadioGroup rg; private ConfigAdapter adapter; private InterfaceAdapter unregisteredAdapter; private InterfaceAdapter registeredAdapter; - private Set[] unableGears; private int role = Constants.TERMINAL_ROLE.DEBUG;//角色 默认调试屏 @@ -134,6 +142,12 @@ public class VersionFragment extends BaseFragment { Button btn2 = view.findViewById(R.id.btn2); ipsView = view.findViewById(R.id.ips_view); recyclerView = view.findViewById(R.id.config_list); + rb_taxi = view.findViewById(R.id.rb_taxi); + can = view.findViewById(R.id.can); + gear_influence = view.findViewById(R.id.gear_influence); + gear = view.findViewById(R.id.gear); + title_gear = view.findViewById(R.id.title_gear); + rg = view.findViewById(R.id.rg); initFragmentRecyclerView(); CupidLogUtils.w("InfoFragment===>" + title); tvTitle.setText(title); @@ -176,7 +190,36 @@ public class VersionFragment extends BaseFragment { view.findViewById(R.id.line1).setVisibility(View.GONE); tvTitle.setText("版本"); } + rg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(RadioGroup group, int checkedId) { + if (checkedId == R.id.rb_taxi) { + AutopilotAbilityManager.getInstance().setUnableLaunchAutopilotGear(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_TAXI); + gear("TAXI", Arrays.toString(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_TAXI.toArray())); + } else if (checkedId == R.id.rb_bus) { + AutopilotAbilityManager.getInstance().setUnableLaunchAutopilotGear(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_BUS); + gear("BUS", Arrays.toString(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_BUS.toArray())); + } else if (checkedId == R.id.rb_sweeper) { + AutopilotAbilityManager.getInstance().setUnableLaunchAutopilotGear(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_SWEEPER); + gear("SWEEPER", Arrays.toString(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_SWEEPER.toArray())); + } else if (checkedId == R.id.rb_m1) { + AutopilotAbilityManager.getInstance().setUnableLaunchAutopilotGear(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_M1); + gear("M1", "无限制"); + } else if (checkedId == R.id.rb_m2) { + AutopilotAbilityManager.getInstance().setUnableLaunchAutopilotGear(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_M2); + gear("M1", Arrays.toString(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_M2.toArray())); + } else if (checkedId == R.id.rb_van) { + AutopilotAbilityManager.getInstance().setUnableLaunchAutopilotGear(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_VAN); + gear("VAN", "无限制"); + } + } + }); + gear("TAXI", Arrays.toString(BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_TAXI.toArray())); + } + private void gear(String car, String gear) { + title_gear.setText(car + "不能启动自动驾驶的档位:"); + this.gear.setText(gear); } //根据连接状态更新数据 @@ -218,59 +261,37 @@ public class VersionFragment extends BaseFragment { list.add(new Config("ADAS LIB版本:", AdasManager.getInstance().getAdasVersion())); list.add(new Config("APP构建时间:", BuildConfig.BUILD_TIME)); - list.add(getAutopilotAbilityConfig("")); - list.add(gear()); adapter.setData(list); } - private Config gear() { + private String gear() { StringBuilder builder = new StringBuilder(); Chassis.GearPosition gear = App.INSTANCE.gear; if (gear != null) { - if (unableGears == null) { - unableGears = new Set[6]; - unableGears[0] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_BUS; - unableGears[1] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_M1; - unableGears[2] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_M2; - unableGears[3] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_SWEEPER; - unableGears[4] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_TAXI; - unableGears[5] = BuildConfig.UNABLE_LAUNCH_AUTOPILOT_GEAR_VAN; - } - for (int j = 0; j < unableGears.length; j++) { - String type = ""; - if (j == 0) { - type = "BUS"; - } else if (j == 1) { - type = "M1"; - } else if (j == 2) { - type = "M2"; - } else if (j == 3) { - type = "SWEEPER"; - } else if (j == 4) { - type = "TAXI"; - } else if (j == 5) { - type = "VAN"; - } - AutopilotAbilityManager.getInstance().setUnableLaunchAutopilotGear(unableGears[j]); - boolean b = AutopilotAbilityManager.getInstance().isLaunchAutopilot(gear); - builder.append("车型:").append(type); - builder.append(" 当前档位:").append(gear.name()); - builder.append(" 是否可以启动自驾:").append(b).append('\n'); - } + boolean b = AutopilotAbilityManager.getInstance().isLaunchAutopilot(gear); + builder.append(" 当前档位:").append(gear.name()); + builder.append(" 是否可以启动自驾:").append(b); } - return new Config("档位影响:", builder.toString()); + return builder.toString(); } - private Config getAutopilotAbilityConfig(String value) { - return new Config("能否启动自动驾驶:", value); + private String getAutopilotAbilityConfig(String value) { + return value; } public void autopilotAbility(boolean isAutopilotAbility, String unableAutopilotReason) { - List list = adapter.getData(); - if (list != null) { - updateRefreshConfig(list, getAutopilotAbilityConfig(isAutopilotAbility + ",原因:" + unableAutopilotReason)); - updateRefreshConfig(list, gear()); - } + if (getActivity() != null) + getActivity().runOnUiThread(new Runnable() { + @Override + public void run() { + can.setTextColor(getResources().getColor(RandomColor.randomColor())); + can.setText(getAutopilotAbilityConfig(isAutopilotAbility + ",原因:" + unableAutopilotReason)); + gear_influence.setTextColor(getResources().getColor(RandomColor.randomColor())); + gear_influence.setText(gear()); + } + }); + + } private void updateRefreshConfig(List list, Config temp) { diff --git a/app_ipc_monitoring/src/main/res/layout/fragment_version.xml b/app_ipc_monitoring/src/main/res/layout/fragment_version.xml index 0b6016f93b..2f68eb3f7d 100644 --- a/app_ipc_monitoring/src/main/res/layout/fragment_version.xml +++ b/app_ipc_monitoring/src/main/res/layout/fragment_version.xml @@ -33,12 +33,155 @@ android:layout_margin="20dp" android:orientation="horizontal"> - - + android:layout_weight="1"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { + return@observable + } + if (FunctionBuildConfig.isDemoMode) { + return@observable + } + if (newValue) { + ToastUtils.showLong("长链接状态恢复") + } else { + ToastUtils.showLong("长链接异常,请开启相应权限或者查看网络") + } + } - private var looperDisposable : Disposable? = null + private var looperDisposable: Disposable? = null - fun startLoopAbnormalFactors(context: Context){ - if (looperDisposable != null && !looperDisposable!!.isDisposed){ + fun startLoopAbnormalFactors(context: Context) { + if (looperDisposable != null && !looperDisposable!!.isDisposed) { return } i(TAG, "startLoopAbnormalFactors()") looperDisposable = Observable.interval(LOOP_DELAY, LOOP_TIME, TimeUnit.MILLISECONDS) - .map { aLong -> aLong+1 } + .map { aLong -> aLong + 1 } .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe{ aLong -> checkAbnormalFactors(context)} + .subscribe { aLong -> checkAbnormalFactors(context) } //长链接监听 - MogoStatusManager.getInstance().registerStatusChangedListener(TAG, - StatusDescriptor.CLOUD_SOCKET,this) + MogoStatusManager.getInstance().registerStatusChangedListener( + TAG, + StatusDescriptor.CLOUD_SOCKET, this + ) } private fun checkAbnormalFactors(context: Context) { @@ -54,14 +68,15 @@ object AbnormalFactorsLoopManager : IMogoStatusChangedListener { var networkStatus = false //定位权限 - locationStatusPermsStatus = !(!PermissionUtil.isLocServiceEnable(context) || !PermissionUtil.checkPermission( - context, *arrayOf( - Manifest.permission.ACCESS_FINE_LOCATION - ) - )) + locationStatusPermsStatus = + !(!PermissionUtil.isLocServiceEnable(context) || !PermissionUtil.checkPermission( + context, *arrayOf( + Manifest.permission.ACCESS_FINE_LOCATION + ) + )) //网络状态或者网络权限是否打开 - if (NetworkUtils.isConnected(context)){ + if (NetworkUtils.isConnected(context)) { networkStatus = true } //长链接状态 socketStatus @@ -70,28 +85,27 @@ object AbnormalFactorsLoopManager : IMogoStatusChangedListener { if (!locationStatusPermsStatus) toastStr += "定位服务异常 " if (!networkStatus) toastStr += " 网络异常 " - //乘客屏不显示长链接异常 - if (!socketStatus && !AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) toastStr += " 长链接异常 " - i(TAG, "abnormal_factors_Str = $toastStr") - if (!FunctionBuildConfig.isDemoMode && toastStr !== ""){ + if (!FunctionBuildConfig.isDemoMode && toastStr !== "") { ToastUtils.showLong(toastStr + "请开启相应权限或者查看网络") } } - fun stopLoopAbnormalFactors(){ + fun stopLoopAbnormalFactors() { looperDisposable!!.dispose() looperDisposable == null - MogoStatusManager.getInstance().unregisterStatusChangedListener(TAG, - StatusDescriptor.CLOUD_SOCKET,this) + MogoStatusManager.getInstance().unregisterStatusChangedListener( + TAG, + StatusDescriptor.CLOUD_SOCKET, this + ) } override fun onStatusChanged(descriptor: StatusDescriptor?, isTrue: Boolean) { //长链接监听、 - if (StatusDescriptor.CLOUD_SOCKET == descriptor){ + if (StatusDescriptor.CLOUD_SOCKET == descriptor) { socketStatus = isTrue } } diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoPrivateObuNewManager.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoPrivateObuNewManager.kt index a4b0d19ddb..a9c89ae9f0 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoPrivateObuNewManager.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/obu/MogoPrivateObuNewManager.kt @@ -684,12 +684,9 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener { when (appId) { //前向碰撞预警 MogoObuConstants.V2X_WARNING_TYPE.FCW.toString() -> { - if (FunctionBuildConfig.isObuWarningFusionUnion) { + if (FunctionBuildConfig.isObuWarningFusionUnion && level == 3) { alertContent = "前车距离过近" ttsContent = "前车距离过近" - CallerObuWarningListenerManager.invokeTrackerFusionData( - ObuManager.getInstance().obuRvToTrackedObject(info) - ) } else { alertContent = EventTypeEnumNew.getWarningContent(EventTypeEnumNew.TYPE_USECASE_ID_FCW.poiType) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/MapIdentifySubscriber.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/MapIdentifySubscriber.kt index fa308abe33..247ccf5524 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/MapIdentifySubscriber.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/MapIdentifySubscriber.kt @@ -94,21 +94,6 @@ class MapIdentifySubscriber private constructor() : IMoGoIdentifyListener, IMoGo } } - override fun updateTrackerFusionData(trackObject: TrackedObject?) { - super.updateTrackerFusionData(trackObject) - try { - if (FunctionBuildConfig.isObuWarningFusionUnion) { - ThreadUtils.getSinglePool().execute { - //todo emArrow - } - } else { - - } - } catch (e: Exception) { - e.printStackTrace() - } - } - override fun updateTrackerWarningInfo(trafficData: TrafficData) { super.updateTrackerWarningInfo(trafficData) try { diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt index 556522a191..16487b5bb0 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/FunctionBuildConfig.kt @@ -96,7 +96,7 @@ object FunctionBuildConfig { */ @Volatile @JvmField - var isObuWarningFusionUnion = false + var isObuWarningFusionUnion = true /** * 当前APP的身份模式 diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/obu/IMoGoObuStatusListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/obu/IMoGoObuStatusListener.kt index 72980475f5..8361926b37 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/obu/IMoGoObuStatusListener.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/obu/IMoGoObuStatusListener.kt @@ -1,7 +1,6 @@ package com.mogo.eagle.core.function.api.obu import com.mogo.eagle.core.data.traffic.TrafficData -import mogo.telematics.pad.MessagePad /** * @author xiaoyuzhou @@ -17,13 +16,6 @@ interface IMoGoObuStatusListener { } - /** - * obu Tracker data - */ - fun updateTrackerFusionData(trackObject: MessagePad.TrackedObject?){ - - } - /** * 更新obu Tracker 预警信息 */ diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/obu/CallerObuWarningListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/obu/CallerObuWarningListenerManager.kt index 0e94a35120..04b9defdea 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/obu/CallerObuWarningListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/obu/CallerObuWarningListenerManager.kt @@ -20,13 +20,6 @@ object CallerObuWarningListenerManager : CallerBase() { } } - fun invokeTrackerFusionData(trackObject: MessagePad.TrackedObject?){ - M_LISTENERS.forEach { - val listener = it.value - listener.updateTrackerFusionData(trackObject) - } - } - fun invokeTrackerWarningInfo(trafficData: TrafficData) { M_LISTENERS.forEach { val listener = it.value From bdb516ab49b70d65b0960527af9da45217ea8371 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 28 Feb 2023 20:13:49 +0800 Subject: [PATCH 12/17] [2.13.0-arch-opt] dispatch upload --- .../biz/dispatch/DispatchAutoPilotManager.kt | 23 ++++++++++++------- .../dispatch/network/DispatchServiceModel.kt | 2 +- .../network/IDispatchAdasApiService.kt | 2 +- .../identify/IdentifyOriginDataDrawer.kt | 4 +--- .../business/identify/TrackManager.java | 1 - .../main/java/com/mogo/map/AMapWrapper.java | 4 ---- 6 files changed, 18 insertions(+), 18 deletions(-) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/DispatchAutoPilotManager.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/DispatchAutoPilotManager.kt index c7c48c012e..7dfd3190a9 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/DispatchAutoPilotManager.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/DispatchAutoPilotManager.kt @@ -41,6 +41,7 @@ class DispatchAutoPilotManager private constructor() : private const val MSG_SOCKET_TYPE = 501000 private const val MSG_TYPE_SHOW_DIALOG = 0 private const val MSG_TYPE_UPLOAD_AUTOPILOT_STATUS = 1 + private const val MSG_TYPE_UPLOAD_AUTOPILOT_ROTTING = 2 val dispatchAutoPilotManager by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { DispatchAutoPilotManager() @@ -68,6 +69,16 @@ class DispatchAutoPilotManager private constructor() : getAutoPilotStatusInfo().reason ) sendEmptyMessageDelayed(MSG_TYPE_UPLOAD_AUTOPILOT_STATUS, 1000L) + } else if(msg.what == MSG_TYPE_UPLOAD_AUTOPILOT_ROTTING){ + val data = msg.obj as MessagePad.GlobalPathResp + val list: MutableList = ArrayList() + for (location in data.wayPointsList) { + val routeModels = AutopilotRouteInfo.RouteModels() + routeModels.lat = location.latitude + routeModels.lon = location.longitude + list.add(routeModels) + } + dispatchServiceModel.uploadAutopilotRoute(list) } } } @@ -165,14 +176,10 @@ class DispatchAutoPilotManager private constructor() : if (globalPathResp == null || globalPathResp.wayPointsList.isEmpty()) { return } - val list: MutableList = ArrayList() - for (location in globalPathResp.wayPointsList) { - val routeModels = AutopilotRouteInfo.RouteModels() - routeModels.lat = location.latitude - routeModels.lon = location.longitude - list.add(routeModels) - } - dispatchServiceModel.uploadAutopilotRoute(list) + val message = Message() + message.what = MSG_TYPE_UPLOAD_AUTOPILOT_ROTTING + message.obj = globalPathResp + handler.sendMessage(message) } override fun onAutopilotArriveAtStation(arrivalNotification: MessagePad.ArrivalNotification?) { diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/DispatchServiceModel.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/DispatchServiceModel.kt index a2ffd09f4d..1f5fa404b7 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/DispatchServiceModel.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/DispatchServiceModel.kt @@ -76,7 +76,7 @@ class DispatchServiceModel private constructor() { fun uploadAutopilotRoute(list: List?) { val sn = MoGoAiCloudClientConfig.getInstance().sn val reportedRoute = ReportedRoute(sn, GsonUtil.jsonFromObject(list)) - val map: MutableMap = HashMap() + val map: MutableMap = HashMap() map["sn"] = sn map["data"] = GsonUtil.jsonFromObject(reportedRoute) mAdasApiService.uploadAutopilotRoute(map) diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/IDispatchAdasApiService.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/IDispatchAdasApiService.kt index 4c018f2030..dbdc2e34c7 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/IDispatchAdasApiService.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/dispatch/network/IDispatchAdasApiService.kt @@ -15,7 +15,7 @@ interface IDispatchAdasApiService { */ @FormUrlEncoded @POST("eagle-eye-dns/eagle-eye-dns/dataService/autoDriver/receiveCarPreSetPath") - fun uploadAutopilotRoute(@FieldMap parameters: Map): Observable + fun uploadAutopilotRoute(@FieldMap parameters: Map): Observable /** * 上报自动驾驶调度处理结果 服务于业务调度 diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/IdentifyOriginDataDrawer.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/IdentifyOriginDataDrawer.kt index 72052c3a59..ee7b05a06f 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/IdentifyOriginDataDrawer.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/IdentifyOriginDataDrawer.kt @@ -102,7 +102,6 @@ class IdentifyOriginDataDrawer : Identify { @SuppressLint("NewApi") private fun filterTrafficData(trafficData: List): HashMap { mFilterTrafficData.clear() - trafficDataUuidList.clear() for (data in trafficData) { // 过滤掉未知感知数据 if (TrackerSourceColorHelper.filterData(data)) { @@ -110,13 +109,12 @@ class IdentifyOriginDataDrawer : Identify { } var temp: TrackedObject = data val uuid = "" + data.uuid - //首次过来的数据不添加,首次未添加的感知物在调用完绘制方法后再塞入cache map val cacheData = mMarkersCaches[uuid] if (cacheData != null) { val color = TrackerSourceColorHelper.getDefaultColor(data) temp = data.toBuilder().setColor(color).build() - mFilterTrafficData[uuid] = temp } + mFilterTrafficData[uuid] = temp mMarkersCaches[uuid] = temp trafficDataUuidList.add(uuid) } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackManager.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackManager.java index b4d2daa6c6..2e33808a9b 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackManager.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackManager.java @@ -2,7 +2,6 @@ package com.mogo.eagle.core.function.business.identify; import android.annotation.SuppressLint; import android.os.Build; -import android.util.Log; import androidx.annotation.RequiresApi; diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java b/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java index a517eca07a..bdb37aee1a 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/AMapWrapper.java @@ -3,7 +3,6 @@ package com.mogo.map; import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Point; -import android.util.Log; import android.util.Pair; import com.mogo.eagle.core.data.config.FunctionBuildConfig; @@ -126,9 +125,6 @@ public class AMapWrapper implements IMogoMap { MarkerSimpleData markerOptions = ObjectUtils.fromTrafficData(trackedObject); if (markerOptions != null) { markerOptionsArrayList.add(markerOptions); - if(markerOptions.id == 65061){ - Log.i("emArrow","time :" + markerOptions.time + " , lat : " + markerOptions.lat + " , lon : " + markerOptions.lon); - } } }); long time = markerOptionsArrayList.get(0).getTime(); From 92f8f45e9acd49124d9efaf017438781795c7439 Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Tue, 28 Feb 2023 20:55:15 +0800 Subject: [PATCH 13/17] =?UTF-8?q?[Opt3.0]=E6=94=AF=E6=8C=81=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E9=AB=98=E5=BE=B7=E5=9C=B0=E5=9B=BE=E5=8F=AF=E9=80=89?= =?UTF-8?q?=E8=8C=83=E5=9B=B4=E7=9A=84padding?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/eagle/core/function/view/OverMapView.kt | 16 ++++++++++++---- .../src/main/res/values/attrs.xml | 5 +++++ 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt index 7470a9932c..9e1bbe7601 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt @@ -71,6 +71,10 @@ class OverMapView @JvmOverloads constructor( private var resetDrawableMarginRight: Int = -1 private var resetDrawableMarginBottom: Int = -1 private var isClearArrived: Boolean = false + private var leftPadding: Int = 100 + private var topPadding: Int = 100 + private var rightPadding: Int = 100 + private var bottomPadding: Int = 100 private var mMapView: TextureMapView? = null private var mAMap: AMap? = null @@ -136,6 +140,10 @@ class OverMapView @JvmOverloads constructor( AutoSizeUtils.dp2px(context, 40f) ) isClearArrived = typedArray.getBoolean(R.styleable.OverMapView_isClearArrived, false) + leftPadding = typedArray.getInt(R.styleable.OverMapView_leftPadding, 100) + topPadding = typedArray.getInt(R.styleable.OverMapView_topPadding, 100) + rightPadding = typedArray.getInt(R.styleable.OverMapView_rightPadding, 100) + bottomPadding = typedArray.getInt(R.styleable.OverMapView_bottomPadding, 100) typedArray.recycle() initView(context) } catch (e: Exception) { @@ -559,10 +567,10 @@ class OverMapView @JvmOverloads constructor( mAMap!!.moveCamera( CameraUpdateFactory.newLatLngBoundsRect( boundsBuilder.build(), - 100, - 100, - 100, - 100 + leftPadding, + rightPadding, + topPadding, + bottomPadding ) ) mAMap!!.moveCamera(CameraUpdateFactory.newCameraPosition(cameraPosition)) diff --git a/core/function-impl/mogo-core-function-map/src/main/res/values/attrs.xml b/core/function-impl/mogo-core-function-map/src/main/res/values/attrs.xml index 0d3349fc35..15a5585362 100644 --- a/core/function-impl/mogo-core-function-map/src/main/res/values/attrs.xml +++ b/core/function-impl/mogo-core-function-map/src/main/res/values/attrs.xml @@ -24,5 +24,10 @@ + + + + + \ No newline at end of file From b43476c229494235219bfa5e0bd5ce32cea9ad8c Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Tue, 28 Feb 2023 20:55:15 +0800 Subject: [PATCH 14/17] =?UTF-8?q?[Opt3.0]=E6=94=AF=E6=8C=81=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E9=AB=98=E5=BE=B7=E5=9C=B0=E5=9B=BE=E5=8F=AF=E9=80=89?= =?UTF-8?q?=E8=8C=83=E5=9B=B4=E7=9A=84padding?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/eagle/core/function/view/OverMapView.kt | 16 ++++++++++++---- .../src/main/res/values/attrs.xml | 5 +++++ 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt index 7470a9932c..9e1bbe7601 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt @@ -71,6 +71,10 @@ class OverMapView @JvmOverloads constructor( private var resetDrawableMarginRight: Int = -1 private var resetDrawableMarginBottom: Int = -1 private var isClearArrived: Boolean = false + private var leftPadding: Int = 100 + private var topPadding: Int = 100 + private var rightPadding: Int = 100 + private var bottomPadding: Int = 100 private var mMapView: TextureMapView? = null private var mAMap: AMap? = null @@ -136,6 +140,10 @@ class OverMapView @JvmOverloads constructor( AutoSizeUtils.dp2px(context, 40f) ) isClearArrived = typedArray.getBoolean(R.styleable.OverMapView_isClearArrived, false) + leftPadding = typedArray.getInt(R.styleable.OverMapView_leftPadding, 100) + topPadding = typedArray.getInt(R.styleable.OverMapView_topPadding, 100) + rightPadding = typedArray.getInt(R.styleable.OverMapView_rightPadding, 100) + bottomPadding = typedArray.getInt(R.styleable.OverMapView_bottomPadding, 100) typedArray.recycle() initView(context) } catch (e: Exception) { @@ -559,10 +567,10 @@ class OverMapView @JvmOverloads constructor( mAMap!!.moveCamera( CameraUpdateFactory.newLatLngBoundsRect( boundsBuilder.build(), - 100, - 100, - 100, - 100 + leftPadding, + rightPadding, + topPadding, + bottomPadding ) ) mAMap!!.moveCamera(CameraUpdateFactory.newCameraPosition(cameraPosition)) diff --git a/core/function-impl/mogo-core-function-map/src/main/res/values/attrs.xml b/core/function-impl/mogo-core-function-map/src/main/res/values/attrs.xml index 0d3349fc35..15a5585362 100644 --- a/core/function-impl/mogo-core-function-map/src/main/res/values/attrs.xml +++ b/core/function-impl/mogo-core-function-map/src/main/res/values/attrs.xml @@ -24,5 +24,10 @@ + + + + + \ No newline at end of file From 64d9881231423dcb185798d50f276d9af2848bf1 Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Tue, 28 Feb 2023 21:18:18 +0800 Subject: [PATCH 15/17] =?UTF-8?q?[Opt3.0][fix]=E5=85=A8=E8=A7=88=E6=A8=A1?= =?UTF-8?q?=E5=BC=8FUI=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/m2/res/layout/p_m2_driving_info_fragment.xml | 4 +++- .../java/com/mogo/eagle/core/function/view/OverMapView.kt | 8 ++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml b/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml index dabeba3381..99216870b5 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml +++ b/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml @@ -17,7 +17,9 @@ app:resetDrawableMarginBottom="@dimen/dp_54" app:carDrawable = "@drawable/m2_map_car_icon" app:startPointDrawable="@drawable/m2_map_start_icon" - app:endPointDrawable="@drawable/m2_map_end_icon"/> + app:endPointDrawable="@drawable/m2_map_end_icon" + app:leftPadding="400" + /> Date: Tue, 28 Feb 2023 21:19:46 +0800 Subject: [PATCH 16/17] =?UTF-8?q?[Opt3.0][fix]=E5=85=A8=E8=A7=88=E6=A8=A1?= =?UTF-8?q?=E5=BC=8FUI=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/mogo/eagle/core/function/view/OverMapView.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt index 9e1bbe7601..ba19fa3bb6 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/OverMapView.kt @@ -567,10 +567,10 @@ class OverMapView @JvmOverloads constructor( mAMap!!.moveCamera( CameraUpdateFactory.newLatLngBoundsRect( boundsBuilder.build(), - leftPadding, - rightPadding, - topPadding, - bottomPadding + AutoSizeUtils.dp2px(context, leftPadding.toFloat()), + AutoSizeUtils.dp2px(context, rightPadding.toFloat()), + AutoSizeUtils.dp2px(context, topPadding.toFloat()), + AutoSizeUtils.dp2px(context, bottomPadding.toFloat()) ) ) mAMap!!.moveCamera(CameraUpdateFactory.newCameraPosition(cameraPosition)) From 4051b982cafda22ce83516c5c05f01c9c333136b Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Tue, 28 Feb 2023 18:15:57 +0800 Subject: [PATCH 17/17] =?UTF-8?q?[m1][Update]=E5=A2=9E=E5=8A=A0=E5=AE=9A?= =?UTF-8?q?=E4=BD=8D=E5=A4=84=E7=90=86=E6=97=B6=E9=97=B4=E7=9A=84=E6=97=A5?= =?UTF-8?q?=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CallerChassisLocationGCJ02ListenerManager.kt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerChassisLocationGCJ02ListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerChassisLocationGCJ02ListenerManager.kt index 0c20a62a84..f567eb2b19 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerChassisLocationGCJ02ListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerChassisLocationGCJ02ListenerManager.kt @@ -1,5 +1,6 @@ package com.mogo.eagle.core.function.call.autopilot +import com.mogo.commons.debug.DebugConfig import com.mogo.eagle.core.data.enums.DataSourceType import com.mogo.eagle.core.data.map.MogoLocation import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener @@ -99,7 +100,13 @@ object CallerChassisLocationGCJ02ListenerManager : CallerBase