diff --git a/OCH/common/common/build.gradle b/OCH/common/common/build.gradle index 5a7057c888..6597437eaf 100644 --- a/OCH/common/common/build.gradle +++ b/OCH/common/common/build.gradle @@ -74,6 +74,7 @@ dependencies { api rootProject.ext.dependencies.flexbox api project(":OCH:common:data") + api rootProject.ext.dependencies.lottie if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { api rootProject.ext.dependencies.mogocommons diff --git a/OCH/shuttle/driver_weaknet/src/main/assets/data.json b/OCH/common/common/src/main/assets/data.json similarity index 100% rename from OCH/shuttle/driver_weaknet/src/main/assets/data.json rename to OCH/common/common/src/main/assets/data.json diff --git a/OCH/shuttle/driver_weaknet/src/main/assets/images/img_0.png b/OCH/common/common/src/main/assets/images/img_0.png similarity index 100% rename from OCH/shuttle/driver_weaknet/src/main/assets/images/img_0.png rename to OCH/common/common/src/main/assets/images/img_0.png diff --git a/OCH/shuttle/driver_weaknet/src/main/assets/images/img_1.png b/OCH/common/common/src/main/assets/images/img_1.png similarity index 100% rename from OCH/shuttle/driver_weaknet/src/main/assets/images/img_1.png rename to OCH/common/common/src/main/assets/images/img_1.png diff --git a/OCH/shuttle/driver_weaknet/src/main/assets/images/img_2.png b/OCH/common/common/src/main/assets/images/img_2.png similarity index 100% rename from OCH/shuttle/driver_weaknet/src/main/assets/images/img_2.png rename to OCH/common/common/src/main/assets/images/img_2.png diff --git a/OCH/shuttle/driver_weaknet/src/main/assets/slide.json b/OCH/common/common/src/main/assets/slide.json similarity index 100% rename from OCH/shuttle/driver_weaknet/src/main/assets/slide.json rename to OCH/common/common/src/main/assets/slide.json diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/utils/MapMakerManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/map/MapMakerManager.kt similarity index 98% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/utils/MapMakerManager.kt rename to OCH/common/common/src/main/java/com/mogo/och/common/module/map/MapMakerManager.kt index ab5901c9cc..191904b632 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/utils/MapMakerManager.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/map/MapMakerManager.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.utils +package com.mogo.och.common.module.map import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/BigFrameAnimatorContainer.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/BigFrameAnimatorContainer.kt index 12d3f53912..b6449aa3da 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/BigFrameAnimatorContainer.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/utils/BigFrameAnimatorContainer.kt @@ -56,7 +56,6 @@ class BigFrameAnimatorContainer (resId: Int, mHandler = object: Handler(Looper.myLooper()!!){ override fun handleMessage(msg: Message) { super.handleMessage(msg) - CallerLogger.d(TAG,"消息类型:${msg.what}") if(msg.what==0){ val imageView = mSoftReferenceImageView!!.get() if (!mShouldRun || imageView == null) { diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/CommonSlideView.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/CommonSlideView.kt new file mode 100644 index 0000000000..69e257067f --- /dev/null +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/CommonSlideView.kt @@ -0,0 +1,159 @@ +package com.mogo.och.common.module.wigets + +import android.animation.ObjectAnimator +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.MotionEvent +import androidx.appcompat.widget.AppCompatTextView +import androidx.constraintlayout.widget.ConstraintLayout +import androidx.constraintlayout.widget.ConstraintSet +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.och.common.module.R +import com.mogo.och.common.module.utils.ResourcesUtils +import com.mogo.och.common.module.utils.RxUtils +import kotlinx.android.synthetic.main.common_slide_view.view.lottie_bg + +class CommonSlideView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : ConstraintLayout(context, attrs, defStyleAttr) { + companion object { + const val TAG = "LoadingMapStatusView" + } + + + private var initialX = 0f + private var initialY = 0f + private val tempSet = ConstraintSet() + + private var draggableButton: AppCompatTextView + + private var slideListener:SlideListener?=null + + private var slideTitle:String?=null + private var assetsfolder:String?=null + + fun setSlideListener(slideListener:SlideListener){ + this.slideListener = slideListener + } + + + init { + LayoutInflater.from(context).inflate(R.layout.common_slide_view, this, true) + + try { + val typedArray = context.obtainStyledAttributes(attrs, R.styleable.CommonSlideView) + slideTitle = typedArray.getString(R.styleable.CommonSlideView_slide_title)?:"" + assetsfolder = typedArray.getString(R.styleable.CommonSlideView_assetsfolder)?:"images" + typedArray.recycle() + } catch (e: Exception) { + e.printStackTrace() + } + + draggableButton = findViewById(R.id.actv_draggable_block) + draggableButton.text = slideTitle + lottie_bg.imageAssetsFolder = assetsfolder + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + CallerLogger.d(TAG,"onAttachedToWindow") + } + + + /** + * 为该组件的触碰事件重写事件处理方法 + */ + override fun onTouchEvent(event: MotionEvent?): Boolean { + when (event?.action) { + MotionEvent.ACTION_DOWN -> { + initialX = event.rawX; + initialY = event.rawY; + } + MotionEvent.ACTION_MOVE -> { + val dx = event.rawX - initialX; + val dy = event.rawY - initialY; + initialX = event.rawX; + initialY = event.rawY; + + if(draggableButton.translationX<0){ + tempSet.clone(this) + tempSet.setTranslationX(draggableButton.id, 0f) + tempSet.applyTo(this) + }else if(draggableButton.translationX>=0&&draggableButton.translationX<=width-draggableButton.width){ + tempSet.clone(this) + val dex = (draggableButton.translationX + dx).takeIf { it>=0 }?:0f + val newDex = dex.takeIf { it<=width-draggableButton.width }?:(width-draggableButton.width).toFloat() + tempSet.setTranslationX(draggableButton.id, newDex) + tempSet.applyTo(this) + }else{ + tempSet.clone(this) + val dex = (draggableButton.translationX + dx).takeIf { it<=width-draggableButton.width }?:(width-draggableButton.width).toFloat() + tempSet.setTranslationX(draggableButton.id, dex) + tempSet.applyTo(this) + } + } + MotionEvent.ACTION_UP -> { + if(draggableButton.translationX<(width-draggableButton.width)){ + ObjectAnimator.ofFloat( + draggableButton, "translationX", draggableButton.translationX, + 0f + ).apply { + duration = 100 + }.start() + }else if (draggableButton.translationX>=(width-draggableButton.width)){ + lottie_bg.setAnimation("data.json") + lottie_bg.playAnimation() + draggableButton.setTextColor(ResourcesUtils.getColor(R.color.common_80FFFFFF)) + RxUtils.createSubscribe(1_000) { + slideListener?.slideEnd() + } + }else{ + ObjectAnimator.ofFloat( + draggableButton, "translationX", draggableButton.translationX, + 0f + ).apply { + duration = 100 + }.start() + } + } + else -> {} + } + return true + } + + + override fun onVisibilityAggregated(isVisible: Boolean) { + super.onVisibilityAggregated(isVisible) + if(isVisible){ + lottie_bg.setAnimation("slide.json") + lottie_bg.playAnimation() + draggableButton.setTextColor(ResourcesUtils.getColor(R.color.white)) + ObjectAnimator.ofFloat( + draggableButton, "translationX", draggableButton.translationX, + 0f + ).apply { + duration = 100 + }.start() + } + } + + + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + CallerLogger.d(TAG,"onDetachedFromWindow") + } + + fun setTextValue(value: String) { + draggableButton.text = value + } + + interface SlideListener{ + fun slideEnd() + } + + + +} \ No newline at end of file diff --git a/OCH/common/common/src/main/res/drawable-nodpi/common_slide_block.png b/OCH/common/common/src/main/res/drawable-nodpi/common_slide_block.png new file mode 100755 index 0000000000..ba80399ef4 Binary files /dev/null and b/OCH/common/common/src/main/res/drawable-nodpi/common_slide_block.png differ diff --git a/OCH/common/common/src/main/res/layout/common_slide_view.xml b/OCH/common/common/src/main/res/layout/common_slide_view.xml new file mode 100644 index 0000000000..d6f443fc5d --- /dev/null +++ b/OCH/common/common/src/main/res/layout/common_slide_view.xml @@ -0,0 +1,32 @@ + + + + + + + \ No newline at end of file diff --git a/OCH/common/common/src/main/res/values/attrs.xml b/OCH/common/common/src/main/res/values/attrs.xml index 13b47cc9ee..31323f4270 100644 --- a/OCH/common/common/src/main/res/values/attrs.xml +++ b/OCH/common/common/src/main/res/values/attrs.xml @@ -9,6 +9,12 @@ + + + + + + diff --git a/OCH/common/common/src/main/res/values/colors.xml b/OCH/common/common/src/main/res/values/colors.xml index 770f857d92..4bdbaf74bf 100644 --- a/OCH/common/common/src/main/res/values/colors.xml +++ b/OCH/common/common/src/main/res/values/colors.xml @@ -16,6 +16,7 @@ #3B4577 #80000000 + #80FFFFFF #1466FB #E0EFFF #B8C2D7 diff --git a/OCH/common/data/src/main/java/com/mogo/och/data/bean/BusStationBean.java b/OCH/common/data/src/main/java/com/mogo/och/data/bean/BusStationBean.java index e8c825f401..2d40aeaf63 100644 --- a/OCH/common/data/src/main/java/com/mogo/och/data/bean/BusStationBean.java +++ b/OCH/common/data/src/main/java/com/mogo/och/data/bean/BusStationBean.java @@ -17,7 +17,7 @@ public class BusStationBean { private double lon; //高精坐标 private double lat; //高精坐标 private int drivingStatus;//行驶信息,0初始值;1已经过;2当前站;3未到站 - private boolean leaving; + private boolean leaving;// 为出发false 出发true private String introduction;// 站点简介 private boolean isPlayTts; private int pointType; // 1:途径点 2:禁行点 3:站点 diff --git a/OCH/common/data/src/main/java/com/mogo/och/data/bean/ContraiInfo.kt b/OCH/common/data/src/main/java/com/mogo/och/data/bean/ContraiInfo.kt index 027d4c62ef..e876374a68 100644 --- a/OCH/common/data/src/main/java/com/mogo/och/data/bean/ContraiInfo.kt +++ b/OCH/common/data/src/main/java/com/mogo/och/data/bean/ContraiInfo.kt @@ -31,6 +31,6 @@ data class ContraiInfo( */ val contrailSaveTime: Long, - var passPoints: MutableList?, // 用于算路的经停点 - var blackPoints: MutableList?, // 用于算路的黑名單點 + var passPoints: MutableList?=null, // 用于算路的经停点 + var blackPoints: MutableList?=null, // 用于算路的黑名單點 ) diff --git a/OCH/shuttle/driver_weaknet/build.gradle b/OCH/shuttle/driver_weaknet/build.gradle index a230b9a66d..3f2bd62161 100644 --- a/OCH/shuttle/driver_weaknet/build.gradle +++ b/OCH/shuttle/driver_weaknet/build.gradle @@ -61,7 +61,6 @@ dependencies { implementation rootProject.ext.dependencies.roomRxjava implementation rootProject.ext.dependencies.androidxrecyclerview kapt rootProject.ext.dependencies.recyclerviewadapterhelper - implementation rootProject.ext.dependencies.lottie implementation rootProject.ext.dependencies.androidxroomruntime kapt rootProject.ext.dependencies.androidxroomcompiler diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/OrderModel.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/OrderModel.kt index 03906c4e3f..5e1f49dfeb 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/OrderModel.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/model/OrderModel.kt @@ -22,12 +22,14 @@ import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager import com.mogo.och.common.module.manager.socket.lan.LedScreenManager import com.mogo.och.common.module.manager.transform.OchTransform import com.mogo.och.common.module.manager.transform.OchTransformDispatch +import com.mogo.och.common.module.map.MapMakerManager import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.NumberFormatUtil import com.mogo.och.common.module.utils.OCHThreadPoolManager import com.mogo.och.common.module.utils.ResourcesUtils import com.mogo.och.common.module.utils.RxUtils import com.mogo.och.shuttle.weaknet.R +import com.mogo.och.weaknet.constant.BusConst import com.mogo.och.weaknet.repository.db.bean.TaskSiteDataBean import com.mogo.och.weaknet.repository.RepositoryManager import com.mogo.och.weaknet.repository.exception.DataException @@ -267,6 +269,19 @@ object OrderModel { * 车机端展示 三站: 中间为即将到到达或者刚到达的站 */ private fun updateBusStatus() { + val (startStation, endStation) = LineManager.getStations() + if(startStation!=null&&endStation!=null){ + MapMakerManager.removeAllMapMarkerByOwner(TAG) + if(startStation.isLeaving){// 出发需要移除 + MapMakerManager.removeMapMaker(BusConst.BUS_START_MAP_MAKER,startStation.lat,startStation.lon) + }else{// 为出发展示 + MapMakerManager.addMapMaker(TAG, BusConst.BUS_START_MAP_MAKER,startStation.lat,startStation.lon,R.raw.star_marker) + } + MapMakerManager.addMapMaker(TAG, BusConst.BUS_END_MAP_MAKER,startStation.lat,startStation.lon,R.raw.end_marker) + }else{ + MapMakerManager.removeAllMapMarkerByOwner(TAG) + } + LineModel.stationList?.let { if (LineModel.startTaskMessage()) { //默认是第一站到站查询 LineManager.lineInfos?.lineName?.let { lineName-> @@ -437,6 +452,8 @@ object OrderModel { ToastUtils.showShort(ResourcesUtils.getString(R.string.shuttle_logout_error)) return@execute } + MapMakerManager.removeAllMapMarkerByOwner(TAG) + BusTrajectoryManager.getInstance().stopTrajReqLoop(); LoginStatusManager.loginOut() } } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningView.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningView.kt index 957f39e00d..4eb0cc1fd0 100644 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningView.kt +++ b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningView.kt @@ -10,15 +10,13 @@ import androidx.recyclerview.widget.LinearLayoutManager import com.mogo.commons.AbsMogoApplication import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger -import com.mogo.eagle.core.utilcode.mogo.view.SpacesItemDecoration import com.mogo.och.common.module.manager.autopilot.line.LineManager import com.mogo.och.common.module.utils.ResourcesUtils import com.mogo.och.common.module.wigets.CommonDialogStatus -import com.mogo.och.common.module.wigets.OCHCommitDialog +import com.mogo.och.common.module.wigets.CommonSlideView import com.mogo.och.shuttle.weaknet.R import com.mogo.och.weaknet.model.LineModel import com.mogo.och.weaknet.ui.bizswitch.SwtichBizeModel -import com.mogo.och.weaknet.view.BizLeaveStationView.SlideListener import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.aciv_task_leave_station_slide_bg import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.actv_arriver_station import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.actv_complete_task @@ -63,7 +61,7 @@ class TaskRunningView: ConstraintLayout, TaskRunningModel.SwtichLineViewCallback rl_running_task_station_list.setLayoutManager(linearLayoutManager) mAdapter = TaskRunningAdapter(context, mutableListOf()) rl_running_task_station_list.setAdapter(mAdapter) - aciv_task_leave_station_slide_bg.setSlideListener(object : SlideListener{ + aciv_task_leave_station_slide_bg.setSlideListener(object : CommonSlideView.SlideListener { override fun slideEnd() { viewModel?.leaveStation() } diff --git a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/view/BizMapView.kt b/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/view/BizMapView.kt deleted file mode 100644 index aa7c1e657e..0000000000 --- a/OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/view/BizMapView.kt +++ /dev/null @@ -1,63 +0,0 @@ -package com.mogo.och.weaknet.view - -import android.content.Context -import android.os.Bundle -import android.util.AttributeSet -import android.view.LayoutInflater -import android.widget.FrameLayout -import com.mogo.eagle.core.data.config.FunctionBuildConfig -import com.mogo.eagle.core.function.view.MapBizView -import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils -import com.mogo.map.uicontroller.IMogoMapUIController -import com.mogo.och.shuttle.weaknet.R - -/** - * 魔戒蓝牙控件 - * 放置于StatusBar右侧位置 - */ -class BizMapView @JvmOverloads constructor( - context: Context, - attrs: AttributeSet? = null, - defStyleAttr: Int = 0 -) : FrameLayout(context, attrs, defStyleAttr) { - - private lateinit var mapBizView: MapBizView - - init { - if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { - LayoutInflater.from(context).inflate(R.layout.shuttle_weak_m2_bizmap_map, this, true) - }else if(AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)){ - LayoutInflater.from(context).inflate(R.layout.shuttle_weak_jl_bizmap_map, this, true) - }else{ - LayoutInflater.from(context).inflate(R.layout.shuttle_weak_jl_bizmap_map, this, true) - } - mapBizView = findViewById(R.id.bizMapView) - } - - fun getUI(): IMogoMapUIController? { - return mapBizView.getUI() - } - - fun onCreate(bundle: Bundle?) { - mapBizView.onCreate(bundle) - } - fun onResume() { - mapBizView.onResume() - } - - fun onSaveInstanceState(outState: Bundle){ - mapBizView.onSaveInstanceState(outState) - } - - fun onLowMemory() { - mapBizView.onLowMemory() - } - - fun onPause() { - mapBizView.onPause() - } - - fun onDestroy() { - mapBizView.onDestroy() - } -} \ No newline at end of file diff --git a/OCH/shuttle/driver_weaknet/src/main/res/layout/shuttle_weak_task_leave_station_view.xml b/OCH/shuttle/driver_weaknet/src/main/res/layout/shuttle_weak_task_leave_station_view.xml index ff7fa80565..60aaed0563 100644 --- a/OCH/shuttle/driver_weaknet/src/main/res/layout/shuttle_weak_task_leave_station_view.xml +++ b/OCH/shuttle/driver_weaknet/src/main/res/layout/shuttle_weak_task_leave_station_view.xml @@ -7,15 +7,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content"> - - - - - - - - - - diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiMapDirectionView.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiMapDirectionView.kt index 8225b2891f..8893f36bd6 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiMapDirectionView.kt +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiMapDirectionView.kt @@ -260,6 +260,7 @@ class TaxiMapDirectionView @JvmOverloads constructor( fun onDestroy() { mAMapNaviView.onDestroy() + mAMap.clear() } fun setStartMarkAndEndMark(startStation: LatLng?, endStation: LatLng?) { diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/navi/auto/TaxiMapDirectionView.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/navi/auto/TaxiMapDirectionView.kt index ecbe51ebe0..910d20a140 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/navi/auto/TaxiMapDirectionView.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/navi/auto/TaxiMapDirectionView.kt @@ -264,6 +264,7 @@ class TaxiMapDirectionView @JvmOverloads constructor( fun onDestroy() { mAMapNaviView.onDestroy() + mAMap.clear() } fun setStartMarkAndEndMark(startStation: LatLng?, endStation: LatLng?) { diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ErrorPointItemAdapter.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ErrorPointItemAdapter.kt similarity index 97% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ErrorPointItemAdapter.kt rename to OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ErrorPointItemAdapter.kt index e6c65b4843..adc5ef1fc0 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ErrorPointItemAdapter.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ErrorPointItemAdapter.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.ui.errorpoint +package com.mogo.och.unmanned.taxi.ui.routing.errorpoint import android.content.Context import android.view.LayoutInflater diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ReportErrorPointDialog.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointDialog.kt similarity index 94% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ReportErrorPointDialog.kt rename to OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointDialog.kt index 984e49a9cd..6435cf166d 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ReportErrorPointDialog.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointDialog.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.ui.errorpoint +package com.mogo.och.unmanned.taxi.ui.routing.errorpoint import android.content.Context import androidx.lifecycle.LifecycleObserver diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ReportErrorPointView.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointView.kt similarity index 98% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ReportErrorPointView.kt rename to OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointView.kt index 67d54904b0..bdf995e721 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ReportErrorPointView.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointView.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.ui.errorpoint +package com.mogo.och.unmanned.taxi.ui.routing.errorpoint import android.content.Context import android.util.AttributeSet diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ReportErrorPointViewModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointViewModel.kt similarity index 98% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ReportErrorPointViewModel.kt rename to OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointViewModel.kt index fa16a3d897..1f70d50a5d 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/errorpoint/ReportErrorPointViewModel.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/errorpoint/ReportErrorPointViewModel.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.ui.errorpoint +package com.mogo.och.unmanned.taxi.ui.routing.errorpoint import androidx.lifecycle.ViewModel import com.mogo.commons.AbsMogoApplication diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningModel.kt index 4ec295f88b..199dea382e 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningModel.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningModel.kt @@ -84,6 +84,7 @@ class RoutingRunningModel : ViewModel() { this.currentGrayLineBean = data.grayLineBean this.currentContrailBean = data.contrail this.currentGrayId = data.taskId + MogoStatusManager.getInstance().setTaxiUnmanedDriverLineRoutingPerformTask(TAG, true) //添加到站监听 OchAutoPilotStatusListenerManager.addListener(TAG, mMogoAutopilotStatusListener) LineManager.addListener(TAG, lineCallback) diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningView.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningView.kt index 017107da1e..23b92e2589 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningView.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/routing/routingrunning/RoutingRunningView.kt @@ -21,11 +21,11 @@ import com.mogo.och.unmanned.taxi.R import com.mogo.och.unmanned.taxi.bean.EndGrayTaskFeedbackType import com.mogo.och.unmanned.taxi.bean.StartGrayAndQueryContrailRsp import com.mogo.och.unmanned.taxi.constant.TaxiUnmannedConst -import com.mogo.och.unmanned.taxi.ui.errorpoint.ReportErrorPointDialog +import com.mogo.och.unmanned.taxi.ui.routing.errorpoint.ReportErrorPointDialog import com.mogo.och.unmanned.taxi.ui.routing.RoutingSwitchModel import com.mogo.och.unmanned.taxi.ui.routing.TaxiRoutingFeedbackDialog import com.mogo.och.unmanned.taxi.ui.routing.TaxiRoutingModel -import com.mogo.och.unmanned.taxi.utils.MapMakerManager +import com.mogo.och.common.module.map.MapMakerManager import com.mogo.och.unmanned.taxi.utils.TaskUtils import kotlinx.android.synthetic.main.unmanned_routing_running.view.actv_current_itinerary_end_name import kotlinx.android.synthetic.main.unmanned_routing_running.view.actv_current_itinerary_start_name @@ -37,7 +37,6 @@ import kotlinx.android.synthetic.main.unmanned_routing_running.view.actv_time_en import kotlinx.android.synthetic.main.unmanned_routing_running.view.goutp_show_routing_info import kotlinx.android.synthetic.main.unmanned_routing_running.view.include_empty import kotlinx.android.synthetic.main.unmanned_routing_running.view.naviToStart -import kotlinx.coroutines.flow.map class RoutingRunningView: ConstraintLayout, RoutingRunningModel.RoutingRuningCallback, ICommonNaviChangedCallback { diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiCurrentTaskFragment.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiCurrentTaskFragment.kt index 2e264384f8..c38147ef76 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiCurrentTaskFragment.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiCurrentTaskFragment.kt @@ -41,7 +41,7 @@ import com.mogo.och.unmanned.taxi.constant.TaxiDriverEventConst import com.mogo.och.unmanned.taxi.constant.TaxiUnmannedConst.Companion.TAXI_END_MAP_MAKER import com.mogo.och.unmanned.taxi.constant.TaxiUnmannedConst.Companion.TAXI_START_MAP_MAKER import com.mogo.och.unmanned.taxi.constant.TaxiUnmannedConst.Companion.TYPE_MARKER_TAXI_ORDER -import com.mogo.och.unmanned.taxi.utils.MapMakerManager +import com.mogo.och.common.module.map.MapMakerManager import com.mogo.och.unmanned.taxi.utils.TaskUtils import kotlinx.android.synthetic.main.unmanned_task_fragment_current.cancelOrder import kotlinx.android.synthetic.main.unmanned_task_fragment_current.endPoint diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiTaskModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiTaskModel.kt index 39f09f7157..45372c123c 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiTaskModel.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/TaxiTaskModel.kt @@ -625,7 +625,7 @@ object TaxiTaskModel { DebugView.printInfoMsg("[上报ArriveSite] success siteId=$siteId, isArriveAtEndSite=$isArriveAtEndSite") d(TAG, "submitArriveSite-onSuccess data=" + GsonUtil.jsonFromObject(data)) mDriveToNearestStationTask = null - LineManager.setLineInfo(null); + LineManager.setLineInfo(null) if (isArrivedNearestStation) {// 播报提醒 VoiceNotice.showNotice("已到达出车点") } @@ -807,7 +807,7 @@ object TaxiTaskModel { d(TAG, "queryCurrentTaskOnce ArriveAtEnd") //订单到站结束轨迹剩余里程就算和高德计算, 防止到站查询订单全程的显示被覆盖 - LineManager.setLineInfo(null); + LineManager.setLineInfo(null) TrajectoryAndDistanceManager.setStationPoint(null, null, -1L) destroyAmapNavi() @@ -882,7 +882,7 @@ object TaxiTaskModel { if (mDriveToNearestStationTask == null){ destroyAmapNavi() } - LineManager.setLineInfo(null); + LineManager.setLineInfo(null) TrajectoryAndDistanceManager.setStationPoint(null, null, -1L) } @@ -1228,7 +1228,7 @@ object TaxiTaskModel { return } - OchAutopilotAnalytics.triggerClickStartAutopilotTime(System.currentTimeMillis()); + OchAutopilotAnalytics.triggerClickStartAutopilotTime(System.currentTimeMillis()) DebugView.printInfoMsg("[启自驾] startAutoPilot") if (!checkCurrentTaskCondition()) { @@ -1291,9 +1291,9 @@ object TaxiTaskModel { resion = OchAutoPilotManager.canStartAutoPilotByDistance(it.lineId) } if(!StringUtils.isEmpty(resion)){ - ToastUtils.showShort(resion); - VoiceNotice.showNotice(resion); - return; + ToastUtils.showShort(resion) + VoiceNotice.showNotice(resion) + return } } // 4、ssm 给出数据 @@ -1319,7 +1319,7 @@ object TaxiTaskModel { return } - val sessionId = OchAutoPilotManager.startAutoPilot(parameters); + val sessionId = OchAutoPilotManager.startAutoPilot(parameters) DebugView.printInfoMsg("[启自驾] 调用成功") d( TAG, "start autopilot with parameter: %s", @@ -1513,7 +1513,7 @@ object TaxiTaskModel { mCurrentTaskWithOrder = null mDriveToNearestStationTask = null DebugView.printInfoMsg("[登出] 退出登陆") - LineManager.setLineInfo(null); + LineManager.setLineInfo(null) MogoStatusManager.getInstance().setTaxiUnmanedDriverPerformTask(TAG, false) MogoStatusManager.getInstance().setTaxiUnmanedDriverTakingOrders(TAG, false) MogoStatusManager.getInstance().setTaxiUnmanedDriverLineRoutingPerformTask(TAG, false) diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/ItinerarySwitchModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/itinerayswitch/ItinerarySwitchModel.kt similarity index 83% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/ItinerarySwitchModel.kt rename to OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/itinerayswitch/ItinerarySwitchModel.kt index 1450f2e22d..e1c02a084e 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/ItinerarySwitchModel.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/itinerayswitch/ItinerarySwitchModel.kt @@ -1,6 +1,7 @@ -package com.mogo.och.unmanned.taxi.ui.task +package com.mogo.och.unmanned.taxi.ui.task.itinerayswitch import androidx.lifecycle.ViewModel +import com.mogo.och.unmanned.taxi.ui.task.TaxiTaskModel /** * @author XuXinChao diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/ItinerarySwitchView.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/itinerayswitch/ItinerarySwitchView.kt similarity index 95% rename from OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/ItinerarySwitchView.kt rename to OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/itinerayswitch/ItinerarySwitchView.kt index 7c609145ac..bc24b02e20 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/ItinerarySwitchView.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/unmanned/taxi/ui/task/itinerayswitch/ItinerarySwitchView.kt @@ -1,4 +1,4 @@ -package com.mogo.och.unmanned.taxi.ui.task +package com.mogo.och.unmanned.taxi.ui.task.itinerayswitch import android.content.Context import android.util.AttributeSet @@ -10,11 +10,8 @@ import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.findViewTreeViewModelStoreOwner import com.mogo.commons.module.status.MogoStatusManager import com.mogo.eagle.core.utilcode.kotlin.onClick -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger -import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.och.common.module.utils.FlowBus -import com.mogo.och.common.module.utils.ResourcesUtils import com.mogo.och.unmanned.taxi.R import com.mogo.och.unmanned.taxi.TaxiUnmannedDriverProvider import com.mogo.och.unmanned.taxi.constant.TaxiDriverEventConst diff --git a/OCH/taxi/unmanned-driver/src/main/res/layout/dialog_taxt_report_error.xml b/OCH/taxi/unmanned-driver/src/main/res/layout/dialog_taxt_report_error.xml index 11c0fedb02..bfdf3beb5f 100644 --- a/OCH/taxi/unmanned-driver/src/main/res/layout/dialog_taxt_report_error.xml +++ b/OCH/taxi/unmanned-driver/src/main/res/layout/dialog_taxt_report_error.xml @@ -1,8 +1,8 @@ - - \ No newline at end of file + \ No newline at end of file diff --git a/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_select_item.xml b/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_select_item.xml index a10a9ee509..fb4194ca91 100644 --- a/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_select_item.xml +++ b/OCH/taxi/unmanned-driver/src/main/res/layout/unmanned_routing_select_item.xml @@ -16,7 +16,10 @@ android:textColor="@color/white" android:textSize="@dimen/dp_40" tools:text="灰度路线11111111" - android:layout_width="wrap_content" + android:singleLine="true" + android:ellipsize="end" + app:layout_constraintEnd_toStartOf="@+id/actv_today_verify_num" + android:layout_width="0dp" android:layout_height="wrap_content"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt index 2280e373b3..851ea1c280 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt @@ -1300,7 +1300,7 @@ class MoGoAdasListenerImpl : OnAdasListener { receivedAck.messageType == MessageType.TYPE_SEND_PLANNING_CMD ||//给Planning指令 receivedAck.messageType == MessageType.TYPE_SEND_SET_PARAM_REQ_V2 //设置参数命令V2 ) { - receiveReceivedAck(receivedAck) + receiveReceivedAck(receivedAck.toString()) } } @@ -1310,7 +1310,7 @@ class MoGoAdasListenerImpl : OnAdasListener { nodeAliasCode = AdasChain.CHAIN_CODE_ADAS_START_AUTOPILOT, paramIndexes = [0] ) - private fun receiveReceivedAck(receivedAck: ReceivedAck) { + private fun receiveReceivedAck(receivedAck: String) { } /** diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt index e8c5b59f6a..827b95f475 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt @@ -9,6 +9,9 @@ import com.mogo.commons.debug.DebugConfig.getNetMode import com.mogo.commons.storage.SharedPrefsMgr import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_CODE_ADAS_CONNECT_STATUS +import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_SOURCE_ADAS +import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_TYPE_SOCKET_AUTOPILOT import com.mogo.eagle.core.data.msgbox.AutopilotMsg import com.mogo.eagle.core.data.msgbox.MsgBoxBean import com.mogo.eagle.core.data.msgbox.MsgBoxType @@ -29,6 +32,7 @@ import com.mogo.eagle.core.utilcode.util.ToastUtils import com.zhidao.support.adas.high.AdasManager import com.zhidao.support.adas.high.OnAdasConnectStatusListener import com.zhidao.support.adas.high.bean.VersionCompatibility +import com.zhidao.support.adas.high.chain.AdasChain import com.zhidao.support.adas.high.common.Constants.ENVIRONMENT.DEMO import com.zhidao.support.adas.high.common.Constants.ENVIRONMENT.DEVELOP import com.zhidao.support.adas.high.common.Constants.ENVIRONMENT.PRODUCTION @@ -36,6 +40,7 @@ import com.zhidao.support.adas.high.common.Constants.ENVIRONMENT.TEST import com.zhidao.support.adas.high.common.Constants.TERMINAL_ROLE.DRIVER import com.zhidao.support.adas.high.common.Constants.TERMINAL_ROLE.PASSENGER import com.zhjt.mogo.adas.data.AdasConstants +import com.zhjt.service.chain.ChainLog import mogo.telematics.pad.MessagePad import java.util.concurrent.atomic.AtomicBoolean @@ -237,7 +242,7 @@ class MoGoAdasMsgConnectStatusListenerImpl : CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().connectStatusReason = reason CallerAutoPilotStatusListenerManager.invokeAutoPilotStatus() CallerAutoPilotStatusListenerManager.invokeAutoPilotIPCStatusChanged(status, reason) - saveIntoMsgBox(status, reason) + saveIntoMsgBox(status, connectStatusDescribe) } /** @@ -289,9 +294,15 @@ class MoGoAdasMsgConnectStatusListenerImpl : CallerAutopilotCarConfigListenerManager.invokeAutopilotCertFileResult(certificationResult) } + @ChainLog( + linkChainLog = CHAIN_TYPE_SOCKET_AUTOPILOT, + linkCode = CHAIN_SOURCE_ADAS, + nodeAliasCode = CHAIN_CODE_ADAS_CONNECT_STATUS, + paramIndexes = [0,1] + ) private fun saveIntoMsgBox( status: AdasConstants.IpcConnectionStatus, - reason: String? + reason: String ) { var title = "" var content = "" diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/v2x/TrafficLightDispatcher.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/v2x/TrafficLightDispatcher.kt index 87bf10f51f..48fff17aeb 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/v2x/TrafficLightDispatcher.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/v2x/TrafficLightDispatcher.kt @@ -150,18 +150,16 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight if(light.nextState == null || light.nextState == FusionTrafficLightOuterClass.FusionLightState.STATE_OFF_FUSION || light.nextTwoState == null || light.nextTwoState == FusionTrafficLightOuterClass.FusionLightState.STATE_OFF_FUSION){ - if (HmiBuildConfig.isShowCarSourceTrafficLightView) { - var lightRemain = light.duration.toInt() - val source = when (trafficLights.source) { - 1 -> DataSourceType.TELEMATIC_UNION_V2I - 2 -> DataSourceType.TELEMATIC_UNION_V2N - else -> { - lightRemain = 0 - DataSourceType.TELEMATIC - } + var lightRemain = light.duration.toInt() + val source = when (trafficLights.source) { + 1 -> DataSourceType.TELEMATIC_UNION_V2I + 2 -> DataSourceType.TELEMATIC_UNION_V2N + else -> { + lightRemain = 0 + DataSourceType.TELEMATIC } - onTrafficLightPlusSource(convert(light.state), lightRemain, source) } + onTrafficLightPlusSource(convert(light.state), lightRemain, source) }else{ Log.i(TAG,"current state="+light.state+" current duration="+light.duration+ " nextState="+light.nextState+" nextDuration="+light.nextDuration+ @@ -305,27 +303,25 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight */ override fun onEnterCrossRoad(enter: Boolean) { CallerLogger.d("${SceneConstant.M_D_C}${TAG}", "onEnterCrossRoad enter = $enter ") - if (HmiBuildConfig.isShowCarSourceTrafficLightView) { - return - } - if (!enter) { - Handler().postDelayed({ - hasAiLightStatus = false - hasObuLightStatus = false - hasFusionLightStatus = false - }, 5000) - if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { - CallerTelematicManager.sendMsgToAllClients( - TelematicConstant.HIDE_TRAFFIC_LIGHT, - "0".toByteArray() - ) - } - //如果没有OBU灯态则进行隐藏,如果有OBU灯态,则交由OBU管理 - if (!hasObuLightStatus) { - CallerTrafficLightListenerManager.resetTrafficLightStatus(!hasObuLightStatus) -// hide("云端离开路口隐藏", DataSourceType.AICLOUD) - } - } + +// if (!enter) { +// Handler().postDelayed({ +// hasAiLightStatus = false +// hasObuLightStatus = false +// hasFusionLightStatus = false +// }, 5000) +// if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { +// CallerTelematicManager.sendMsgToAllClients( +// TelematicConstant.HIDE_TRAFFIC_LIGHT, +// "0".toByteArray() +// ) +// } +// //如果没有OBU灯态则进行隐藏,如果有OBU灯态,则交由OBU管理 +// if (!hasObuLightStatus) { +// CallerTrafficLightListenerManager.resetTrafficLightStatus(!hasObuLightStatus) +//// hide("云端离开路口隐藏", DataSourceType.AICLOUD) +// } +// } } /** @@ -336,9 +332,6 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight "${SceneConstant.M_D_C}${TAG}", "onTrafficRequestError hasObuLightStatus = $hasObuLightStatus ------> " ) - if (HmiBuildConfig.isShowCarSourceTrafficLightView) { - return - } CallerTrafficLightListenerManager.resetTrafficLightStatus(hasAiLightStatus) hasAiLightStatus = false // if (!hasObuLightStatus) { @@ -515,9 +508,6 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight } private fun updateTrafficLight(trafficLightResult: TrafficLightResult) { - if(HmiBuildConfig.isShowCarSourceTrafficLightView){ - return - } val currentTrafficLight = trafficLightResult.currentRoadTrafficLight() CallerLogger.d( "${SceneConstant.M_D_C}${TAG}", @@ -536,7 +526,7 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight } private fun filterTelematicUnion(source: DataSourceType): Boolean { - return HmiBuildConfig.isShowCarSourceTrafficLightView && source != DataSourceType.TELEMATIC_UNION_V2N && source != DataSourceType.TELEMATIC_UNION_V2I && source != DataSourceType.TELEMATIC + return source != DataSourceType.TELEMATIC_UNION_V2N && source != DataSourceType.TELEMATIC_UNION_V2I && source != DataSourceType.TELEMATIC } fun destroy() { diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectView.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectView.kt index 7d563665fa..91160223af 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectView.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectView.kt @@ -89,7 +89,7 @@ class AIDataCollectView @JvmOverloads constructor( clickListener?.onClose() } //接管记录日期 - tvDataCollectDate.text = millis2String(System.currentTimeMillis(), getYMDFormat()) + tvDataCollectDate.text = millis2String(System.currentTimeMillis()) val linearLayoutManager = LinearLayoutManager(context) linearLayoutManager.orientation = LinearLayoutManager.VERTICAL rvDataCollectList?.layoutManager = linearLayoutManager diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/workorder/FaultReasonWindow.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/workorder/FaultReasonWindow.kt index e93670d0eb..0e2e19c7dc 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/workorder/FaultReasonWindow.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/workorder/FaultReasonWindow.kt @@ -220,7 +220,7 @@ class FaultReasonWindow constructor(activity: Activity) : View.OnTouchListener, @SuppressLint("SetTextI18n") private fun initEvent() { - CallerDevaToolsListenerManager.addListener(TAG, this) + CallerDevaToolsListenerManager.addListener(this.hashCode().toString(), this) val iconDown = ContextCompat.getDrawable(mActivity, R.drawable.icon_fault_expand) iconDown?.setBounds(0, 0, iconDown.minimumWidth, iconDown.minimumHeight) val iconUp = ContextCompat.getDrawable(mActivity, R.drawable.icon_fault_retract) @@ -558,7 +558,7 @@ class FaultReasonWindow constructor(activity: Activity) : View.OnTouchListener, fun hideFloatWindow() { etNoteInput.clearFocus() - CallerDevaToolsListenerManager.removeListener(TAG) + CallerDevaToolsListenerManager.removeListener(this.hashCode().toString()) if (mFloatLayout.parent != null) { mWindowManager!!.removeView(mFloatLayout) } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/workorder/WorkOrderWindow.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/workorder/WorkOrderWindow.kt index 86a46e7efb..a1f053f661 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/workorder/WorkOrderWindow.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/workorder/WorkOrderWindow.kt @@ -135,7 +135,7 @@ class WorkOrderWindow constructor(activity: Activity) : View.OnTouchListener, @OptIn(DelicateCoroutinesApi::class) @SuppressLint("SetTextI18n") private fun initEvent(){ - CallerDevaToolsListenerManager.addListener(TAG, this) + CallerDevaToolsListenerManager.addListener(this.hashCode().toString(), this) //弹窗展示时间 tvWorkOrderTime.text = mActivity.resources.getString(R.string.work_order_time) + millis2String(System.currentTimeMillis(), TimeUtils.getHourMinSecondFormat()) @@ -382,7 +382,7 @@ class WorkOrderWindow constructor(activity: Activity) : View.OnTouchListener, if (mFloatLayout.parent != null){ mWindowManager!!.removeView(mFloatLayout) } - CallerDevaToolsListenerManager.removeListener(TAG) + CallerDevaToolsListenerManager.removeListener(this.hashCode().toString()) } override fun workOrderReportSuccess() { diff --git a/core/function-impl/mogo-core-function-devatools/src/main/res/drawable-xhdpi/bg_take_over_reason_save.png b/core/function-impl/mogo-core-function-devatools/src/main/res/drawable-xhdpi/bg_take_over_reason_save.png new file mode 100644 index 0000000000..3de655fea4 Binary files /dev/null and b/core/function-impl/mogo-core-function-devatools/src/main/res/drawable-xhdpi/bg_take_over_reason_save.png differ diff --git a/core/function-impl/mogo-core-function-devatools/src/main/res/layout/view_take_over_reason.xml b/core/function-impl/mogo-core-function-devatools/src/main/res/layout/view_take_over_reason.xml index bb97c8a3a4..2735fe0efb 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/res/layout/view_take_over_reason.xml +++ b/core/function-impl/mogo-core-function-devatools/src/main/res/layout/view_take_over_reason.xml @@ -39,7 +39,6 @@ android:text="@string/take_over_type" android:textSize="@dimen/sp_38" android:textColor="@color/white" - android:textStyle="bold" app:layout_constraintTop_toBottomOf="@id/tvTakeOverTitle" app:layout_constraintLeft_toLeftOf="@id/tvTakeOverTitle" android:layout_marginTop="@dimen/dp_65" @@ -69,7 +68,6 @@ android:text="@string/take_over_reason" android:textSize="@dimen/sp_38" android:textColor="@color/white" - android:textStyle="bold" app:layout_constraintTop_toBottomOf="@id/tvTakeOverType" app:layout_constraintLeft_toLeftOf="@id/tvTakeOverType" android:layout_marginTop="@dimen/dp_36" @@ -99,7 +97,6 @@ android:text="@string/fault_note" android:textSize="@dimen/sp_38" android:textColor="@color/white" - android:textStyle="bold" app:layout_constraintTop_toBottomOf="@id/tvTakeOverReason" app:layout_constraintLeft_toLeftOf="@id/tvTakeOverReason" android:layout_marginTop="@dimen/dp_36" diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/BoneTabLayout.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/BoneTabLayout.kt index db741e45a1..711ead57c3 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/BoneTabLayout.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/BoneTabLayout.kt @@ -3,6 +3,7 @@ package com.mogo.eagle.core.function.hmi.bone import android.content.Context import android.util.AttributeSet import android.view.LayoutInflater +import android.view.View import androidx.constraintlayout.widget.ConstraintLayout import com.mogo.eagle.core.function.api.datacenter.msgbox.IMsgBoxEventListener import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxEventListenerManager @@ -171,7 +172,9 @@ class BoneTabLayout @JvmOverloads constructor( override fun onUpdateTipEvent(isShow: Boolean) { super.onUpdateTipEvent(isShow) UiThreadHandler.post { - tabSwitchMsgBox.updateNotice(isShow) + if(msgBoxTabView.visibility == View.GONE){ + tabSwitchMsgBox.updateNotice(isShow) + } } } } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/status/fsm/FSMStatusDetailDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/status/fsm/FSMStatusDetailDialog.kt index f14013128d..fe3a7d991f 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/status/fsm/FSMStatusDetailDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/status/fsm/FSMStatusDetailDialog.kt @@ -20,7 +20,7 @@ import com.zhjt.mogo_core_function_devatools.status.entity.Status /** * FSM状态展示 Dialog */ -class FSMStatusDetailDialog(context: Context) : BaseFloatDialog(context), +class FSMStatusDetailDialog(context: Context) : BaseFloatDialog(context, TAG), StatusManager.IStatusListener { companion object { private const val TAG = "FSMStatusDetailDialog" diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/adapter/MsgBoxTabAdapter.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/adapter/MsgBoxTabAdapter.kt index 9b840e0ed4..8e3841c05e 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/adapter/MsgBoxTabAdapter.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/bone/tab/adapter/MsgBoxTabAdapter.kt @@ -8,7 +8,6 @@ import android.view.ViewGroup import android.widget.ImageView import android.widget.TextView import androidx.core.content.res.ResourcesCompat -import androidx.core.view.isVisible import androidx.recyclerview.widget.RecyclerView import com.mogo.eagle.core.data.enums.DataSourceType import com.mogo.eagle.core.data.enums.EventTypeEnumNew @@ -213,15 +212,15 @@ class MsgBoxTabAdapter(private val activity: Activity) : when(receiveFaultLevel[0]){ 0->{ //重度预警样式 - holder.ivFmImage.setImageDrawable(getDrawable(R.drawable.icon_fm_stop_normal)) + holder.ivFmImage.setImageDrawable(getDrawable(R.drawable.icon_fm_severe_warning)) } 1,2,3->{ //中度预警样式 - holder.ivFmImage.setImageDrawable(getDrawable(R.drawable.icon_fm_reduce_normal)) + holder.ivFmImage.setImageDrawable(getDrawable(R.drawable.icon_fm_moderate_warning)) } 4,5->{ //轻度预警样式 - holder.ivFmImage.setImageDrawable(getDrawable(R.drawable.icon_fm_warning_normal)) + holder.ivFmImage.setImageDrawable(getDrawable(R.drawable.icon_fm_mild_warning)) } } receiveFaultLevel.forEach {level-> @@ -248,7 +247,7 @@ class MsgBoxTabAdapter(private val activity: Activity) : }else{ holder.tvFmAction.text = "建议操作:暂无" //轻度预警样式 - holder.ivFmImage.setImageDrawable(getDrawable(R.drawable.icon_fm_warning_normal)) + holder.ivFmImage.setImageDrawable(getDrawable(R.drawable.icon_fm_mild_warning)) } } //故障策略 @@ -342,18 +341,18 @@ class MsgBoxTabAdapter(private val activity: Activity) : || reportEntity.resultList.contains(RESULT_REMOTEPILOT_DISABLE) ) { //Error - holder.ivReportImage.setImageDrawable(getDrawable(R.drawable.icon_report_error_normal)) + holder.ivReportImage.setImageDrawable(getDrawable(R.drawable.icon_report_error)) holder.tvReportLevel.text = "Error" } else if(reportEntity.resultList.contains(RESULT_AUTOPILOT_INFERIOR) || reportEntity.resultList.contains(RESULT_SHOW_WARNING) || reportEntity.resultList.contains(RESULT_REMOTEPILOT_INFERIOR) ){ //Warning - holder.ivReportImage.setImageDrawable(getDrawable(R.drawable.icon_report_warning_normal)) + holder.ivReportImage.setImageDrawable(getDrawable(R.drawable.icon_report_warning)) holder.tvReportLevel.text = "Warning" }else { //INFO - holder.ivReportImage.setImageDrawable(getDrawable(R.drawable.icon_report_info_normal)) + holder.ivReportImage.setImageDrawable(getDrawable(R.drawable.icon_report_info)) holder.tvReportLevel.text = "Info" } @@ -499,11 +498,6 @@ class MsgBoxTabAdapter(private val activity: Activity) : TimeUtils.millis2String(it[position].timestamp, getHourMinFormat()) holder.tvV2XContent.text = v2XMsg.content holder.ivV2XImage.setImageDrawable(ResourcesCompat.getDrawable(activity.resources,EventTypeEnumNew.getUpdateIconRes(v2XMsg.type),null)) - if(v2XMsg.type== EventTypeEnumNew.TYPE_VERIFICATION_SUCCESSFUL.poiType||v2XMsg.type == EventTypeEnumNew.TYPE_DEVICE_STATUS_NORMAL.poiType){ - holder.itemView.setBackgroundResource(R.drawable.bg_temp_v2x_success) - }else{ - holder.itemView.setBackgroundResource(R.drawable.bg_msg_box_v2x) - } if(v2XMsg.communicationType.isNullOrEmpty()){ holder.tvV2XTitle.text = EventTypeEnumNew.getEventTitle(v2XMsg.type) }else{ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/dialog/BaseFloatDialog.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/dialog/BaseFloatDialog.java index 3e9a52ceb4..b39e7cb3dc 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/dialog/BaseFloatDialog.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/dialog/BaseFloatDialog.java @@ -12,6 +12,9 @@ import androidx.annotation.NonNull; import androidx.annotation.RequiresApi; import com.mogo.commons.debug.DebugConfig; +import com.mogo.commons.module.status.IMogoStatusChangedListener; +import com.mogo.commons.module.status.MogoStatusManager; +import com.mogo.commons.module.status.StatusDescriptor; import com.mogo.eagle.core.function.hmi.R; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.PermissionUtils; @@ -21,14 +24,22 @@ import com.mogo.eagle.core.utilcode.util.PermissionUtils; * * @author tongchenfei */ -public class BaseFloatDialog extends Dialog { +public class BaseFloatDialog extends Dialog implements IMogoStatusChangedListener { private static final String TAG = "BaseFloatDialog"; + private static String REGISTER_TAG = ""; + public BaseFloatDialog(@NonNull Context context) { this(context, R.style.BaseFloatDialogStyle); } + public BaseFloatDialog(@NonNull Context context, String tag) { + this(context, R.style.BaseFloatDialogStyle); + REGISTER_TAG = TAG + "_" + tag; + MogoStatusManager.getInstance().registerStatusChangedListener(REGISTER_TAG, StatusDescriptor.MAIN_PAGE_IS_BACKGROUND, this); + } + public BaseFloatDialog(@NonNull Context context, int themeResId) { super(context, themeResId); if (DebugConfig.getCarMachineType() != DebugConfig.CAR_MACHINE_TYPE_BYD) { @@ -61,6 +72,7 @@ public class BaseFloatDialog extends Dialog { @Override public void dismiss() { CallerLogger.d( TAG, "onDismiss===="); + MogoStatusManager.getInstance().unregisterStatusChangedListener(REGISTER_TAG, StatusDescriptor.MAIN_PAGE_IS_BACKGROUND, this); super.dismiss(); } private void setWindowSize(){ @@ -76,4 +88,11 @@ public class BaseFloatDialog extends Dialog { } getWindow().setAttributes(attributes); } + + @Override + public void onStatusChanged(StatusDescriptor descriptor, boolean isTrue) { + if(descriptor == StatusDescriptor.MAIN_PAGE_IS_BACKGROUND && isTrue){ + dismiss(); + } + } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/traffic/TrafficLightPromptView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/traffic/TrafficLightPromptView.kt index 6cf7f76452..a5336bf601 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/traffic/TrafficLightPromptView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/traffic/TrafficLightPromptView.kt @@ -16,7 +16,6 @@ import com.mogo.eagle.core.function.hmi.R import com.mogo.eagle.core.function.hmi.ui.widget.TypefaceTextView import com.mogo.eagle.core.utilcode.mogo.thread.WorkThreadHandler import com.mogo.eagle.core.utilcode.util.ThreadUtils -import com.mogo.eagle.core.utilcode.util.UiThreadHandler /** * 融合红绿灯变灯提示 @@ -32,7 +31,7 @@ class TrafficLightPromptView @JvmOverloads constructor( private const val TAG = "TrafficLightPromptView" } - private var user = 0 //使用方,driver:0 passenger:1 + private var user = 0 //使用方,driver:0 passenger taxi:1 passenger bus:2 private var tvPromptTitle: TextView ?= null private var tvPromptContent: TextView ?= null private var tvTrafficNum: TypefaceTextView ?= null @@ -91,11 +90,21 @@ class TrafficLightPromptView @JvmOverloads constructor( override fun onAttachedToWindow() { super.onAttachedToWindow() - if(user == 0){ - LayoutInflater.from(context).inflate(R.layout.view_traffic_light_prompt, this, true) - tvPromptTitle = findViewById(R.id.tvPromptTitle) - }else{ - LayoutInflater.from(context).inflate(R.layout.view_traffic_light_prompt_p, this, true) + when (user) { + 0 -> { + //司机端 + LayoutInflater.from(context).inflate(R.layout.view_traffic_light_prompt, this, true) + tvPromptTitle = findViewById(R.id.tvPromptTitle) + } + 1 -> { + //TAXI乘客端 + LayoutInflater.from(context).inflate(R.layout.view_traffic_light_prompt_p_taxi, this, true) + } + else -> { + //BUS乘客端 + LayoutInflater.from(context).inflate(R.layout.view_traffic_light_prompt_p_bus, this, true) + tvPromptTitle = findViewById(R.id.tvPromptTitle) + } } tvPromptContent = findViewById(R.id.tvPromptContent) tvTrafficNum = findViewById(R.id.tvTrafficNum) @@ -163,12 +172,22 @@ class TrafficLightPromptView @JvmOverloads constructor( msg.obj = currentDuration mLightHandler.sendMessageDelayed(msg,200) } - if(user == 0){ - tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_green)) - tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_green)) - }else{ - tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_green_p)) - tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_green_p)) + when (user) { + 0 -> { + //司机端 + tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_green)) + tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_green)) + } + 1 -> { + //TAXI乘客端 + tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_green_p)) + tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_green_p)) + } + else -> { + //BUS乘客端 + tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_green_p_bus)) + tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_green_p_bus)) + } } } TrafficLightEnum.RED->{ @@ -179,12 +198,22 @@ class TrafficLightPromptView @JvmOverloads constructor( msg.obj = currentDuration mLightHandler.sendMessageDelayed(msg,200) } - if(user == 0){ - tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_red)) - tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_red)) - }else{ - tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_red_p)) - tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_red_p)) + when (user) { + 0 -> { + //司机端 + tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_red)) + tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_red)) + } + 1 -> { + //TAXI乘客端 + tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_red_p)) + tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_red_p)) + } + else -> { + //BUS乘客端 + tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_red_p_bus)) + tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_red_p_bus)) + } } } TrafficLightEnum.YELLOW->{ @@ -195,12 +224,22 @@ class TrafficLightPromptView @JvmOverloads constructor( msg.obj = currentDuration mLightHandler.sendMessageDelayed(msg,200) } - if(user == 0){ - tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_yellow)) - tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_yellow)) - }else{ - tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_yellow_p)) - tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_yellow_p)) + when (user) { + 0 -> { + //司机端 + tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_yellow)) + tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_yellow)) + } + 1 -> { + //TAXI乘客端 + tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_yellow_p)) + tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_yellow_p)) + } + else -> { + //BUS乘客端 + tvTrafficNum?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_yellow_p_bus)) + tvTrafficNumDecimal?.setTextColor(ContextCompat.getColor(context,R.color.light_prompt_yellow_p_bus)) + } } } TrafficLightEnum.BLACK->{ @@ -218,33 +257,57 @@ class TrafficLightPromptView @JvmOverloads constructor( } when(nextState){ TrafficLightEnum.GREEN->{ - if(user == 0){ - //司机端提示 - tvPromptTitle?.text = "即将绿灯" - tvPromptContent?.text = "请准备出发" - }else{ - //乘客端提示 - tvPromptContent?.text = "即将绿灯,请准备出发" + when (user) { + 0 -> { + //司机端提示 + tvPromptTitle?.text = "即将绿灯" + tvPromptContent?.text = "请准备出发" + } + 1 -> { + //TAXI乘客端提示 + tvPromptContent?.text = "即将绿灯,请准备出发" + } + else -> { + //BUS乘客端提示 + tvPromptTitle?.text = "即将绿灯" + tvPromptContent?.text = "请准备出发" + } } } TrafficLightEnum.RED->{ - if(user == 0){ - //司机端提示 - tvPromptTitle?.text = "即将红灯" - tvPromptContent?.text = "请减速慢行" - }else{ - //乘客端提示 - tvPromptContent?.text = "即将红灯,请减速慢行" + when (user) { + 0 -> { + //司机端提示 + tvPromptTitle?.text = "即将红灯" + tvPromptContent?.text = "请减速慢行" + } + 1 -> { + //TAXI乘客端提示 + tvPromptContent?.text = "即将红灯,请减速慢行" + } + else -> { + //BUS乘客端提示 + tvPromptTitle?.text = "即将红灯" + tvPromptContent?.text = "请减速慢行" + } } } TrafficLightEnum.YELLOW->{ - if(user == 0){ - //司机端提示 - tvPromptTitle?.text = "即将黄灯" - tvPromptContent?.text = "请减速慢行" - }else{ - //乘客端提示 - tvPromptContent?.text = "即将红灯,请减速慢行" + when (user) { + 0 -> { + //司机端提示 + tvPromptTitle?.text = "即将黄灯" + tvPromptContent?.text = "请减速慢行" + } + 1 -> { + //TAXI乘客端提示 + tvPromptContent?.text = "即将红灯,请减速慢行" + } + else -> { + //BUS乘客端提示 + tvPromptTitle?.text = "即将黄灯" + tvPromptContent?.text = "请减速慢行" + } } } TrafficLightEnum.BLACK->{ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/OperatePanelLayout.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/OperatePanelLayout.kt index dd3966d056..dd19d91f7e 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/OperatePanelLayout.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/operate/OperatePanelLayout.kt @@ -652,8 +652,6 @@ class OperatePanelLayout : LinearLayout { class BusinessPreferenceFragmentCompat : OperatePanelDetailBase() { companion object { - private const val KEY_RED_OR_GREEN_LIGHT_MARKER = "red_or_green_light_marker" - private const val KEY_RED_OR_GREEN_LIGHT_MERGE_MARKER = "red_or_green_light_merge_marker" private const val KEY_FAULT_REPORT_TIP = "fault_report_tip" private const val KEY_LIMIT_SPEED_MARKER = "limit_speed_marker" private const val KEY_WEATHER_EFFECT_SWITCH = "weather_effect_switch" @@ -666,12 +664,6 @@ class OperatePanelLayout : LinearLayout { override fun getDefaultVal(pref: Preference): Any? { when (pref.key) { - KEY_RED_OR_GREEN_LIGHT_MARKER -> { - return HmiBuildConfig.isShowTrafficLightView - } - KEY_RED_OR_GREEN_LIGHT_MERGE_MARKER -> { - return HmiBuildConfig.isShowCarSourceTrafficLightView - } KEY_FAULT_REPORT_TIP -> { return FunctionBuildConfig.isReportWarning } @@ -748,25 +740,6 @@ class OperatePanelLayout : LinearLayout { override fun onPreferenceChange(preference: Preference, newValue: Any?): Boolean { when (preference.key) { - KEY_RED_OR_GREEN_LIGHT_MARKER -> { - val isChecked = newValue as? Boolean ?: false - hmiAction("SOP 红绿灯标识开关, ", isChecked) - HmiBuildConfig.isShowTrafficLightView = isChecked - clickEventAnalytics("红绿灯标识", isChecked) - if (isChecked) { - CallerHmiManager.showTrafficLightView() - } else { - CallerHmiManager.hideTrafficLightView() - } - return true - } - KEY_RED_OR_GREEN_LIGHT_MERGE_MARKER -> { - val isChecked = newValue as? Boolean ?: false - hmiAction("SOP 红绿灯车端来源标识开关, ", isChecked) - clickEventAnalytics("红绿灯车端融合标识", isChecked) - HmiBuildConfig.isShowCarSourceTrafficLightView = isChecked - return true - } KEY_FAULT_REPORT_TIP -> { val isChecked = newValue as? Boolean ?: false hmiAction("SOP 是否开启异常上报, ", isChecked) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt index e613c87307..b4646a4443 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt @@ -58,7 +58,6 @@ import kotlinx.android.synthetic.main.view_sop_setting.view.rbThirty import kotlinx.android.synthetic.main.view_sop_setting.view.rgFusionMode import kotlinx.android.synthetic.main.view_sop_setting.view.rgPullTime import kotlinx.android.synthetic.main.view_sop_setting.view.scCarAperture -import kotlinx.android.synthetic.main.view_sop_setting.view.scCarUnionTrafficLight import kotlinx.android.synthetic.main.view_sop_setting.view.scConnectionSwitch import kotlinx.android.synthetic.main.view_sop_setting.view.scDemoMode import kotlinx.android.synthetic.main.view_sop_setting.view.scDrawPointCloudData @@ -83,7 +82,6 @@ import kotlinx.android.synthetic.main.view_sop_setting.view.scShowBagRecordWindo import kotlinx.android.synthetic.main.view_sop_setting.view.scSpeedLimit import kotlinx.android.synthetic.main.view_sop_setting.view.scSweeperModeSwitch import kotlinx.android.synthetic.main.view_sop_setting.view.scTakeOverRemind -import kotlinx.android.synthetic.main.view_sop_setting.view.scTrafficLight import kotlinx.android.synthetic.main.view_sop_setting.view.scV2ISwitch import kotlinx.android.synthetic.main.view_sop_setting.view.scV2NSwitch import kotlinx.android.synthetic.main.view_sop_setting.view.scV2XSwitch @@ -718,26 +716,6 @@ internal class SOPSettingView @JvmOverloads constructor( * 其他类别开关设置 */ private fun otherSetting() { - //红绿灯标识开关 - scTrafficLight.isChecked = !HmiBuildConfig.isShowTrafficLightView - scTrafficLight.setOnCheckedChangeListener { _, isChecked -> - hmiAction("SOP 红绿灯标识开关, ", isChecked) - clickEventAnalytics("红绿灯标识",isChecked) - if (isChecked) { - CallerHmiManager.showTrafficLightView() - } else { - CallerHmiManager.hideTrafficLightView() - } - } - - //红绿灯车端来源标识开关 - scCarUnionTrafficLight.isChecked = HmiBuildConfig.isShowCarSourceTrafficLightView - scCarUnionTrafficLight.setOnCheckedChangeListener { _, isChecked -> - hmiAction("SOP 红绿灯车端来源标识开关, ", isChecked) - clickEventAnalytics("红绿灯车端融合标识",isChecked) - HmiBuildConfig.isShowCarSourceTrafficLightView = isChecked - } - //系统启动状态展示 scConnectionSwitch.isChecked = HmiBuildConfig.isShowConnectionProgressView scConnectionSwitch.setOnCheckedChangeListener { _, isChecked -> diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/AdUpgradeDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/AdUpgradeDialog.kt index 215b2fbbbd..769725fa72 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/AdUpgradeDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/AdUpgradeDialog.kt @@ -15,9 +15,10 @@ import com.mogo.eagle.core.utilcode.util.ToastUtils * @since: 2022/1/13 */ class AdUpgradeDialog(context: Context, images: List, padSn: String, releaseId: String) : - BaseFloatDialog(context), LifecycleObserver { + BaseFloatDialog(context,TAG), LifecycleObserver { companion object { + private const val TAG = "AdUpgradeDialog" private var adUpgradeDialog: AdUpgradeDialog? = null fun show(context: Context?, images: List, padSn: String, releaseId: String) { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/DockerRebootDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/DockerRebootDialog.kt index e4ed66d642..88cc15bd2b 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/DockerRebootDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/DockerRebootDialog.kt @@ -11,7 +11,7 @@ import com.mogo.eagle.core.function.hmi.dialog.BaseFloatDialog * @description 重启自动驾驶docker确认对话框 * @since: 2022/2/17 */ -class DockerRebootDialog(context: Context): BaseFloatDialog(context), LifecycleObserver { +class DockerRebootDialog(context: Context): BaseFloatDialog(context, "DockerReboot"), LifecycleObserver { private var rebootConfirm : TextView? = null private var rebootCancel : TextView? = null diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ModifyBindingCarDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ModifyBindingCarDialog.kt index 6d3c75519a..62853c34a2 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ModifyBindingCarDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ModifyBindingCarDialog.kt @@ -16,7 +16,7 @@ import com.mogo.eagle.core.utilcode.mogo.toast.TipToast * @brief 修改车辆对话框 * @author lixiaopeng */ -class ModifyBindingCarDialog(context: Context) : BaseFloatDialog(context), LifecycleObserver { +class ModifyBindingCarDialog(context: Context) : BaseFloatDialog(context, TAG), LifecycleObserver { companion object { private const val TAG = "ModifyBindingCarDialog" diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/OfflineMapDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/OfflineMapDialog.kt index 3cbedff0f8..3f00f75b4e 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/OfflineMapDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/OfflineMapDialog.kt @@ -22,7 +22,7 @@ import me.jessyan.autosize.utils.AutoSizeUtils /** * 离线地图缓存 */ -class OfflineMapDialog(context: Context) : BaseFloatDialog(context) { +class OfflineMapDialog(context: Context) : BaseFloatDialog(context, TAG) { companion object { private const val TAG = "OfflineMapDialog" diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ToBindingCarDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ToBindingCarDialog.kt index fd6ff11f66..52fe405225 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ToBindingCarDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/ToBindingCarDialog.kt @@ -17,7 +17,7 @@ import com.mogo.eagle.core.utilcode.mogo.toast.TipToast * @brief 绑定车辆对话框 * @author lixiaopeng */ -class ToBindingCarDialog(context: Context) : BaseFloatDialog(context), LifecycleObserver { +class ToBindingCarDialog(context: Context) : BaseFloatDialog(context, TAG), LifecycleObserver { companion object { private const val TAG = "ToBindingCarDialog" diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/UpgradeAppDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/UpgradeAppDialog.kt index e8a7e9ad4e..e2a8aa4942 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/UpgradeAppDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/tools/UpgradeAppDialog.kt @@ -19,7 +19,7 @@ import java.lang.ref.WeakReference * @brief APP升级提示弹框 * @author lixiaopeng */ -class UpgradeAppDialog(context: Context) : BaseFloatDialog(context), LifecycleObserver { +class UpgradeAppDialog(context: Context) : BaseFloatDialog(context,TAG), LifecycleObserver { companion object{ private const val TAG = "UpgradeAppDialog" diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt index fe5bd2eccc..895532f53b 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt @@ -120,9 +120,7 @@ class SingleTrafficLightView @JvmOverloads constructor( UiThreadHandler.post { CallerLogger.d("$M_HMI$TAG","update checkLightId:$checkLightId, lightSource: $lightSource") mCurrentLightId = checkLightId - if (!HmiBuildConfig.isShowTrafficLightView) { - updateTrafficLightIcon(checkLightId, lightSource) - } + updateTrafficLightIcon(checkLightId, lightSource) } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/bg_light_prompt_bus_p.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/bg_light_prompt_bus_p.png new file mode 100644 index 0000000000..96a1c7baae Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/bg_light_prompt_bus_p.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_fm_mild_warning.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_fm_mild_warning.png new file mode 100644 index 0000000000..4d58ebd616 Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_fm_mild_warning.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_fm_moderate_warning.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_fm_moderate_warning.png new file mode 100644 index 0000000000..909836b267 Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_fm_moderate_warning.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_fm_severe_warning.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_fm_severe_warning.png new file mode 100644 index 0000000000..9df275b83a Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_fm_severe_warning.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_report_error.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_report_error.png new file mode 100644 index 0000000000..54f4c05d77 Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_report_error.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_report_info.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_report_info.png new file mode 100644 index 0000000000..52e5f427cb Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_report_info.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_report_warning.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_report_warning.png new file mode 100644 index 0000000000..fdc305fcb6 Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/icon_report_warning.png differ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_fault_report.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_fault_report.xml deleted file mode 100644 index aed5a20c8a..0000000000 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_fault_report.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-devatools/src/main/res/drawable/bg_take_over_reason_save.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_work_order.xml similarity index 100% rename from core/function-impl/mogo-core-function-devatools/src/main/res/drawable/bg_take_over_reason_save.xml rename to core/function-impl/mogo-core-function-hmi/src/main/res/drawable/bg_work_order.xml diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_upgrade_app.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_upgrade_app.xml index 61cbf44203..eb22909f7a 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_upgrade_app.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/dialog_upgrade_app.xml @@ -16,7 +16,7 @@ android:textSize="@dimen/dp_45" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" - app:layout_constraintTop_toBottomOf="parent" /> + app:layout_constraintTop_toTopOf="parent" /> \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_tab_fm.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_tab_fm.xml index 084da8bebf..de601df2ae 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_tab_fm.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_tab_fm.xml @@ -2,17 +2,19 @@ + xmlns:app="http://schemas.android.com/apk/res-auto" + android:paddingBottom="@dimen/dp_26"> @@ -20,10 +22,11 @@ android:id="@+id/tvFmTitle" android:layout_width="@dimen/dp_0" android:layout_height="wrap_content" - app:layout_constraintTop_toTopOf="@id/ivFmImage" + app:layout_constraintTop_toTopOf="parent" app:layout_constraintLeft_toRightOf="@id/ivFmImage" app:layout_constraintRight_toLeftOf="@id/tvFmShowStatus" - android:layout_marginStart="@dimen/dp_30" + android:layout_marginStart="@dimen/dp_14" + android:layout_marginTop="@dimen/dp_26" android:textSize="@dimen/sp_38" android:textColor="@color/white" /> @@ -54,6 +57,7 @@ app:layout_constraintRight_toRightOf="@id/tvFmShowStatus" android:textColor="#CCCCCC" android:textSize="@dimen/sp_32" + android:layout_marginTop="@dimen/dp_6" /> @@ -66,6 +70,7 @@ app:layout_constraintRight_toRightOf="@id/tvFmShowStatus" android:textColor="#CCCCCC" android:textSize="@dimen/sp_32" + android:layout_marginTop="@dimen/dp_6" /> @@ -79,6 +84,7 @@ android:textColor="#CCCCCC" android:textSize="@dimen/sp_32" android:visibility="gone" + android:layout_marginTop="@dimen/dp_6" /> @@ -92,6 +98,7 @@ android:textColor="#CCCCCC" android:textSize="@dimen/sp_32" android:visibility="gone" + android:layout_marginTop="@dimen/dp_6" /> @@ -102,10 +109,10 @@ app:layout_constraintTop_toBottomOf="@id/tvFmReason" app:layout_constraintLeft_toLeftOf="@id/tvFmReason" app:layout_constraintRight_toRightOf="@id/tvFmShowStatus" - android:paddingBottom="@dimen/dp_30" android:textColor="#CCCCCC" android:textSize="@dimen/sp_32" android:visibility="gone" + android:layout_marginTop="@dimen/dp_6" /> \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_tab_ipc_report.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_tab_ipc_report.xml index ba364ff59a..3ade91511f 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_tab_ipc_report.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/item_tab_ipc_report.xml @@ -2,15 +2,16 @@ + xmlns:app="http://schemas.android.com/apk/res-auto" + android:paddingBottom="@dimen/dp_26"> @@ -18,12 +19,13 @@ android:id="@+id/tvReportLevel" android:layout_width="@dimen/dp_0" android:layout_height="wrap_content" - app:layout_constraintTop_toTopOf="@id/ivReportImage" + app:layout_constraintTop_toTopOf="parent" app:layout_constraintLeft_toRightOf="@id/ivReportImage" app:layout_constraintRight_toLeftOf="@id/tvReportShowStatus" android:textColor="@color/white" android:textSize="@dimen/sp_38" - android:layout_marginStart="@dimen/dp_30" + android:layout_marginStart="@dimen/dp_14" + android:layout_marginTop="@dimen/dp_26" /> diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/layout_msg_box_bubble.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/layout_msg_box_bubble.xml index e8a0ce25ed..11930e818d 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/layout_msg_box_bubble.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/layout_msg_box_bubble.xml @@ -7,7 +7,7 @@ diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_bone_tab.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_bone_tab.xml index 6a48deb66b..478f5ca7a5 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_bone_tab.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_bone_tab.xml @@ -28,7 +28,7 @@ - - - - - + app:layout_constraintTop_toBottomOf="@id/tvOtherTitle" /> + app:layout_constraintTop_toBottomOf="@id/tvOtherTitle" /> + + + + + + + + + + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_traffic_light_prompt_p.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_traffic_light_prompt_p_taxi.xml similarity index 100% rename from core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_traffic_light_prompt_p.xml rename to core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_traffic_light_prompt_p_taxi.xml diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_work_order.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_work_order.xml index 6796b20b3d..16b15be74b 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_work_order.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_work_order.xml @@ -23,12 +23,12 @@ android:layout_height="wrap_content" android:text="@string/fault_reason" android:textSize="@dimen/sp_40" - android:textColor="#CCFFFFFF" + android:textColor="@color/white" android:textStyle="bold" - app:layout_constraintTop_toTopOf="@id/view_title_bg" - app:layout_constraintBottom_toBottomOf="@id/view_title_bg" + app:layout_constraintTop_toTopOf="parent" app:layout_constraintStart_toStartOf="@id/view_title_bg" android:layout_marginStart="@dimen/dp_32" + android:layout_marginTop="@dimen/dp_55" /> + diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml index 555525b2a3..f286b4bedd 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml @@ -84,8 +84,11 @@ #31FF56 #FFCD3D #F63C12 + #F63C12 #36DB1C + #1FD74A #FDB700 + #FDB400 #131415 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/xml/operate_panel_preference_details_business.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/xml/operate_panel_preference_details_business.xml index 99ceb91076..5fd5b9faac 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/xml/operate_panel_preference_details_business.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/xml/operate_panel_preference_details_business.xml @@ -3,18 +3,6 @@ - - = 30100 && isTaxi(FunctionBuildConfig.appIdentityMode)) { - FunctionBuildConfig.isBeautyMode = false - drawType("关闭感知优化模式") - DriverIdentify.originDataDrawer - } else { - FunctionBuildConfig.isBeautyMode = true - drawType("开启感知优化模式") - UserIdentify.beautifyDataDrawer - } + identify = + if (version >= 30100 && isTaxi(FunctionBuildConfig.appIdentityMode)) { + FunctionBuildConfig.isBeautyMode = false + drawType("关闭感知优化模式") + DriverIdentify.originDataDrawer + } else { + FunctionBuildConfig.isBeautyMode = true + drawType("开启感知优化模式") + UserIdentify.beautifyDataDrawer + } } catch (e: Exception) { drawType("解析docker异常:$dockerVersion") identify = UserIdentify.beautifyDataDrawer } - }else{ + } else { return } } @@ -118,13 +118,14 @@ object IdentifyFactory : Identify, IMoGoObuStatusListener, IMoGoAutopilotCarConf when (msg.what) { MSG_CHECK -> { - if(startTime == 0L){ + if (startTime == 0L) { sendEmptyMessageDelayed(MSG_CHECK, 1000L) return } val endTime = System.nanoTime() val internal = TimeUnit.NANOSECONDS.toMillis(endTime - startTime) - if(internal >= 1000){ + if (internal >= 1000) { + lostFrame(internal.toString()) identify!!.clearOldMarker() } sendEmptyMessageDelayed(MSG_CHECK, 1000L) @@ -229,4 +230,13 @@ object IdentifyFactory : Identify, IMoGoObuStatusListener, IMoGoAutopilotCarConf mDrawerHandler.sendMessage(message) } + @ChainLog( + linkChainLog = ChainConstant.CHAIN_TYPE_SOCKET_AUTOPILOT, + linkCode = ChainConstant.CHAIN_SOURCE_ADAS, + nodeAliasCode = ChainConstant.CHAIN_CODE_ADAS_LOST_FRAME, + paramIndexes = [0] + ) + private fun lostFrame(time: String) { + } + } \ No newline at end of file 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 bb8801b16a..2d0626dcf6 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 @@ -237,6 +237,8 @@ class OverMapView @JvmOverloads constructor( if (mMapView != null) { mMapView!!.onDestroy() } + mAMap?.clear() + mAMap = null } // =================必须通知高德地图生命周期的变化================= diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/TravelRealityView.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/TravelRealityView.kt index 535e00d8fb..c4ed7c4598 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/TravelRealityView.kt +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/view/TravelRealityView.kt @@ -55,6 +55,7 @@ import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.MapAssetStyleUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_MAP import com.mogo.eagle.core.utilcode.util.CoordinateUtils import com.mogo.eagle.core.utilcode.util.LocationUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler @@ -202,7 +203,7 @@ class TravelRealityView @JvmOverloads constructor( * 在轨迹点附近的路口设备 */ @Volatile - private var deviceInPathList: List?? = null + private var deviceInPathList: List? = null @Volatile private var roadTrackList: List?>?>? = null @@ -269,31 +270,33 @@ class TravelRealityView @JvmOverloads constructor( initView(context) } catch (e: Exception) { e.printStackTrace() - Log.d(TAG, "TravelRealityView初始化异常") + CallerLogger.d("$M_MAP$TAG", "TravelRealityView初始化异常") } } // =================必须通知高德地图生命周期的变化================= fun onCreateView(savedInstanceState: Bundle?) { mMapView?.onCreate(savedInstanceState) - Log.d(TAG, "高德地图onCreateView") + CallerLogger.d("$M_MAP$TAG", "高德地图onCreateView") } fun onResume() { mMapView?.onResume() isMapDestroyed = false - Log.d(TAG, "高德地图onResume") + CallerLogger.d("$M_MAP$TAG", "高德地图onResume") } fun onPause() { mMapView?.onPause() - Log.d(TAG, "高德地图onPause") + CallerLogger.d("$M_MAP$TAG", "高德地图onPause") } fun onDestroy() { mMapView?.onDestroy() + mAMap?.clear() + mAMap = null isMapDestroyed = true - Log.d(TAG, "高德地图页面已销毁!") + CallerLogger.d("$M_MAP$TAG", "高德地图页面已销毁!") } // =================必须通知高德地图生命周期的变化================= @@ -350,7 +353,7 @@ class TravelRealityView @JvmOverloads constructor( * 清除所有Marker和Polyline */ fun clearAllMarkersAndPolyline() { - Log.d(TAG, "clearAllMarkersAndPolyline") + CallerLogger.d("$M_MAP$TAG", "clearAllMarkersAndPolyline") nonFrequentHandler?.removeCallbacksAndMessages(null) travelNetWorkModel.cancelAllRequest() reqData = null @@ -469,7 +472,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun initTravelRealityMapView(isInit: Boolean = false) { - Log.d(TAG, "initAMapView") + CallerLogger.d("$M_MAP$TAG", "initAMapView") mAMap = mMapView?.map val mapStyleOptions = CustomMapStyleOptions() if (!mapStylePath.isNullOrEmpty() && !mapStyleExtraPath.isNullOrEmpty()) { @@ -511,7 +514,7 @@ class TravelRealityView @JvmOverloads constructor( } if (isInit) { mAMap?.setOnMapLoadedListener { - Log.d(TAG, "地图加载完成!") + CallerLogger.d("$M_MAP$TAG", "地图加载完成!") isMapLoaded = true mAMap?.setCustomMapStyle(mapStyleOptions) // 实时路况图层关闭,必须添加在loaded结束之后,其他位置不生效 @@ -569,13 +572,13 @@ class TravelRealityView @JvmOverloads constructor( override fun onVisibilityChanged(changedView: View, visibility: Int) { super.onVisibilityChanged(changedView, visibility) if (visibility == VISIBLE) { - Log.d(TAG, "onVisibilityChanged:VISIBLE!") + CallerLogger.d("$M_MAP$TAG", "onVisibilityChanged:VISIBLE!") } } override fun onAttachedToWindow() { super.onAttachedToWindow() - Log.d(TAG, "onAttachedToWindow") + CallerLogger.d("$M_MAP$TAG", "onAttachedToWindow") initHandlers() advanceRequest() CallerPlanningRottingListenerManager.addListener("${TAG}${this.hashCode()}", this) @@ -586,7 +589,7 @@ class TravelRealityView @JvmOverloads constructor( override fun onDetachedFromWindow() { super.onDetachedFromWindow() - Log.d(TAG, "onDetachedFromWindow") + CallerLogger.d("$M_MAP$TAG", "onDetachedFromWindow") deviceList = null retryCount = 0 // 注册定位监听 @@ -606,10 +609,10 @@ class TravelRealityView @JvmOverloads constructor( private fun advanceRequest() { isRoadTrackReq = true - Log.d(TAG, "请求获取智慧道路轨迹!") + CallerLogger.d("$M_MAP$TAG", "请求获取智慧道路轨迹!") // 获取智慧道路轨迹 travelNetWorkModel.getCityRoadTrack(onSuccess = { - Log.d(TAG, "Road track result is:$it") + CallerLogger.d("$M_MAP$TAG", "Road track result is:$it") roadTrackList = it isRoadTrackReq = false // 司机屏默认显示小地图的渲染,乘客屏默认显示行程总览地图的渲染 @@ -618,7 +621,7 @@ class TravelRealityView @JvmOverloads constructor( } }, onError = { isRoadTrackReq = false - Log.d(TAG, "Road track error is:$it") + CallerLogger.d("$M_MAP$TAG", "Road track error is:$it") }) } @@ -670,7 +673,7 @@ class TravelRealityView @JvmOverloads constructor( globalData[0].lat, globalData[0].lon ) - Log.w(TAG, "起终点距离为:$distance") + CallerLogger.w("$M_MAP$TAG", "起终点距离为:$distance") // if (distance < 2000) { // roadRange = maxRoadRange // roadWidth = minRoadWidth @@ -706,7 +709,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun handleRoadEvent(eventList: List, globalList: ArrayList) { - if (globalList.isNullOrEmpty()) return + if (globalList.isEmpty()) return testTime = System.currentTimeMillis() if (eventList.isEmpty()) { listener?.onDraw(emptyList(), true) @@ -717,8 +720,8 @@ class TravelRealityView @JvmOverloads constructor( } else { val eventDrawMap = HashMap() val eventOptionsList = ArrayList() - var distance = 0.0 - var key = "" + var distance: Double + var key: String val roadEvents = ArrayList() val eventPointMap = HashMap() globalList.forEachIndexed { index, globalPoint -> @@ -734,8 +737,7 @@ class TravelRealityView @JvmOverloads constructor( ) key = "${eventBean.lon},${eventBean.lat}" if (distance >= 10 || eventPointMap.contains(key)) { - Log.d( - TAG, + CallerLogger.d("$M_MAP$TAG", "道路事件:点(${key})到线段${index}-${index + 1}的距离为:${distance}米" ) return@forEach @@ -750,7 +752,7 @@ class TravelRealityView @JvmOverloads constructor( } } listener?.onDraw(eventDrawMap.values.toList(), true) - Log.d(TAG, "过滤掉的事件个数为:${eventList.size - eventOptionsList.size}") + CallerLogger.d("$M_MAP$TAG", "过滤掉的事件个数为:${eventList.size - eventOptionsList.size}") // 事件不足3个则用路口设备补齐 completeQuantity(roadEvents) // 绘制道路事件 @@ -761,7 +763,7 @@ class TravelRealityView @JvmOverloads constructor( private fun completeQuantity(roadEvents: ArrayList) { val ipPointEntityMap = HashMap>() // 全部展示事件,事件数不足则用路口设备补齐 - Log.d(TAG, "已绘制的道路事件个数为:${roadEvents.size}") + CallerLogger.d("$M_MAP$TAG", "已绘制的道路事件个数为:${roadEvents.size}") if (roadEvents.size >= 3) { roadEvents[0].let { it.ip?.also { ip -> @@ -894,7 +896,7 @@ class TravelRealityView @JvmOverloads constructor( } else -> { - Log.d(TAG, "请求到未知事件!") + CallerLogger.d("$M_MAP$TAG", "请求到未知事件!") } } } @@ -908,11 +910,11 @@ class TravelRealityView @JvmOverloads constructor( ipPointEntityMap: HashMap>, eventSize: Int ) { - Log.d(TAG, "retryGetCrossDevice") + CallerLogger.d("$M_MAP$TAG", "retryGetCrossDevice") val crossDeviceListTmp = deviceInPathList while (crossDeviceListTmp.isNullOrEmpty()) { if (retryCount >= 5) { - Log.d(TAG, "尝试多次后仍无法获取到路口设备数据!") + CallerLogger.d("$M_MAP$TAG", "尝试多次后仍无法获取到路口设备数据!") break } Thread.sleep(250) @@ -920,12 +922,12 @@ class TravelRealityView @JvmOverloads constructor( } var maxSize = 3 - eventSize if (maxSize <= 0) { - Log.d(TAG, "全息路口个数计算有误则返回!") + CallerLogger.d("$M_MAP$TAG", "全息路口个数计算有误则返回!") return } - Log.d(TAG, "待查询缩略图的事件个数为:${eventSize}") + CallerLogger.d("$M_MAP$TAG", "待查询缩略图的事件个数为:${eventSize}") if (!crossDeviceListTmp.isNullOrEmpty()) { - Log.d(TAG, "缓存的全息路口个数为:${crossDeviceListTmp.size}") + CallerLogger.d("$M_MAP$TAG", "缓存的全息路口个数为:${crossDeviceListTmp.size}") // 轨迹线附近的路口设备取几个进行卡片展示 crossDeviceListTmp.forEach { deviceInfoBean -> if (maxSize > 0) { @@ -1005,12 +1007,12 @@ class TravelRealityView @JvmOverloads constructor( ipPointEntityMap: HashMap> ) { val ipList = ipPointEntityMap.keys.toMutableList() - Log.d(TAG, "请求获取缩略图,个数为:${ipList.size}!") + CallerLogger.d("$M_MAP$TAG", "请求获取缩略图,个数为:${ipList.size}!") if (ipList.isEmpty()) { return } travelNetWorkModel.batchRequestCrossLive(ipList, onSuccess = { - Log.d(TAG, "Cross live result is:$it") + CallerLogger.d("$M_MAP$TAG", "Cross live result is:$it") val liveOptionsList = ArrayList() var markerOption: MarkerOptions var pair: Pair @@ -1043,18 +1045,18 @@ class TravelRealityView @JvmOverloads constructor( ipPointEntityMap[ip]!! ) } else { - Log.d(TAG, "缓存中未查到对应ip!!") + CallerLogger.d("$M_MAP$TAG", "缓存中未查到对应ip!!") return@let } } } } - Log.d(TAG, "绘制卡片的个数为:${liveOptionsList.size}") + CallerLogger.d("$M_MAP$TAG", "绘制卡片的个数为:${liveOptionsList.size}") // 绘制事件卡片 drawMarkers(DRAW_LIVE_DETAIL, liveOptionsList) adjustCameraWithVertex(vertexList) }, onError = { - Log.d(TAG, "Cross live error is:$it") + CallerLogger.d("$M_MAP$TAG", "Cross live error is:$it") }) } @@ -1082,8 +1084,7 @@ class TravelRealityView @JvmOverloads constructor( ) key = "${deviceBean.lon},${deviceBean.lat}" if (distance >= 10 || devicePointMap.contains(key)) { - Log.d( - TAG, + CallerLogger.d("$M_MAP$TAG", "路口设备:点(${key})到线段${index}-${index + 1}的距离为:${distance}米" ) return@loop @@ -1128,7 +1129,7 @@ class TravelRealityView @JvmOverloads constructor( ) } deviceInPathList = deviceInPaths - Log.d(TAG, "待绘制的全息路口的个数为:${crossOptionsList.size}") + CallerLogger.d("$M_MAP$TAG", "待绘制的全息路口的个数为:${crossOptionsList.size}") // 绘制路口设备 drawMarkers(DRAW_CROSS_DEVICE, crossOptionsList) } @@ -1164,7 +1165,7 @@ class TravelRealityView @JvmOverloads constructor( val globalOptionList = ArrayList() val globalIndexSet = HashSet() if (globalList.isNullOrEmpty()) {// 无轨迹时以道路中心线为中轴画给定宽度的纹理 - Log.d(TAG, "无轨迹点,绘制全局智慧道路!") + CallerLogger.d("$M_MAP$TAG", "无轨迹点,绘制全局智慧道路!") val boundsBuilder = LatLngBounds.Builder() var latLngTmp: LatLng roadTrajectoryList.forEach { trajectoryList -> @@ -1198,7 +1199,7 @@ class TravelRealityView @JvmOverloads constructor( ) moveMapCamera(cameraUpdate) } else { - Log.d(TAG, "有轨迹点,绘制局部智慧道路!") + CallerLogger.d("$M_MAP$TAG", "有轨迹点,绘制局部智慧道路!") roadTrajectoryList.forEach { trajectoryList -> var distanceTmp: Double // var lastIndex = -1 @@ -1234,7 +1235,7 @@ class TravelRealityView @JvmOverloads constructor( ) // 如果距离小于50m则认为在智慧道路内 if (distanceTmp < 50) { - Log.d(TAG, "智慧道路内点索引为:$i") + CallerLogger.d("$M_MAP$TAG", "智慧道路内点索引为:$i") globalIndexSet.add(i) } } @@ -1246,7 +1247,7 @@ class TravelRealityView @JvmOverloads constructor( var polylineOptionTmp: PolylineOptions? = null globalList.forEachIndexed { index, point -> if (!globalIndexSet.contains(index)) return@forEachIndexed - Log.w(TAG, "智慧道路内点索引为:$index") + CallerLogger.w("$M_MAP$TAG", "智慧道路内点索引为:$index") if (lastIndex < 0 || index - lastIndex > 1) { globalOptionList.add(PolylineOptions().also { optionTmp = it @@ -1414,7 +1415,7 @@ class TravelRealityView @JvmOverloads constructor( } else { lastTime = System.currentTimeMillis() } - Log.d(TAG, "下发全局轨迹!") + CallerLogger.d("$M_MAP$TAG", "下发全局轨迹!") globalPathResp?.let { globalPath -> if (isSmallMap) { if (globalPath.wayPointsList.size > 0) { @@ -1428,13 +1429,13 @@ class TravelRealityView @JvmOverloads constructor( pointList.add(Point(loc.longitude, loc.latitude)) pointCloneList.add(Point(loc.longitude, loc.latitude)) } - Log.d(TAG, "轨迹点个数为:${pointList.size}") + CallerLogger.d("$M_MAP$TAG", "轨迹点个数为:${pointList.size}") reqData = pointCloneList handleGlobalPath(pointList) requestData(pointList) if (!isRoadTrackReq) { - Log.d(TAG, "处理智慧道路轨迹!") + CallerLogger.d("$M_MAP$TAG", "处理智慧道路轨迹!") handleRoadTrajectories(roadTrackList, pointList) } } @@ -1620,21 +1621,21 @@ class TravelRealityView @JvmOverloads constructor( private fun requestData(pointList: ArrayList) { if (!isCrossDeviceReq) { - Log.d(TAG, "请求获取路口设备!") + CallerLogger.d("$M_MAP$TAG", "请求获取路口设备!") isCrossDeviceReq = true // 获取路口设备 travelNetWorkModel.getCrossDevice(onSuccess = { - Log.d(TAG, "Cross device result is:$it") + CallerLogger.d("$M_MAP$TAG", "Cross device result is:$it") isCrossDeviceReq = false deviceList = it handleCrossDevices(it, pointList) }, onError = { isCrossDeviceReq = false - Log.d(TAG, "Cross device error is:$it") + CallerLogger.d("$M_MAP$TAG", "Cross device error is:$it") }) } if (!isRoadEventReq) { - Log.d(TAG, "请求获取道路事件!") + CallerLogger.d("$M_MAP$TAG", "请求获取道路事件!") // 获取道路事件 var cityCode = CallerMapUIServiceManager.getCityCode() ?: "0734" if (cityCode.isEmpty()) { @@ -1646,13 +1647,13 @@ class TravelRealityView @JvmOverloads constructor( onSuccess = { isRoadEventReq = false retryCount = 0 - Log.d(TAG, "Events result is:$it") + CallerLogger.d("$M_MAP$TAG", "Events result is:$it") handleRoadEvent(it, pointList) }, onError = { isRoadEventReq = false retryCount = 0 - Log.d(TAG, "Events error is:$it") + CallerLogger.d("$M_MAP$TAG", "Events error is:$it") }) } } @@ -1666,7 +1667,7 @@ class TravelRealityView @JvmOverloads constructor( if (mAMap != null && mAMap!!.projection != null) { var latLng: LatLng? // 经纬度转屏幕坐标 - var point = mAMap!!.projection!!.toScreenLocation(position) + val point = mAMap!!.projection!!.toScreenLocation(position) point?.let { travelNetWorkModel.calculateVertex(context, orientation, it).forEach { screenP -> // 每个顶点屏幕坐标转高德坐标 @@ -1817,7 +1818,7 @@ class TravelRealityView @JvmOverloads constructor( } } catch (e: Exception) { e.printStackTrace() - Log.e(TAG, "概览页面渲染异常为:${e.message}") + CallerLogger.e("$M_MAP$TAG", "概览页面渲染异常为:${e.message}") } } } @@ -1859,7 +1860,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun realDrawGlobalPath(polylineOptions: PolylineOptions) { - Log.d(TAG, "realDrawGlobalPath") + CallerLogger.d("$M_MAP$TAG", "realDrawGlobalPath") if (globalPolyline == null) { globalPolyline = mAMap?.addPolyline(polylineOptions) } else { @@ -1868,7 +1869,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun realDrawEventMarkers(eventOptionList: ArrayList) { - Log.d(TAG, "realDrawEventMarkers") + CallerLogger.d("$M_MAP$TAG", "realDrawEventMarkers") eventMarkerList.forEach { it.destroy() } @@ -1881,11 +1882,11 @@ class TravelRealityView @JvmOverloads constructor( it.isClickable = false } } - Log.d(TAG, "计算到绘制事件耗时为:${System.currentTimeMillis() - testTime}") + CallerLogger.d("$M_MAP$TAG", "计算到绘制事件耗时为:${System.currentTimeMillis() - testTime}") } private fun realClearEventMarkers() { - Log.d(TAG, "realClearEventMarkers") + CallerLogger.d("$M_MAP$TAG", "realClearEventMarkers") eventMarkerList.forEach { it.destroy() } @@ -1893,7 +1894,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun realDrawCrossDeviceMarkers(eventMarkerList: ArrayList) { - Log.d(TAG, "realDrawCrossDeviceMarkers") + CallerLogger.d("$M_MAP$TAG", "realDrawCrossDeviceMarkers") deviceMarkerList.forEach { it.destroy() } @@ -1907,7 +1908,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun realClearCrossDeviceMarkers() { - Log.d(TAG, "realClearCrossDeviceMarkers") + CallerLogger.d("$M_MAP$TAG", "realClearCrossDeviceMarkers") deviceMarkerList.forEach { it.destroy() } @@ -1918,7 +1919,7 @@ class TravelRealityView @JvmOverloads constructor( * 绘制在智慧道路范围内的轨迹 */ private fun realDrawGlobalTrajectory(polylineOptionsList: ArrayList) { - Log.d(TAG, "realDrawGlobalTrajectory") + CallerLogger.d("$M_MAP$TAG", "realDrawGlobalTrajectory") if (globalPolylineList.isNotEmpty() && globalPolylineList.size != polylineOptionsList.size) { globalPolylineList.forEach { it.remove() @@ -1948,7 +1949,7 @@ class TravelRealityView @JvmOverloads constructor( * 绘制智慧道路范围(和全局轨迹匹配过的) */ private fun realDrawRoadTrajectory(polylineOptionsList: ArrayList) { - Log.d(TAG, "realDrawRoadTrajectory") + CallerLogger.d("$M_MAP$TAG", "realDrawRoadTrajectory") if (trajectoryPolylineList.isNotEmpty() && trajectoryPolylineList.size != polylineOptionsList.size) { trajectoryPolylineList.forEach { it.remove() @@ -1975,7 +1976,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun realDrawLiveMarkers(liveOptionList: ArrayList) { - Log.d(TAG, "realDrawLiveMarkers") + CallerLogger.d("$M_MAP$TAG", "realDrawLiveMarkers") liveMarkerList.forEach { it.destroy() } @@ -1990,7 +1991,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun realClearLiveMarkers() { - Log.d(TAG, "realClearLiveMarkers") + CallerLogger.d("$M_MAP$TAG", "realClearLiveMarkers") liveMarkerList.forEach { it.destroy() } @@ -1998,7 +1999,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun realUpdateVideoMarker(options: List) { - Log.d(TAG, "realUpdateVideoMarker") + CallerLogger.d("$M_MAP$TAG", "realUpdateVideoMarker") liveMarkerList.forEach { liveMarker -> options.forEach { if (it.position == liveMarker.position) { @@ -2010,7 +2011,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun realDrawEndMarker(options: List) { - Log.d(TAG, "realDrawEndMarker") + CallerLogger.d("$M_MAP$TAG", "realDrawEndMarker") mStartMarker?.destroy() mStartMarker = null mEndMarker?.destroy() @@ -2035,7 +2036,7 @@ class TravelRealityView @JvmOverloads constructor( } private fun realClearAllMarkersAndPolyline() { - Log.d(TAG, "realClearAllMarkersAndPolyline") + CallerLogger.d("$M_MAP$TAG", "realClearAllMarkersAndPolyline") // 清除终点 mStartMarker?.destroy() mStartMarker = null diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/HmiBuildConfig.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/HmiBuildConfig.kt index 57009c9553..75b890726b 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/HmiBuildConfig.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/HmiBuildConfig.kt @@ -18,19 +18,6 @@ object HmiBuildConfig { @Volatile var isShowLimitingVelocityView = false - /** - * 是否显示 红绿等 - */ - @JvmField - @Volatile - var isShowTrafficLightView = false - - /** - * 是否显示 车端融合红绿等 - */ - @JvmField - @Volatile - var isShowCarSourceTrafficLightView = false /** * 是否展示系统启动状态展示视图,默认展示 true展示 false不展示 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 e2820b7d97..7d1770f792 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 @@ -47,6 +47,7 @@ class ChainConstant { /* ------------ Tag ---------- */ const val CHAIN_CODE_MULTI_CONNECT = "CHAIN_CODE_MULTI_CONNECT" + const val CHAIN_CODE_ADAS_CONNECT_STATUS = "CHAIN_CODE_ADAS_CONNECT_STATUS" const val CHAIN_CODE_ADAS_CAR_CONFIG = "CHAIN_CODE_ADAS_CAR_CONFIG" const val CHAIN_CODE_ADAS_RECT_DATA = "CHAIN_CODE_ADAS_RECT_DATA" const val CHAIN_CODE_ADAS_CAR_LOC = "CHAIN_CODE_ADAS_CAR_LOC" @@ -76,6 +77,8 @@ class ChainConstant { const val CHAIN_CODE_ADAS_IPC_REBOOT = "CHAIN_CODE_ADAS_IPC_REBOOT" const val CHAIN_CODE_ADAS_AUTOPILOT_INFO = "CHAIN_CODE_ADAS_AUTOPILOT_INFO" const val CHAIN_CODE_ADAS_COLD_START_STATE = "CHAIN_CODE_ADAS_COLD_START_STATE" + const val CHAIN_CODE_ADAS_LOST_FRAME = "CHAIN_CODE_ADAS_LOST_FRAME" + const val CHAIN_CODE_RECORD_NATIVE_LEAK = "CHAIN_CODE_RECORD_NATIVE_LEAK" const val CHAIN_CODE_RECORD_ANR = "CHAIN_CODE_RECORD_ANR" diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumNew.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumNew.kt index a407034c73..46421f4de2 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumNew.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/EventTypeEnumNew.kt @@ -1240,7 +1240,7 @@ enum class EventTypeEnumNew( FOURS_ACCIDENT_05.poiType -> { R.drawable.v2x_icon_jiaotongshigu_vr } - //事故 + //实时路况 FOURS_LIVING.poiType -> { R.drawable.v_to_x_marker_1 } diff --git a/core/mogo-core-res/src/main/res/values/dimens.xml b/core/mogo-core-res/src/main/res/values/dimens.xml index edb2344b4f..6a2585cc0d 100644 --- a/core/mogo-core-res/src/main/res/values/dimens.xml +++ b/core/mogo-core-res/src/main/res/values/dimens.xml @@ -1106,6 +1106,7 @@ 45dp 46dp 48dp + 50dp 52dp 55dp 57dp