From 66db271f6c16ec8c1921950b794427f16c989184 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Mon, 30 Jan 2023 22:29:40 +0800 Subject: [PATCH] [2.13.0-arch-opt] merg --- .../src/main/res/layout/bus_base_fragment.xml | 1 + OCH/mogo-och-noop/build.gradle | 19 ++++++++---- .../java/com/mogo/och/noop/OCHConstants.java | 2 +- .../java/com/mogo/och/noop/OchNoopFragment.kt | 3 +- .../main/res/layout/och_noop_fragment_hmi.xml | 12 +++---- .../main/res/layout/taxi_base_fragment.xml | 1 + app/productFlavors/fPadLenovo.gradle | 2 +- .../eagle/function/biz/FuncBizProvider.kt | 6 ++-- .../v2x/speedlimit/SpeedLimitDispatcher.kt | 2 +- .../mogo-core-function-hmi/build.gradle | 1 - .../receiver/V2XWarningBroadcastReceiver.kt | 4 ++- .../function/hmi/ui/tools/ToolsImageView.kt | 2 +- .../hmi/ui/widget/AutoPilotStatusView.kt | 7 +---- .../function/main/MainLauncherActivity.java | 6 +++- .../res/layout/view_limiting_speed_vr.xml | 8 ++--- .../business}/SpeedLimitDataManager.java | 31 +++++++------------ .../eagle/core/function/map/MapFragment.kt | 3 ++ 17 files changed, 52 insertions(+), 58 deletions(-) rename core/function-impl/{mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/speedlimit => mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business}/SpeedLimitDataManager.java (61%) diff --git a/OCH/mogo-och-bus/src/main/res/layout/bus_base_fragment.xml b/OCH/mogo-och-bus/src/main/res/layout/bus_base_fragment.xml index 8cc5bfec82..da6d779a3b 100644 --- a/OCH/mogo-och-bus/src/main/res/layout/bus_base_fragment.xml +++ b/OCH/mogo-och-bus/src/main/res/layout/bus_base_fragment.xml @@ -68,6 +68,7 @@ android:layout_height="wrap_content" android:layout_marginTop="@dimen/hmi_traffic_light_layout_margin_top" android:layout_marginEnd="@dimen/hmi_traffic_light_layout_margin_right" + android:visibility="gone" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/OCH/mogo-och-noop/build.gradle b/OCH/mogo-och-noop/build.gradle index d9254953fe..835c4f0715 100644 --- a/OCH/mogo-och-noop/build.gradle +++ b/OCH/mogo-och-noop/build.gradle @@ -1,5 +1,10 @@ -apply plugin: 'com.android.library' -apply plugin: 'com.alibaba.arouter' +plugins { + id 'com.android.library' + id 'kotlin-android' + id 'kotlin-android-extensions' + id 'kotlin-kapt' + id 'com.alibaba.arouter' +} android { compileSdkVersion rootProject.ext.android.compileSdkVersion @@ -13,10 +18,11 @@ android { testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles "consumer-rules.pro" - - javaCompileOptions { - annotationProcessorOptions { - arguments = [AROUTER_MODULE_NAME: project.getName()] + //ARouter apt 参数 + kapt { + useBuildCache = false + arguments { + arg("AROUTER_MODULE_NAME", project.getName()) } } } @@ -43,6 +49,7 @@ dependencies { implementation rootProject.ext.dependencies.arouter annotationProcessor rootProject.ext.dependencies.aroutercompiler + kapt rootProject.ext.dependencies.aroutercompiler if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { implementation rootProject.ext.dependencies.mogoutils diff --git a/OCH/mogo-och-noop/src/main/java/com/mogo/och/noop/OCHConstants.java b/OCH/mogo-och-noop/src/main/java/com/mogo/och/noop/OCHConstants.java index b0893ba9f8..8a5d17c35a 100644 --- a/OCH/mogo-och-noop/src/main/java/com/mogo/och/noop/OCHConstants.java +++ b/OCH/mogo-och-noop/src/main/java/com/mogo/och/noop/OCHConstants.java @@ -12,5 +12,5 @@ class OCHConstants { /** * arouter 路由地址 */ - public static final String PATH = "/och/noop/api"; + public static final String PATH = "/noop/api"; } diff --git a/OCH/mogo-och-noop/src/main/java/com/mogo/och/noop/OchNoopFragment.kt b/OCH/mogo-och-noop/src/main/java/com/mogo/och/noop/OchNoopFragment.kt index 26b72274dc..745f4e0ab3 100644 --- a/OCH/mogo-och-noop/src/main/java/com/mogo/och/noop/OchNoopFragment.kt +++ b/OCH/mogo-och-noop/src/main/java/com/mogo/och/noop/OchNoopFragment.kt @@ -3,7 +3,7 @@ package com.mogo.och.noop import android.view.View import com.mogo.commons.mvp.MvpFragment import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView -import kotlinx.android.synthetic.main.fragment_hmi.* +import kotlinx.android.synthetic.main.och_noop_fragment_hmi.* class OchNoopFragment : MvpFragment(), OchNoopContract.View { @@ -25,7 +25,6 @@ class OchNoopFragment : MvpFragment(), } override fun initViews() { - viewShowDebugView.setOnLongClickListener { ToggleDebugView.toggleDebugView.toggle(requireContext()) true diff --git a/OCH/mogo-och-noop/src/main/res/layout/och_noop_fragment_hmi.xml b/OCH/mogo-och-noop/src/main/res/layout/och_noop_fragment_hmi.xml index fb1bec67f4..34c117a11e 100644 --- a/OCH/mogo-och-noop/src/main/res/layout/och_noop_fragment_hmi.xml +++ b/OCH/mogo-och-noop/src/main/res/layout/och_noop_fragment_hmi.xml @@ -67,8 +67,7 @@ android:layout_marginTop="@dimen/module_mogo_autopilot_status_margin_top" android:elevation="@dimen/dp_10" app:layout_constraintLeft_toLeftOf="@+id/viewSpeedChart" - app:layout_constraintTop_toBottomOf="@+id/viewSpeedChart" - app:layout_goneMarginStart="@dimen/module_mogo_autopilot_status_margin_left" /> + app:layout_constraintTop_toBottomOf="@+id/viewSpeedChart"/> + app:layout_constraintRight_toRightOf="parent" + app:layout_constraintTop_toBottomOf="@+id/ivCameraIcon" /> diff --git a/app/productFlavors/fPadLenovo.gradle b/app/productFlavors/fPadLenovo.gradle index 3f81f59165..1ad7d6b469 100644 --- a/app/productFlavors/fPadLenovo.gradle +++ b/app/productFlavors/fPadLenovo.gradle @@ -24,7 +24,7 @@ project.android.productFlavors { buildConfigField 'int', 'GPS_PROVIDER', "1" // 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则 - buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Taxi_Driver_Base\"" + buildConfigField 'String', 'APP_IDENTITY_MODE', "\"FPad_Noop_Base\"" // 连接的工控机IP地址 buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.104\"" // 构建的是否是演示(美化)模式 diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt index 528509bea4..d0831a75ef 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/FuncBizProvider.kt @@ -10,7 +10,6 @@ import com.mogo.eagle.function.biz.dispatch.DispatchAutoPilotManager.Companion.d import com.mogo.eagle.function.biz.monitoring.CronTaskManager.Companion.cronTaskManager import com.mogo.eagle.function.biz.notice.NoticeSocketManager.Companion.noticeSocketManager import com.mogo.eagle.function.biz.notice.network.NoticeNetWorkManager -import com.mogo.eagle.function.biz.v2x.speedlimit.SpeedLimitDataManager import com.mogo.eagle.function.biz.v2x.speedlimit.SpeedLimitDispatcher import com.mogo.eagle.function.biz.v2x.trafficlight.core.MogoTrafficLightManager import com.mogo.eagle.function.biz.v2x.trafficlight.core.TrafficLightDispatcher @@ -28,10 +27,9 @@ class FuncBizProvider : IMoGoFuncBizProvider { cronTaskManager.startCronTask() MogoTrafficLightManager.INSTANCE.initServer(context) - TrafficLightDispatcher.INSTANCE.initServer(context) //todo 红绿灯中心模块放入dataCenter VipCarManager.INSTANCE.initServer(context) - SpeedLimitDataManager.getInstance().start() - SpeedLimitDispatcher.INSTANCE.initLimit(context) + TrafficLightDispatcher.INSTANCE.initServer(context) //todo 宏宇 放入dataCenter + SpeedLimitDispatcher.INSTANCE.initLimit(context) //todo 宏宇,放入dataCenter // RedLightWarningManager.INSTANCE.listenTrafficLight() } diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/speedlimit/SpeedLimitDispatcher.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/speedlimit/SpeedLimitDispatcher.kt index 47e491ac75..cc61f8f8b3 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/speedlimit/SpeedLimitDispatcher.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/speedlimit/SpeedLimitDispatcher.kt @@ -34,7 +34,7 @@ class SpeedLimitDispatcher : ILimitingVelocityListener { /** * 地图限速数据 */ - @BizConfig(FuncBizConfig.V2I, "", FuncBizConfig.BIZ_SLW) +// @BizConfig(FuncBizConfig.V2I, "", FuncBizConfig.BIZ_SLW) //todo arrow 重新考虑放的位置 override fun onLimitingVelocityChange(limitingVelocity: Int, sourceType: DataSourceType) { when (sourceType) { // obu 优先级高于 map,体现链路能力 DataSourceType.OBU -> { diff --git a/core/function-impl/mogo-core-function-hmi/build.gradle b/core/function-impl/mogo-core-function-hmi/build.gradle index cfbb042e0e..d5bdc3d080 100644 --- a/core/function-impl/mogo-core-function-hmi/build.gradle +++ b/core/function-impl/mogo-core-function-hmi/build.gradle @@ -108,7 +108,6 @@ dependencies { api project(':core:function-impl:mogo-core-function-chat') api project(':core:function-impl:mogo-core-function-datacenter') api project(':core:function-impl:mogo-core-function-biz') - api project(':core:mogo-core-function-call') api project(':libraries:mogo-adas') api project(':libraries:map-usbcamera') diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/receiver/V2XWarningBroadcastReceiver.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/receiver/V2XWarningBroadcastReceiver.kt index 30f289c218..fefd2b4366 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/receiver/V2XWarningBroadcastReceiver.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/receiver/V2XWarningBroadcastReceiver.kt @@ -4,6 +4,7 @@ import android.content.BroadcastReceiver import android.content.Context import android.content.Intent import android.util.Log +import com.mogo.eagle.core.data.enums.DataSourceType import com.mogo.eagle.core.data.enums.EventTypeEnumNew import com.mogo.eagle.core.function.call.hmi.CallerHmiManager import com.mogo.eagle.core.function.hmi.WaringConst @@ -13,6 +14,7 @@ import com.mogo.eagle.core.data.msgbox.MsgBoxBean import com.mogo.eagle.core.data.msgbox.MsgBoxType import com.mogo.eagle.core.data.msgbox.V2XMsg import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager +import com.mogo.eagle.core.function.call.v2x.CallerViewLimitingVelocityListenerManager /** * V2X 预警广播接收。用于跨应用,跨进程,内部也可以通过这种方式弹出预警提示框 @@ -76,7 +78,7 @@ class V2XWarningBroadcastReceiver : BroadcastReceiver() { tag: String? ) { if (EventTypeEnumNew.TYPE_USECASE_ID_IVP_RED.poiType == v2xType.toString()) { - CallerHmiManager.showLimitingVelocity(1, 1) + CallerViewLimitingVelocityListenerManager.invokeOnLimitingVelocityChange(1,DataSourceType.MAP) } if (alertContent.isNullOrEmpty() || ttsContent.isNullOrEmpty()) { Log.d("MsgBox-V2XWarningBR", "alertContent或ttsContent为空!") diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ToolsImageView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ToolsImageView.kt index 2e8b24e018..5623ea7559 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ToolsImageView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ToolsImageView.kt @@ -10,9 +10,9 @@ class ToolsImageView(context: Context, attrs: AttributeSet?) : override fun onAttachedToWindow() { super.onAttachedToWindow() + scaleType = ScaleType.CENTER setBackgroundResource(R.drawable.module_ext_check) setImageResource(R.drawable.icon_tools_nor) - scaleType = ScaleType.CENTER setOnClickListener{ toolsView.showToolsFloat(context) } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/AutoPilotStatusView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/AutoPilotStatusView.kt index 2ff479a1c7..76b47b683c 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/AutoPilotStatusView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/AutoPilotStatusView.kt @@ -38,18 +38,13 @@ class AutoPilotStatusView constructor( private var mAutopilotStatus: Int = 0 - override fun onAttachedToWindow() { - super.onAttachedToWindow() + init{ initView(context) } private fun initView(context: Context) { setBackgroundResource(R.drawable.module_hmi_autopilot_status_bg) LayoutInflater.from(context).inflate(R.layout.view_autopilot_status, this, true) - - val lp = LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT) - layoutParams = lp - // 设置点击监听 setOnClickListener(this) // 自动驾驶状态监听 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainLauncherActivity.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainLauncherActivity.java index d87460910c..18977a81a3 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainLauncherActivity.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainLauncherActivity.java @@ -149,10 +149,14 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis ochProvider = (IMoGoFunctionProvider) ARouter.getInstance() .build("/driver/api") .navigation(getContext()); - } else { + } else if(AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)){ ochProvider = (IMoGoFunctionProvider) ARouter.getInstance() .build("/passenger/api") .navigation(getContext()); + } else { + ochProvider = (IMoGoFunctionProvider) ARouter.getInstance() + .build("/noop/api") + .navigation(getContext()); } } // 处理一个机器多个屏幕方案 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_limiting_speed_vr.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_limiting_speed_vr.xml index 1b5042bf60..e3c35e2bfc 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_limiting_speed_vr.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_limiting_speed_vr.xml @@ -14,9 +14,7 @@ android:gravity="center" android:text="60" android:textColor="#FFFFFF" - android:textSize="@dimen/dp_60" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintTop_toBottomOf="@+id/ivCameraIcon" /> + android:textSize="@dimen/dp_60"/> + android:visibility="gone" /> \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/speedlimit/SpeedLimitDataManager.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/SpeedLimitDataManager.java similarity index 61% rename from core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/speedlimit/SpeedLimitDataManager.java rename to core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/SpeedLimitDataManager.java index 385cfb841e..950ed0e66f 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/speedlimit/SpeedLimitDataManager.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/SpeedLimitDataManager.java @@ -1,17 +1,15 @@ -package com.mogo.eagle.function.biz.v2x.speedlimit; - -import static com.mogo.eagle.core.data.deva.bizconfig.FuncBizConfig.BIZ_SLW; -import static com.mogo.eagle.core.data.deva.bizconfig.FuncBizConfig.V2I; +package com.mogo.eagle.core.function.business; import androidx.annotation.Nullable; +import com.mogo.eagle.core.data.enums.DataSourceType; import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener; import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ20ListenerManager; import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.function.call.v2x.CallerLimitingVelocityListenerManager; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.zhjt.service_biz.BizConfig; +import java.util.Objects; import java.util.Timer; import java.util.TimerTask; @@ -25,8 +23,8 @@ import mogo.telematics.pad.MessagePad; public class SpeedLimitDataManager implements IMoGoChassisLocationGCJ02Listener { private final static String TAG = "SpeedLimitDataManager"; - private static SpeedLimitDataManager instance; - private MessagePad.GnssInfo mLocation; + private static volatile SpeedLimitDataManager instance; + private MessagePad.GnssInfo mLocation; private SpeedLimitDataManager() { } @@ -51,24 +49,19 @@ public class SpeedLimitDataManager implements IMoGoChassisLocationGCJ02Listener @Override public void run() { if (mLocation != null) { - if(CallerMapUIServiceManager.INSTANCE.getMapUIController()!=null){ + if (CallerMapUIServiceManager.INSTANCE.getMapUIController() != null) { getSpeedLimit(); } } } - @BizConfig(biz = V2I, dependentBizNode = "", bizNode = BIZ_SLW) private void getSpeedLimit() { -// if (!isShowObuLimitSpeedView) { - int speedLimit = CallerMapUIServiceManager.INSTANCE.getMapUIController().getLimitSpeed(mLocation.getLongitude(), mLocation.getLatitude(), (float) mLocation.getHeading()); - UiThreadHandler.post(() -> { - if (speedLimit > 0) { -// CallerHmiManager.INSTANCE.showLimitingVelocity(speedLimit, 1); - CallerLimitingVelocityListenerManager.INSTANCE.invokeOnLimitingVelocityChange(speedLimit); - - } - }); -// } + int speedLimit = Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMapUIController()).getLimitSpeed(mLocation.getLongitude(), mLocation.getLatitude(), (float) mLocation.getHeading()); + UiThreadHandler.post(() -> { + if (speedLimit > 0) { + CallerLimitingVelocityListenerManager.INSTANCE.invokeOnLimitingVelocityChange(speedLimit, DataSourceType.MAP); + } + }); } } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/MapFragment.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/MapFragment.kt index a6cb1e9874..0591bc9c92 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/MapFragment.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/MapFragment.kt @@ -15,6 +15,7 @@ import com.mogo.eagle.core.function.api.autopilot.IMoGoPlanningRottingListener import com.mogo.eagle.core.function.api.map.hd.IMoGoMapFragmentProvider import com.mogo.eagle.core.function.api.setting.IMoGoSkinModeChangeListener import com.mogo.eagle.core.function.business.MapPointCloudSubscriber +import com.mogo.eagle.core.function.business.SpeedLimitDataManager import com.mogo.eagle.core.function.business.identify.MapIdentifySubscriber import com.mogo.eagle.core.function.business.routeoverlay.MogoRouteOverlayManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationWGS84ListenerManager @@ -199,6 +200,8 @@ class MapFragment : MvpFragment(), MapIdentifySubscriber.instance MogoRouteOverlayManager.getInstance().init() MapPointCloudSubscriber.instance + SpeedLimitDataManager.getInstance().start() + // TODO GD地图业务需要与高精地图业务拆开 --- 扶风 queryInfStructure() }