diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java index f4d202ef6c..291a58f01d 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java @@ -9,9 +9,9 @@ import com.alibaba.android.arouter.facade.annotation.Route; 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.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.function.call.setting.CallerMoGoUiSettingManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.map.MogoMapUIController; import com.mogo.och.bus.passenger.constant.BusPassengerConst; import com.mogo.och.bus.passenger.ui.BusPassengerRouteFragment; @@ -20,6 +20,8 @@ import org.jetbrains.annotations.Nullable; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI_P; +import java.util.Objects; + /** * 网约车-Bus-乘客端 * @@ -82,9 +84,7 @@ public class MogoOCHBusPassenger implements IMogoOCH, IMogoStatusChangedListener */ private void stepIntoVrMode() { CallerLogger.INSTANCE.d( M_TAXI_P + TAG, "进入vr模式" ); - MogoMapUIController.getInstance() - .stepInVrMode( true ); // 白天模式 - + Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMapUIController()).stepInVrMode(true); // 白天模式 CallerMoGoUiSettingManager.INSTANCE.stepInDayMode();//白天模式 状态栏字体颜色变黑 } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java index 7e04f66bd0..5766d48689 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java @@ -13,14 +13,16 @@ import com.alibaba.android.arouter.facade.annotation.Route; 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.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.map.MogoMapUIController; import com.mogo.och.bus.constant.BusConst; import com.mogo.och.bus.fragment.BusFragment; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.Objects; + /** * 网约车小巴业务实现入口 * @@ -40,8 +42,7 @@ public class BusProvider implements IMogoOCH { */ private void stepIntoVrMode() { CallerLogger.INSTANCE.d(M_BUS + TAG, "进入vr模式"); - MogoMapUIController.getInstance() - .stepInVrMode(false); + Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMapUIController()).stepInVrMode(false); } @Override diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java index 97805d52d7..ddc42b1988 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java @@ -29,13 +29,14 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager; import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager; import com.mogo.eagle.core.function.call.hmi.CallerHmiManager; +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.function.hmi.ui.widget.TrafficDataView; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.mogo.view.OnPreventFastClickListener; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.map.MogoMapUIController; import com.mogo.map.listener.IMogoMapListener; import com.mogo.map.listener.MogoMapListenerHandler; +import com.mogo.map.uicontroller.IMogoMapUIController; import com.mogo.map.uicontroller.VisualAngleMode; import com.mogo.och.bus.R; import com.mogo.och.bus.bean.BusRoutesResult; @@ -121,26 +122,21 @@ public abstract class BaseBusTabFragment updateSwitchMapIcon(); mSwitchMapModeLayout.setOnClickListener(new OnPreventFastClickListener() { - @Override public void onClickImpl(View v) { - //切换地图的远近视图 - if (MogoMapUIController.getInstance().getCurrentMapVisualAngle().isLongSight()) { - // 2.11.0去掉 -// MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).visibleAllMarkers(); - MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); - mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_medium); - } else if (MogoMapUIController.getInstance().getCurrentMapVisualAngle().isMediumSight()) { - // 2.11.0去掉 -// MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) -// .inVisibleWithoutMarkers(DataTypes.TYPE_MARKER_ADAS, BusConst.TYPE_MARKER_BUS_ORDER); - MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null); - mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_long); - } else { - // 2.11.0去掉 -// MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).visibleAllMarkers(); - MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); - mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_medium); + IMogoMapUIController controller = CallerMapUIServiceManager.INSTANCE.getMapUIController(); + if (controller != null) { + //切换地图的远近视图 + if (controller.getCurrentMapVisualAngle().isLongSight()) { + controller.changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); + mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_medium); + } else if (controller.getCurrentMapVisualAngle().isMediumSight()) { + controller.changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null); + mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_long); + } else { + controller.changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); + mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_medium); + } } } }); @@ -214,12 +210,15 @@ public abstract class BaseBusTabFragment protected abstract void onArriveStation(); private void updateSwitchMapIcon() { - if (MogoMapUIController.getInstance().getCurrentMapVisualAngle().isLongSight()) { - mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_long); - } else if (MogoMapUIController.getInstance().getCurrentMapVisualAngle().isMediumSight()) { - mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_medium); - } else { - mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_medium); + IMogoMapUIController controller = CallerMapUIServiceManager.INSTANCE.getMapUIController(); + if (controller != null) { + if (controller.getCurrentMapVisualAngle().isLongSight()) { + mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_long); + } else if (controller.getCurrentMapVisualAngle().isMediumSight()) { + mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_medium); + } else { + mSwitchMapModeImage.setImageResource(R.drawable.bus_switch_map_medium); + } } } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BusFragment.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BusFragment.java index 1e9e003dfe..46ccc88b5b 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BusFragment.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BusFragment.java @@ -19,10 +19,10 @@ import com.mogo.eagle.core.data.temp.EventLogout; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.function.call.map.CallerHDMapManager; +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.function.call.map.CallerSmpManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.ToastUtils; -import com.mogo.map.MogoMarkerManager; import com.mogo.map.marker.IMogoMarker; import com.mogo.map.marker.MogoMarkerOptions; import com.mogo.och.bus.R; @@ -43,6 +43,7 @@ import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.ThreadMode; import java.util.List; +import java.util.Objects; /** @@ -456,42 +457,35 @@ public class BusFragment extends BaseBusTabFragment */ private void setOrRemoveMapMaker(boolean isAdd, String uuid, double lat, double longi,int resourceId) { if (isAdd) { - Runnable setMapMarkerRunnable = new Runnable() { - @Override - public void run() { - CallerLogger.INSTANCE.d(M_BUS + "setMapMaker= "+Thread.currentThread().getName(), - uuid + "=latitude=" + lat + ",longitude=" + longi); + Runnable setMapMarkerRunnable = () -> { + CallerLogger.INSTANCE.d(M_BUS + "setMapMaker= "+Thread.currentThread().getName(), + uuid + "=latitude=" + lat + ",longitude=" + longi); - MogoMarkerOptions options = new MogoMarkerOptions() - .owner(BusConst.TYPE_MARKER_BUS_ORDER) - .anchor(0.5f, 0.5f) - .set3DMode(true) - .gps(true) - .controlAngle(true) - .icon3DRes(resourceId) - .latitude(lat) - .longitude(longi); - IMogoMarker marker = MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) .addMarker(uuid, options); - CenterLine centerLine = CallerHDMapManager.INSTANCE.getCenterLineInfo( - longi,lat,-1); - if (null != centerLine && marker != null) { // 有可能鹰眼map为空没有角度。判空使用后可能造成maker角度跟道路角度不一致 地图未初始化会返回空 - marker.setRotateAngle(centerLine.getAngle().floatValue()); - } + MogoMarkerOptions options = new MogoMarkerOptions() + .owner(BusConst.TYPE_MARKER_BUS_ORDER) + .anchor(0.5f, 0.5f) + .set3DMode(true) + .gps(true) + .controlAngle(true) + .icon3DRes(resourceId) + .latitude(lat) + .longitude(longi); + IMogoMarker marker = Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMarkerManager(AbsMogoApplication.getApp())).addMarker(uuid, options); + CenterLine centerLine = CallerHDMapManager.INSTANCE.getCenterLineInfo( + longi,lat,-1); + if (null != centerLine && marker != null) { // 有可能鹰眼map为空没有角度。判空使用后可能造成maker角度跟道路角度不一致 地图未初始化会返回空 + marker.setRotateAngle(centerLine.getAngle().floatValue()); } }; OCHThreadPoolManager.getsInstance().execute(setMapMarkerRunnable); }else { - Runnable removeMapMarkerRunnable = new Runnable() { - @Override - public void run() { - CallerLogger.INSTANCE.d(M_BUS + "RemoveMapMaker="+Thread.currentThread().getName(), - uuid+"=latitude="+lat+",longitude="+longi); - MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).removeMarkers(uuid); - } + Runnable removeMapMarkerRunnable = () -> { + CallerLogger.INSTANCE.d(M_BUS + "RemoveMapMaker="+Thread.currentThread().getName(), + uuid+"=latitude="+lat+",longitude="+longi); + Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMarkerManager(AbsMogoApplication.getApp())).removeMarkers(uuid); }; - OCHThreadPoolManager.getsInstance().execute(removeMapMarkerRunnable); } } diff --git a/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/SweeperProvider.java b/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/SweeperProvider.java index 0db6a47aff..aa109b728f 100644 --- a/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/SweeperProvider.java +++ b/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/SweeperProvider.java @@ -11,14 +11,16 @@ import com.alibaba.android.arouter.facade.annotation.Route; 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.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.map.MogoMapUIController; import com.mogo.och.sweeper.constant.SweeperConst; import com.mogo.och.sweeper.fragment.SweeperFragment; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.Objects; + /** * 清扫车业务实现入口 * @@ -38,7 +40,7 @@ public class SweeperProvider implements IMogoOCH { */ private void stepIntoVrMode(){ CallerLogger.INSTANCE.d( M_BUS + TAG, "进入vr模式" ); - MogoMapUIController.getInstance() + Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMapUIController()) .stepInVrMode(false); } diff --git a/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/fragment/BaseSweeperTabFragment.java b/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/fragment/BaseSweeperTabFragment.java index 1b557c34c6..f2d6b76b20 100644 --- a/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/fragment/BaseSweeperTabFragment.java +++ b/OCH/mogo-och-sweeper/src/main/java/com/mogo/och/sweeper/fragment/BaseSweeperTabFragment.java @@ -31,14 +31,15 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager; import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager; import com.mogo.eagle.core.function.call.hmi.CallerHmiManager; +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.function.hmi.ui.widget.TrafficDataView; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.mogo.view.OnPreventFastClickListener; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.map.MogoMapUIController; -import com.mogo.map.MogoMarkerManager; import com.mogo.map.listener.IMogoMapListener; import com.mogo.map.listener.MogoMapListenerHandler; +import com.mogo.map.marker.IMogoMarkerManager; +import com.mogo.map.uicontroller.IMogoMapUIController; import com.mogo.map.uicontroller.VisualAngleMode; import com.mogo.och.sweeper.R; import com.mogo.och.sweeper.bean.SweeperRoutesResult; @@ -131,16 +132,19 @@ public abstract class BaseSweeperTabFragment 0 && currentStation < stationList.size() - 1) {// 是否到达站点 isArriveAtStation = true; mCurrentTag.setText(getResources().getString(R.string.sweeper_arrive_to_current_tag)); mNextTag.setText(getResources().getString(R.string.sweeper_arrive_to_next_tag)); setOrRemoveMapMaker(false, SweeperConst.SWEEPER_START_MAP_MAKER, startStation.getLat() - , startStation.getLon(),R.raw.star_marker); + , startStation.getLon(), R.raw.star_marker); setOrRemoveMapMaker(true, SweeperConst.SWEEPER_END_MAP_MAKER, endStation.getLat() - , endStation.getLon(),R.raw.end_marker); + , endStation.getLon(), R.raw.end_marker); } else if (currentStation == stationList.size() - 1) {// 是否到达终点 isArriveEndStation = true; nextStationName = "--"; mNextTag.setText(getResources().getString(R.string.sweeper_arrive_to_end_end)); setOrRemoveMapMaker(false, SweeperConst.SWEEPER_START_MAP_MAKER, startStation.getLat() - , startStation.getLon(),R.raw.star_marker); + , startStation.getLon(), R.raw.star_marker); if (isArrived) { setOrRemoveMapMaker(false, SweeperConst.SWEEPER_END_MAP_MAKER, endStation.getLat() - , endStation.getLon(),R.raw.end_marker); + , endStation.getLon(), R.raw.end_marker); } else { setOrRemoveMapMaker(true, SweeperConst.SWEEPER_END_MAP_MAKER, endStation.getLat() - , endStation.getLon(),R.raw.end_marker); + , endStation.getLon(), R.raw.end_marker); } } @@ -206,15 +207,15 @@ public class SweeperFragment extends BaseSweeperTabFragment { + IMogoMapUIController controller = CallerMapUIServiceManager.INSTANCE.getMapUIController(); + if (controller != null) { + //切换地图的远近视图 + if (controller.getCurrentMapVisualAngle().isLongSight()) { + controller.changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); mMapswitchBtn.setImageResource(R.drawable.taxi_p_switch_map_medium); - } else if (MogoMapUIController.getInstance().getCurrentMapVisualAngle().isMediumSight()) { - // 2.11.0 去掉 -// MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).inVisibleWithoutMarkers(DataTypes.TYPE_MARKER_ADAS); - MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null); + } else if (controller.getCurrentMapVisualAngle().isMediumSight()) { + controller.changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null); mMapswitchBtn.setImageResource(R.drawable.taxi_p_switch_map_long); } else { - // 2.11.0去掉 -// MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).visibleAllMarkers(); - MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); + controller.changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); mMapswitchBtn.setImageResource(R.drawable.taxi_p_switch_map_medium); } - //OverlayLeftViewUtils.INSTANCE.dismissOverlayView(); } + //OverlayLeftViewUtils.INSTANCE.dismissOverlayView(); }); } - private void initArrivedView(){ + private void initArrivedView() { mArrivedEndView = new WeakReference<>(new TaxiPassengerArrivedView(getContext())); mArrivedEndView.get().setITaxiPassengerScoreCallback((taxiPassengerScoreUpdateOrderReqBean) -> getPresenter().arrivedAndScore(taxiPassengerScoreUpdateOrderReqBean)); } @@ -173,9 +171,10 @@ public class TaxiPassengerBaseFragment extends MvpFragment { if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING != status) { @@ -199,7 +199,7 @@ public class TaxiPassengerBaseFragment extends MvpFragment(new TaxiPassengerStartAutopilotView(getContext())); } mStartAutopilotView.get().setOnClickStartAutopilotBtnCallback(this); - OverlayViewUtils.showOverlayView(getActivity(),mStartAutopilotView.get()); + OverlayViewUtils.showOverlayView(getActivity(), mStartAutopilotView.get()); updateStartAutopilotBtnStatus(isClickable); - }else { - if (mStartAutopilotView == null || mStartAutopilotView.get() == null){ + } else { + if (mStartAutopilotView == null || mStartAutopilotView.get() == null) { return; } mStartAutopilotView.get().setOnClickStartAutopilotBtnCallback(null); @@ -331,15 +334,15 @@ public class TaxiPassengerBaseFragment extends MvpFragment(); mContext = context; - mogoOverlayManager = MogoOverlayManager.getInstance(); + mogoOverlayManager = CallerMapUIServiceManager.INSTANCE.getOverlayManager(context); } /** diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/TaxiProvider.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/TaxiProvider.java index c87251c0cb..ca28c83303 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/TaxiProvider.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/TaxiProvider.java @@ -11,15 +11,16 @@ import com.alibaba.android.arouter.facade.annotation.Route; 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.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.map.MogoMapUIController; import com.mogo.och.taxi.constant.TaxiConst; import com.mogo.och.taxi.ui.TaxiFragment; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.Objects; + public /** * @author congtaowang @@ -45,8 +46,7 @@ class TaxiProvider implements IMogoOCH , IMogoStatusChangedListener { */ private void stepIntoVrMode() { CallerLogger.INSTANCE.d( M_TAXI + TAG, "进入vr模式" ); - MogoMapUIController.getInstance() - .stepInVrMode( false ); + Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMapUIController()).stepInVrMode(false); } private void showFragment() { diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java index ac21cdf9f1..060821b7e9 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java @@ -31,14 +31,15 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager; import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager; import com.mogo.eagle.core.function.call.hmi.CallerHmiManager; +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.function.call.map.CallerSmpManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; +import com.mogo.eagle.core.utilcode.mogo.view.OnPreventFastClickListener; import com.mogo.eagle.core.utilcode.util.ToastUtils; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.map.MogoMapUIController; import com.mogo.map.listener.IMogoMapListener; +import com.mogo.map.uicontroller.IMogoMapUIController; import com.mogo.map.uicontroller.VisualAngleMode; -import com.mogo.eagle.core.utilcode.mogo.view.OnPreventFastClickListener; import com.mogo.och.common.module.utils.AnimatorDrawableUtil; import com.mogo.och.taxi.R; @@ -85,22 +86,22 @@ public abstract class BaseTaxiTabFragment { + //视角切换 + long start = SystemClock.elapsedRealtime(); + try { + IMogoMapUIController controller = CallerMapUIServiceManager.INSTANCE.getMapUIController(); + if (controller != null) { + //切换地图的远近视图 + if (controller.getCurrentMapVisualAngle().isLongSight()) { + controller.changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); mSwitchBtnIcon.setImageResource(R.drawable.taxi_switch_map_medium); - } else if (MogoMapUIController.getInstance().getCurrentMapVisualAngle().isMediumSight()) { - // 2.11.0去掉 -// MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) -// .inVisibleWithoutMarkers(DataTypes.TYPE_MARKER_ADAS, TaxiConst.TYPE_MARKER_TAXI_ORDER); - MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null); + } else if (controller.getCurrentMapVisualAngle().isMediumSight()) { + controller.changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null); mSwitchBtnIcon.setImageResource(R.drawable.taxi_switch_map_long); } else { - // 2.11.0去掉 -// MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) .visibleAllMarkers(); - MogoMapUIController.getInstance().changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); mSwitchBtnIcon.setImageResource(R.drawable.taxi_switch_map_medium); } - } finally { - CallerLogger.INSTANCE.d(M_TAXI + TAG, "cost:" + (SystemClock.elapsedRealtime() - start)); } - + } finally { + CallerLogger.INSTANCE.d(M_TAXI + TAG, "cost:" + (SystemClock.elapsedRealtime() - start)); } + }); mSettingBtn = findViewById(R.id.module_och_taxi_setting_layout); @@ -214,7 +208,7 @@ public abstract class BaseTaxiTabFragment { - if (groupTestPanel.getVisibility() == View.VISIBLE) { - groupTestPanel.setVisibility(View.GONE); - } else { - groupTestPanel.setVisibility(View.VISIBLE); - } - return false; - }); + mSpeedView.setOnLongClickListener(v -> { + if (groupTestPanel.getVisibility() == View.VISIBLE) { + groupTestPanel.setVisibility(View.GONE); + } else { + groupTestPanel.setVisibility(View.VISIBLE); + } + return false; + }); // } onAutopilotStatusChanged(CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState()); @@ -282,13 +276,16 @@ public abstract class BaseTaxiTabFragment station,int resourceId){ if (isAdd){ //开启线程执行起终点marker设置 - Runnable setMapMarkerRunnable = new Runnable() { - @Override - public void run() { - CallerLogger.INSTANCE.d(M_TAXI + "setMapMaker= " + Thread.currentThread().getName(), - uuid + "=latitude=" + station.get(1) + ",longitude=" + station.get(0)); + Runnable setMapMarkerRunnable = () -> { + CallerLogger.INSTANCE.d(M_TAXI + "setMapMaker= " + Thread.currentThread().getName(), + uuid + "=latitude=" + station.get(1) + ",longitude=" + station.get(0)); - MogoMarkerOptions options = new MogoMarkerOptions() - .owner(TaxiConst.TYPE_MARKER_TAXI_ORDER) - .anchor(0.5f, 0.5f) - .set3DMode(true) - .gps(true) - .controlAngle(true) - .icon3DRes(resourceId) - .latitude(station.get(1)) - .longitude(station.get(0)); - IMogoMarker marker = MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).addMarker(uuid, options); - CenterLine centerLine = CallerHDMapManager.INSTANCE.getCenterLineInfo(station.get(0) - , station.get(1), -1); - if (null != centerLine && marker != null) {// 有可能鹰眼map为空没有角度。判空使用后可能造成maker角度跟道路角度不一致 - marker.setRotateAngle(centerLine.getAngle().floatValue()); - } + MogoMarkerOptions options = new MogoMarkerOptions() + .owner(TaxiConst.TYPE_MARKER_TAXI_ORDER) + .anchor(0.5f, 0.5f) + .set3DMode(true) + .gps(true) + .controlAngle(true) + .icon3DRes(resourceId) + .latitude(station.get(1)) + .longitude(station.get(0)); + IMogoMarker marker = Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMarkerManager(AbsMogoApplication.getApp())).addMarker(uuid, options); + CenterLine centerLine = CallerHDMapManager.INSTANCE.getCenterLineInfo(station.get(0) + , station.get(1), -1); + if (null != centerLine && marker != null) {// 有可能鹰眼map为空没有角度。判空使用后可能造成maker角度跟道路角度不一致 + marker.setRotateAngle(centerLine.getAngle().floatValue()); } }; OCHThreadPoolManager.getsInstance().execute(setMapMarkerRunnable); }else { //开启线程移除起终点marker设置 - Runnable removeMapMarkerRunnable = new Runnable() { - @Override - public void run() { - CallerLogger.INSTANCE.d(M_TAXI + "RemoveMapMaker=" + Thread.currentThread().getName(), - uuid + "=latitude=" + station.get(1) + ",longitude=" + station.get(0)); - MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).removeMarkers(uuid); - } + Runnable removeMapMarkerRunnable = () -> { + CallerLogger.INSTANCE.d(M_TAXI + "RemoveMapMaker=" + Thread.currentThread().getName(), + uuid + "=latitude=" + station.get(1) + ",longitude=" + station.get(0)); + Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMarkerManager(AbsMogoApplication.getApp())).removeMarkers(uuid); }; OCHThreadPoolManager.getsInstance().execute(removeMapMarkerRunnable); } diff --git a/ZD_README/README_VersionHistory.md b/ZD_README/README_VersionHistory.md deleted file mode 100644 index b3f66404f7..0000000000 --- a/ZD_README/README_VersionHistory.md +++ /dev/null @@ -1,88 +0,0 @@ -### 鹰眼 (MOGO-Autopilot) 平台接入说明 -```gradle -// 新版本架构SDK -MOGO_CORE_SDK_VERSION = 0.0.9 - -// 所有UI展示层 -com.mogo.eagle.core.function.impl:hmi:${MOGO_CORE_SDK_VERSION} -// 自动驾驶/工控机相关的功能实现 -com.mogo.eagle.core.function.impl:autopilot:${MOGO_CORE_SDK_VERSION} -// 车辆检测模块功能实现 -com.mogo.eagle.core.function.impl:check:${MOGO_CORE_SDK_VERSION} -// 地图层 -com.mogo.eagle.core.function.impl:map:${MOGO_CORE_SDK_VERSION} -// 超视距服务 -com.mogo.eagle.core.function.impl:monitoring:${MOGO_CORE_SDK_VERSION} -// 推送通知服务 -com.mogo.eagle.core.function.impl:notice:${MOGO_CORE_SDK_VERSION} -// 自研OBU功能服务 -com.mogo.eagle.core.function.impl:obu-mogo:${MOGO_CORE_SDK_VERSION} -// 小地图功能实现 -com.mogo.eagle.core.function.impl:smp:${MOGO_CORE_SDK_VERSION} -// 道路协同功能实现 -com.mogo.eagle.core.function.impl:v2x:${MOGO_CORE_SDK_VERSION} -// 模块功能定义接口,回调监听接口定义 -com.mogo.eagle.core.function:api:${MOGO_CORE_SDK_VERSION} -// 负责模块之间调用,回调监听注册 -com.mogo.eagle.core.function:call:${MOGO_CORE_SDK_VERSION} -// 数据bean基础,用来统一模块间数据调用 -com.mogo.eagle.core:data:${MOGO_CORE_SDK_VERSION} -// 项目公用资源 -com.mogo.eagle.core:res:${MOGO_CORE_SDK_VERSION} -// 项目工具类 -com.mogo.eagle.core:utils:${MOGO_CORE_SDK_VERSION} -// 网络服务 -com.mogo.eagle.core:network:${MOGO_CORE_SDK_VERSION} -``` - - -```gradle -MOGO_COMMONS_VERSION = 2.0.66 -// modules -moduleshare : "com.mogo.module:module-share:${MOGO_COMMONS_VERSION}", -mogocommons : "com.mogo.commons:mogo-commons:${MOGO_COMMONS_VERSION}", -mogoutils : "com.mogo.commons:mogo-utils:${MOGO_COMMONS_VERSION}", -mapamap : "com.mogo.map:map-amap:${MOGO_COMMONS_VERSION}", -mapautomap : "com.mogo.map:map-autonavi:${MOGO_COMMONS_VERSION}", -mapcustom : "com.mogo.map:map-custom:${MOGO_COMMONS_VERSION}", -mogomap : "com.mogo.map:mogo-map:${MOGO_COMMONS_VERSION}", -mogomapapi : "com.mogo.map:mogo-map-api:${MOGO_COMMONS_VERSION}", -mogocustommap : "com.zhidaoauto.machine:map:${MOGO_COMMONS_VERSION}", - -modulemain : "com.mogo.module:module-main:${MOGO_COMMONS_VERSION}", -modulemap : "com.mogo.module:module-map:${MOGO_COMMONS_VERSION}", -mogoserviceapi : "com.mogo.service:mogo-service-api:${MOGO_COMMONS_VERSION}", -moduleapps : "com.mogo.module:module-apps:${MOGO_COMMONS_VERSION}", -moduleextensions : "com.mogo.module:module-extensions:${MOGO_COMMONS_VERSION}", - -// V2X -moduleV2x : "com.mogo.module:module-v2x:${MOGO_COMMONS_VERSION}", -modulesearch : "com.mogo.module:module-search:${MOGO_COMMONS_VERSION}", -// push -modulepush : "com.mogo.module:module-push:${MOGO_COMMONS_VERSION}", -modulepushbase : "com.mogo.module:module-push-base:${MOGO_COMMONS_VERSION}", -modulepushnoop : "com.mogo.module:module-push-noop:${MOGO_COMMONS_VERSION}", -// 左侧面板 -moduleleftpanel : "com.mogo.module:module-left-panel:${MOGO_COMMONS_VERSION}", -// 左侧面板空实现 -moduleleftpanelnoop : "com.mogo.module:module-left-panel-noop:${MOGO_COMMONS_VERSION}", -// 基础服务实现 -mogobaseservicesdk : "com.mogo.base:services-sdk:${MOGO_COMMONS_VERSION}", -mogowebsocket : "com.mogo.module.carchatting:module-carchatt-socket:${MOGO_COMMONS_VERSION}", -mogologlib : "com.mogo.module:module-loglib:${MOGO_COMMONS_VERSION}", -kotlingradleplugin : "org.jetbrains.kotlin:kotlin-gradle-plugin:${MOGO_COMMONS_VERSION}", -skinsupport : "com.mogo.skin:skin-support:${MOGO_COMMONS_VERSION}", -skinsupportimpl : "com.mogo.skin:skin-support-impl:${MOGO_COMMONS_VERSION}", -skinsupportnoop : "com.mogo.skin:skin-support-noop:${MOGO_COMMONS_VERSION}", -skinsupportlight : "com.mogo.skin:skin-light:${MOGO_COMMONS_VERSION}", -crashreport : "com.mogo.test:crashreport:${MOGO_COMMONS_VERSION}", -crashreportbugly : "com.mogo.test:crashreport-bugly:${MOGO_COMMONS_VERSION}", -crashreportnoop : "com.mogo.test:crashreport-noop:${MOGO_COMMONS_VERSION}", -crashreportupgrade : "com.mogo.test:crashreport-upgrade:${MOGO_COMMONS_VERSION}", -skinsupportbase : "com.mogo.skin:skin-support-base:${MOGO_COMMONS_VERSION}", -skinsupportappcompat : "com.mogo.skin:skin-support-appcompat:${MOGO_COMMONS_VERSION}", -skinsupportcardview : "com.mogo.skin:skin-support-cardview:${MOGO_COMMONS_VERSION}", -skinsupportconstraintlayout : "com.mogo.skin:skin-support-constraint-layout:${MOGO_COMMONS_VERSION}", -skinsupportdesign : "com.mogo.skin:skin-support-design:${MOGO_COMMONS_VERSION}", - -``` \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index ced81639ad..c00bd0ba20 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -275,11 +275,9 @@ dependencies { } else { implementation project(':tts:tts-pad') implementation project(':core:function-impl:mogo-core-function-hmi') - androidTestImplementation project(':core:mogo-core-function-call') androidTestImplementation project(':core:mogo-core-res') androidTestImplementation project(':core:function-impl:mogo-core-function-notice') - } apply from: "./functions/och.gradle" diff --git a/app/src/main/java/com/mogo/launcher/stageone/HttpDnsStartUp.kt b/app/src/main/java/com/mogo/launcher/stageone/HttpDnsStartUp.kt index 719da73372..ec005e8c3d 100644 --- a/app/src/main/java/com/mogo/launcher/stageone/HttpDnsStartUp.kt +++ b/app/src/main/java/com/mogo/launcher/stageone/HttpDnsStartUp.kt @@ -39,8 +39,6 @@ import com.mogo.eagle.core.utilcode.util.AppUtils import com.mogo.eagle.core.utilcode.util.ProcessUtils import com.mogo.eagle.core.utilcode.util.ThreadPoolService import com.mogo.eagle.core.utilcode.util.TimeUtils -import com.mogo.map.location.GDLocationClient -import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.rousetime.android_startup.AndroidStartup import com.zhjt.mogo_core_function_devatools.env.EnvChangeManager import com.zhjt.service.chain.ChainLog @@ -78,14 +76,14 @@ class HttpDnsStartUp : AndroidStartup() { this.context = context // TODO 需要与,陈扶风,确认为啥要限制仅在主进程 // if (ProcessUtils.isMainProcess(context)) { - initGDLoc() - initHttpDns() + initGDLoc() + initHttpDns() // } return true } private fun initGDLoc() { - GDLocationClient.getInstance(context).start() + CallerMapUIServiceManager.getGDLocationServer(context!!)?.start() } /** @@ -155,12 +153,11 @@ class HttpDnsStartUp : AndroidStartup() { } val httpDnsSimpleLocation = if (mogoLocation != null && mogoLocation.latitude != 0.0 && mogoLocation.longitude != 0.0) { - if (mogoLocation.cityCode.isNullOrEmpty() && !GDLocationClient.getInstance( - context - ).lastCityCode.isNullOrEmpty() + if (mogoLocation.cityCode.isNullOrEmpty() + && !CallerMapUIServiceManager.getGDLocationServer(context!!)?.lastCityCode.isNullOrEmpty() ) { HttpDnsSimpleLocation( - GDLocationClient.getInstance(context).lastCityCode, + CallerMapUIServiceManager.getGDLocationServer(context!!)?.lastCityCode ?: "010", mogoLocation.latitude, mogoLocation.longitude ) diff --git a/config.gradle b/config.gradle index 7851b0feb6..f97d2dea95 100644 --- a/config.gradle +++ b/config.gradle @@ -67,8 +67,6 @@ ext { indicator : 'com.github.zhpanvip:viewpagerindicator:1.0.4', strategy : 'com.zhidaoauto.mic:strategy:1.0.6', - carmanager : "com.zhidao.carmanager:common:1.0.30@aar", - // jetbrainsannotationsjava5 : "org.jetbrains:annotations-java5:15.0", diff --git a/core/function-impl/mogo-core-function-autopilot/build.gradle b/core/function-impl/mogo-core-function-autopilot/build.gradle index 8148bc8cc6..14dac30a17 100644 --- a/core/function-impl/mogo-core-function-autopilot/build.gradle +++ b/core/function-impl/mogo-core-function-autopilot/build.gradle @@ -60,7 +60,6 @@ dependencies { implementation rootProject.ext.dependencies.mogo_core_utils implementation rootProject.ext.dependencies.mogo_core_network - implementation rootProject.ext.dependencies.mogo_core_function_api implementation rootProject.ext.dependencies.mogo_core_function_call implementation project(':libraries:mogo-adas') } else { @@ -68,11 +67,8 @@ dependencies { implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') implementation project(':core:mogo-core-network') - implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') implementation project(':libraries:mogo-adas') - implementation project(":libraries:mogo-map-api") - implementation project(":libraries:mogo-map") } } diff --git a/core/function-impl/mogo-core-function-bindingcar/build.gradle b/core/function-impl/mogo-core-function-bindingcar/build.gradle index 9fca3e1f10..1cd7f22f6f 100644 --- a/core/function-impl/mogo-core-function-bindingcar/build.gradle +++ b/core/function-impl/mogo-core-function-bindingcar/build.gradle @@ -62,7 +62,6 @@ dependencies { if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { implementation rootProject.ext.dependencies.mogocommons - implementation rootProject.ext.dependencies.mogoserviceapi implementation rootProject.ext.dependencies.mogo_core_data implementation rootProject.ext.dependencies.mogo_core_utils @@ -70,7 +69,6 @@ dependencies { implementation rootProject.ext.dependencies.mogo_core_function_call } else { implementation project(":foudations:mogo-commons") - implementation project(':services:mogo-service-api') implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') diff --git a/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/bindingcar/BindingcarProvider.java b/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/bindingcar/BindingcarProvider.java index f484c74f53..c1c3d69ea5 100644 --- a/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/bindingcar/BindingcarProvider.java +++ b/core/function-impl/mogo-core-function-bindingcar/src/main/java/com/mogo/eagle/core/function/bindingcar/BindingcarProvider.java @@ -4,7 +4,6 @@ import android.content.Context; import android.util.Log; import com.alibaba.android.arouter.facade.annotation.Route; -import com.mogo.eagle.core.data.bindingcar.ModifyBindingcarInfo; import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.config.HmiBuildConfig; import com.mogo.eagle.core.data.constants.MogoServicePaths; @@ -12,12 +11,9 @@ import com.mogo.eagle.core.function.api.bindingcar.BindingcarCallBack; import com.mogo.eagle.core.function.api.bindingcar.IMoGoBindingcarProvider; import com.mogo.eagle.core.function.appupgrade.network.UpgradeAppNetWorkManager; import com.mogo.eagle.core.function.bindingcar.network.BindingcarNetWorkManager; -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotManager; -import com.mogo.eagle.core.function.call.bindingcar.CallerBindingcarManager; import com.mogo.eagle.core.function.ipcupgrade.IPCUpgradeManager; import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; -import com.mogo.eagle.core.utilcode.mogo.toast.TipToast; import org.jetbrains.annotations.NotNull; @@ -73,8 +69,9 @@ public class BindingcarProvider implements IMoGoBindingcarProvider { /** * 确认升级工控机docker版本 - * @param images docker列表 - * @param padSn SN + * + * @param images docker列表 + * @param padSn SN * @param releaseId 任务ID */ @Override @@ -84,12 +81,13 @@ public class BindingcarProvider implements IMoGoBindingcarProvider { /** * 获取新工控机docker版本 - * @param padSn SN + * + * @param padSn SN * @param dockerVersion 当前工控机版本 */ @Override - public void queryContainers(String padSn,String dockerVersion) { - IPCUpgradeManager.Companion.getINSTANCE().queryContainers(padSn,dockerVersion); + public void queryContainers(String padSn, String dockerVersion) { + IPCUpgradeManager.Companion.getINSTANCE().queryContainers(padSn, dockerVersion); } @Override @@ -123,6 +121,7 @@ public class BindingcarProvider implements IMoGoBindingcarProvider { /** * 以后可能废弃 + * * @return */ private int getScreenType() { @@ -139,11 +138,11 @@ public class BindingcarProvider implements IMoGoBindingcarProvider { private int getCarType() { int carType = -1; - if(AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { + if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { carType = 1; //bus } - if(AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)) { + if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)) { carType = 2; //taxi } @@ -153,19 +152,19 @@ public class BindingcarProvider implements IMoGoBindingcarProvider { private String getCarScreenType() { String screenType = ""; - if(AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { + if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { screenType = "1"; //taxi乘客端 } - if(AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { + if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { screenType = "2"; //taxi司机端 } - if(AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { + if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) { screenType = "3"; //bus 乘客端 } - if(AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { + if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) && AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { screenType = "4"; //bus 司机端 } diff --git a/core/function-impl/mogo-core-function-carcorder/build.gradle b/core/function-impl/mogo-core-function-carcorder/build.gradle index 51a98a2f6e..4bc442ab10 100644 --- a/core/function-impl/mogo-core-function-carcorder/build.gradle +++ b/core/function-impl/mogo-core-function-carcorder/build.gradle @@ -49,21 +49,14 @@ dependencies { kapt rootProject.ext.dependencies.aroutercompiler if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { - implementation rootProject.ext.dependencies.mogoserviceapi - implementation project(':libraries:map-usbcamera') implementation rootProject.ext.dependencies.mogo_core_utils - implementation rootProject.ext.dependencies.mogo_core_function_api implementation rootProject.ext.dependencies.mogo_core_function_call implementation rootProject.ext.dependencies.mogo_core_data }else { - implementation project(':services:mogo-service-api') - implementation project(':libraries:map-usbcamera') - implementation project(':core:mogo-core-utils') - implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') implementation project(':core:mogo-core-data') } diff --git a/core/function-impl/mogo-core-function-chat/build.gradle b/core/function-impl/mogo-core-function-chat/build.gradle index 19ddf374f9..c097863b5b 100644 --- a/core/function-impl/mogo-core-function-chat/build.gradle +++ b/core/function-impl/mogo-core-function-chat/build.gradle @@ -63,14 +63,12 @@ dependencies { if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { implementation rootProject.ext.dependencies.mogo_core_data implementation rootProject.ext.dependencies.mogo_core_utils - implementation rootProject.ext.dependencies.mogo_core_function_api implementation rootProject.ext.dependencies.mogo_core_function_call implementation rootProject.ext.dependencies.mogo_core_res } else { implementation project(':foudations:mogo-commons') implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') - implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') implementation project(':core:mogo-core-res') } diff --git a/core/function-impl/mogo-core-function-check/build.gradle b/core/function-impl/mogo-core-function-check/build.gradle index 4df724d12c..85c6be0074 100644 --- a/core/function-impl/mogo-core-function-check/build.gradle +++ b/core/function-impl/mogo-core-function-check/build.gradle @@ -54,8 +54,6 @@ dependencies { if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { implementation rootProject.ext.dependencies.mogocommons - implementation rootProject.ext.dependencies.mogoserviceapi - implementation rootProject.ext.dependencies.callchatprovider implementation rootProject.ext.dependencies.mogo_core_data @@ -65,9 +63,6 @@ dependencies { } else { implementation project(":foudations:mogo-commons") - implementation project(':services:mogo-service-api') - - implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') implementation project(':core:mogo-core-network') diff --git a/core/function-impl/mogo-core-function-datacenter/build.gradle b/core/function-impl/mogo-core-function-datacenter/build.gradle index f1726248b0..6ac5fae0b4 100644 --- a/core/function-impl/mogo-core-function-datacenter/build.gradle +++ b/core/function-impl/mogo-core-function-datacenter/build.gradle @@ -57,12 +57,10 @@ dependencies { if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { implementation rootProject.ext.dependencies.mogo_core_data implementation rootProject.ext.dependencies.mogo_core_utils - implementation rootProject.ext.dependencies.mogo_core_function_api implementation rootProject.ext.dependencies.mogo_core_function_call } else { implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') - implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') } } diff --git a/core/function-impl/mogo-core-function-devatools/build.gradle b/core/function-impl/mogo-core-function-devatools/build.gradle index 74822b3272..436c212813 100644 --- a/core/function-impl/mogo-core-function-devatools/build.gradle +++ b/core/function-impl/mogo-core-function-devatools/build.gradle @@ -85,18 +85,14 @@ dependencies { implementation rootProject.ext.dependencies.androidautoSize if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { - implementation rootProject.ext.dependencies.mogoserviceapi implementation rootProject.ext.dependencies.mogo_core_utils - implementation rootProject.ext.dependencies.mogo_core_function_api implementation rootProject.ext.dependencies.mogo_core_function_call implementation rootProject.ext.dependencies.mogo_core_data implementation rootProject.ext.dependencies.mogo_core_res }else { - implementation project(':services:mogo-service-api') implementation project(':foudations:mogo-aicloud-services-sdk') implementation project(':foudations:mogo-commons') implementation project(':core:mogo-core-utils') - implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-res') diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt index 5eed6e1651..6888a1fde6 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt @@ -7,31 +7,19 @@ import android.view.View import android.view.WindowManager import androidx.fragment.app.FragmentActivity import androidx.lifecycle.Lifecycle.Event -import androidx.lifecycle.Lifecycle.Event.ON_CREATE -import androidx.lifecycle.Lifecycle.Event.ON_DESTROY import androidx.lifecycle.LifecycleCoroutineScope import androidx.lifecycle.LifecycleEventObserver import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.lifecycleScope -import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.eagle.core.data.msgbox.MsgBoxBean -import com.mogo.eagle.core.data.msgbox.RecordBagMsg -import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotVehicleStateListenerManager -import com.mogo.eagle.core.utilcode.kotlin.PX import com.mogo.eagle.core.utilcode.kotlin.lifecycleOwner -import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA -import com.mogo.eagle.core.utilcode.reminder.Reminder -import com.mogo.eagle.core.utilcode.reminder.api.IReminder -import com.mogo.eagle.core.utilcode.reminder.api.IReminder.IGlobalStateChangeListener import com.mogo.eagle.core.utilcode.util.* import com.zhjt.mogo_core_function_devatools.badcase.biz.* import com.zhjt.mogo_core_function_devatools.badcase.consts.BadCaseConfig import com.zhjt.mogo_core_function_devatools.badcase.repository.db.entity.AutoPilotRecord -import com.zhjt.mogo_core_function_devatools.badcase.repository.net.api.entity.BadCaseResponse.Reason import com.zhjt.mogo_core_function_devatools.ext.enqueuePop -import com.zhjt.mogo_core_function_devatools.ext.toast import kotlinx.coroutines.* import kotlinx.coroutines.channels.Channel import me.jessyan.autosize.utils.AutoSizeUtils @@ -47,7 +35,8 @@ internal object BadCaseManager : LifecycleEventObserver { * 超过此时间,case入口自动消失 */ - private val CASE_EXPIRE_DURATION: Long = TimeUnit.HOURS.toMillis(4)/* TimeUnit.SECONDS.toMillis(10) */ + private val CASE_EXPIRE_DURATION: Long = + TimeUnit.HOURS.toMillis(4)/* TimeUnit.SECONDS.toMillis(10) */ private var hideFloat: (() -> Unit)? = null @@ -85,15 +74,20 @@ internal object BadCaseManager : LifecycleEventObserver { /** * 展示BadCase配置页面 */ - fun showBadCaseConfigWindow(context: Context){ + fun showBadCaseConfigWindow(context: Context) { val badCaseConfigView = BadCaseConfigView(context) - badCaseConfigView.setClickListener(object: BadCaseConfigView.ClickListener{ + badCaseConfigView.setClickListener(object : BadCaseConfigView.ClickListener { override fun onClose() { hideFloat?.invoke() hideFloat = null } }) - context.enqueuePop(badCaseConfigView,AutoSizeUtils.dp2px(context,960f), WindowManager.LayoutParams.MATCH_PARENT, key = "BadCaseConfigView").also { + context.enqueuePop( + badCaseConfigView, + AutoSizeUtils.dp2px(context, 960f), + WindowManager.LayoutParams.MATCH_PARENT, + key = "BadCaseConfigView" + ).also { hideFloat = it } } @@ -101,37 +95,40 @@ internal object BadCaseManager : LifecycleEventObserver { /** * 主动采集BadCase */ - fun initBadCase(view: View){ - val activity = view.context as? FragmentActivity ?: throw IllegalStateException("please ensure context is FragmentActivity.") + fun initBadCase(view: View) { + val activity = view.context as? FragmentActivity + ?: throw IllegalStateException("please ensure context is FragmentActivity.") view.setOnClickListener { - if(ClickUtils.isFastClick()){ - if(NetworkUtils.isConnected()){ - if(BadCaseConfig.dockerVersion!=null){ + if (ClickUtils.isFastClick()) { + if (NetworkUtils.isConnected()) { + if (BadCaseConfig.dockerVersion != null) { //兼容老MAP版本 - if(BadCaseConfig.dockerVersion!!.contains("2.3.0") + if (BadCaseConfig.dockerVersion!!.contains("2.3.0") || BadCaseConfig.dockerVersion!!.contains("2.4.0") || BadCaseConfig.dockerVersion!!.contains("2.5.0") || BadCaseConfig.dockerVersion!!.contains("2.6.0") - || BadCaseConfig.dockerVersion!!.contains("2.8.0")){ + || BadCaseConfig.dockerVersion!!.contains("2.8.0") + ) { val initiativeBadCaseWindow = InitiativeBadCaseWindow(activity) - initiativeBadCaseWindow.setClickListener(object: InitiativeBadCaseWindow.ClickListener{ + initiativeBadCaseWindow.setClickListener(object : + InitiativeBadCaseWindow.ClickListener { override fun closeWindow() { initiativeBadCaseWindow.hideFloatWindow() } }) initiativeBadCaseWindow.showFloatWindow(null) - }else{ + } else { val caseListDialog = CaseListDialog(activity) caseListDialog.show() } - }else{ + } else { ToastUtils.showShort("工控机连接状态异常") } - }else{ + } else { ToastUtils.showShort("网络异常,请检查网络") } - }else{ + } else { ToastUtils.showShort("请勿连续点击,稍后再试") } @@ -141,46 +138,48 @@ internal object BadCaseManager : LifecycleEventObserver { /** * AI数据采集 */ - fun initAiCollect(view: View){ - val activity = view.context as? FragmentActivity ?: throw IllegalStateException("please ensure context is FragmentActivity.") + fun initAiCollect(view: View) { + val activity = view.context as? FragmentActivity + ?: throw IllegalStateException("please ensure context is FragmentActivity.") view.setOnClickListener { - if(ClickUtils.isFastClick()){ - if(NetworkUtils.isConnected()){ - if(BadCaseConfig.dockerVersion!=null){ + if (ClickUtils.isFastClick()) { + if (NetworkUtils.isConnected()) { + if (BadCaseConfig.dockerVersion != null) { val aiDataCollectWindow = AIDataCollectWindow(activity) - aiDataCollectWindow.setClickListener(object: AIDataCollectWindow.ClickListener{ + aiDataCollectWindow.setClickListener(object : + AIDataCollectWindow.ClickListener { override fun closeWindow() { aiDataCollectWindow.hideFloatWindow() } }) aiDataCollectWindow.showFloatWindow() - }else{ + } else { ToastUtils.showShort("工控机连接状态异常") } - }else{ + } else { ToastUtils.showShort("网络异常,请检查网络") } - }else{ + } else { ToastUtils.showShort("请勿连续点击,稍后再试") } } } - fun onReceiveBadCaseRecord(msgBoxBean: MsgBoxBean,activity: Activity,countdown: Boolean) { + fun onReceiveBadCaseRecord(msgBoxBean: MsgBoxBean, activity: Activity, countdown: Boolean) { CallerLogger.d("$M_DEVA$TAG", "收到录包结果回调${record}") CallerLogger.d("$M_DEVA$TAG", "开始创建被动录包弹窗,window num=${BadCaseConfig.windowNum}") ThreadUtils.runOnUiThread { val passiveBadCaseWindow = PassiveBadCaseWindow(activity) passiveBadCaseWindow.setRecord(msgBoxBean) - passiveBadCaseWindow.setClickListener(object: PassiveBadCaseWindow.ClickListener{ + passiveBadCaseWindow.setClickListener(object : PassiveBadCaseWindow.ClickListener { override fun closeWindow() { passiveBadCaseWindow.hideFloatWindow() } }) passiveBadCaseWindow.showFloatWindow() - if(countdown){ - val countDownTimer = object: CountDownTimer(10000,1000){ + if (countdown) { + val countDownTimer = object : CountDownTimer(10000, 1000) { override fun onTick(p0: Long) { } @@ -202,7 +201,6 @@ internal object BadCaseManager : LifecycleEventObserver { } - internal fun RecordPanelOuterClass.RecordPanel.toRecord(): AutoPilotRecord = AutoPilotRecord().also { it.id = this.id diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectWindow.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectWindow.kt index 499e30d784..e9632f1da6 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectWindow.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/AIDataCollectWindow.kt @@ -29,7 +29,6 @@ import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.launch import mogo.telematics.pad.MessagePad import record_cache.RecordPanelOuterClass -import java.lang.reflect.Field import java.util.* /** @@ -38,7 +37,7 @@ import java.util.* * @since: 2022/7/12 */ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener, - IMoGoAutopilotRecordListener , IMoGoAutopilotCarStateListener { + IMoGoAutopilotRecordListener, IMoGoAutopilotCarStateListener { companion object { const val TAG = "AIDataCollectWindow" @@ -63,12 +62,14 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener private lateinit var tvCollectCancel: TextView //取消按钮 private var collectReason: String = "大型车:大货、大巴、特种车辆" + @Volatile - private var recordKey: String?=null //录制bag包key + private var recordKey: String? = null //录制bag包key + @Volatile - private var recordFileName: String?=null //录制文件包名 - private var longitude: Double?=null - private var latitude: Double?=null + private var recordFileName: String? = null //录制文件包名 + private var longitude: Double? = null + private var latitude: Double? = null private lateinit var mFloatLayout: View private var mInViewX = 0f @@ -89,8 +90,9 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener } @SuppressLint("SetTextI18n") - private fun initFloatWindow(){ - mFloatLayout = LayoutInflater.from(mActivity).inflate(R.layout.view_ai_data_collect, null) as View + private fun initFloatWindow() { + mFloatLayout = + LayoutInflater.from(mActivity).inflate(R.layout.view_ai_data_collect, null) as View mFloatLayout.setOnTouchListener(this) tvCollectNum = mFloatLayout.findViewById(R.id.tvCollectNum) tvCollectTime = mFloatLayout.findViewById(R.id.tvCollectTime) @@ -105,14 +107,15 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener tvCollectReport = mFloatLayout.findViewById(R.id.tvCollectReport) tvCollectCancel = mFloatLayout.findViewById(R.id.tvCollectCancel) - if(BadCaseConfig.windowNum<1){ + if (BadCaseConfig.windowNum < 1) { BadCaseConfig.windowNum = 1 } tvCollectNum.text = BadCaseConfig.windowNum.toString() BadCaseConfig.windowNum++ - tvCollectTime.text ="时间:${millis2String(System.currentTimeMillis(),TimeUtils.getHourMinSecondFormat())}" + tvCollectTime.text = + "时间:${millis2String(System.currentTimeMillis(), TimeUtils.getHourMinSecondFormat())}" //采集结果回调监听 - CallerAutopilotRecordListenerManager.addListener(this.hashCode().toString(),this) + CallerAutopilotRecordListenerManager.addListener(this.hashCode().toString(), this) // 添加 ADAS车辆状态&定位 监听 CallerAutopilotCarStatusListenerManager.addListener(this.hashCode().toString(), this) //开始录制AI数据采集Bag包 @@ -123,7 +126,7 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener 12 ) //大型车 - rbLargeCar.setOnClickListener{ + rbLargeCar.setOnClickListener { setRadioButtonStatus( largeCarStatus = true, trafficLightStatus = false, @@ -216,12 +219,12 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener //上报 tvCollectReport.setOnClickListener { - GlobalScope.launch{ + GlobalScope.launch { val uploadResult = presenter.upload(mutableMapOf().also { itx -> - itx["carLicense"] = AppConfigInfo.plateNumber?:"" //车牌号 - itx["filename"] = recordFileName?:"" //bag包文件地址 + itx["carLicense"] = AppConfigInfo.plateNumber ?: "" //车牌号 + itx["filename"] = recordFileName ?: "" //bag包文件地址 itx["filesize"] = "0" //bag包文件大小 - itx["key"] = recordKey?:"" //key + itx["key"] = recordKey ?: "" //key itx["reason"] = collectReason //采集原因 itx["duration"] = "20" //采集时长,固定为20S itx["startTime"] = System.currentTimeMillis().toString() //上报时间(时间戳格式) @@ -229,7 +232,7 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener itx["carSn"] = MoGoAiCloudClientConfig.getInstance().sn //SN itx["userRole"] = "" //采集者角色 itx["audioUrl"] = "" //音频COS地址 - itx["mapVersion"] = BadCaseConfig.dockerVersion ?:"" //工控机版本 + itx["mapVersion"] = BadCaseConfig.dockerVersion ?: "" //工控机版本 itx["eyeVersion"] = AppUtils.getAppVersionName() //鹰眼版本 itx["coordinate"] = "latitude:${latitude};longitude:${longitude}" //坐标 @@ -266,23 +269,29 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener } - override fun onAutopilotRecordResult(recordPanel: RecordPanelOuterClass.RecordPanel) { CallerLogger.d("${M_DEVA}${TAG}", "-- 收到工控机录制任务回调 -- $recordPanel") - ThreadUtils.runOnUiThread{ - if(recordKey==null){ + ThreadUtils.runOnUiThread { + if (recordKey == null) { recordKey = recordPanel.key.toString() BadCaseConfig.recordKeyList.add(recordPanel.key) } - if(recordFileName==null){ + if (recordFileName == null) { recordFileName = recordPanel.filename } } } - private fun setRadioButtonStatus(largeCarStatus: Boolean,trafficLightStatus: Boolean,waterStatus: Boolean, - constructionStatus: Boolean,accidentStatus: Boolean,rainStatus: Boolean,nightTrafficStatus: Boolean){ + private fun setRadioButtonStatus( + largeCarStatus: Boolean, + trafficLightStatus: Boolean, + waterStatus: Boolean, + constructionStatus: Boolean, + accidentStatus: Boolean, + rainStatus: Boolean, + nightTrafficStatus: Boolean + ) { rbLargeCar.isChecked = largeCarStatus rbTrafficLight.isChecked = trafficLightStatus rbWater.isChecked = waterStatus @@ -323,7 +332,7 @@ class AIDataCollectWindow constructor(activity: Activity) : View.OnTouchListener // 默认固定位置,靠屏幕右边缘的中间 mWindowManager!!.defaultDisplay.getMetrics(metrics) mWindowParams!!.x = metrics.widthPixels - mWindowParams!!.y = metrics.heightPixels / 2 - BarUtils.getStatusBarHeight()-350 + mWindowParams!!.y = metrics.heightPixels / 2 - BarUtils.getStatusBarHeight() - 350 mWindowManager!!.addView(mFloatLayout, mWindowParams) } } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/BadCasePresenter.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/BadCasePresenter.kt index 6b11098988..c88f943351 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/BadCasePresenter.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/BadCasePresenter.kt @@ -1,6 +1,5 @@ package com.zhjt.mogo_core_function_devatools.badcase.biz -import android.util.Log 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 diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/CaseTopicListDialog.java b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/CaseTopicListDialog.java index 08ad929554..d44600e30a 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/CaseTopicListDialog.java +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/CaseTopicListDialog.java @@ -70,9 +70,9 @@ public class CaseTopicListDialog extends Dialog implements IMoGoAutopilotRecordL initEvent(); //获取所有Topic CallerAutoPilotManager.INSTANCE.getBadCaseConfig(1, 0, new ArrayList<>()); - if(recordType!=null){ + if (recordType != null) { tvCaseName.setText(recordType.getDesc()); - if(recordType.getTopicsList().size()>0){ + if (recordType.getTopicsList().size() > 0) { topicListAdapter.setData(recordType.getTopicsList()); topicListAdapter.notifyDataSetChanged(); } @@ -90,8 +90,8 @@ public class CaseTopicListDialog extends Dialog implements IMoGoAutopilotRecordL CallerAutopilotRecordListenerManager.INSTANCE.removeListener(TAG); } - public void setData(RecordTypeEntity recordTypeEntity){ - if(recordTypeEntity!=null){ + public void setData(RecordTypeEntity recordTypeEntity) { + if (recordTypeEntity != null) { recordType = recordTypeEntity; } } @@ -108,9 +108,9 @@ public class CaseTopicListDialog extends Dialog implements IMoGoAutopilotRecordL rvTopicList.setLayoutManager(linearLayoutManager); topicListAdapter = new TopicListAdapter(); topicListAdapter.setListener((topicName, clicked) -> { - if(clicked){ + if (clicked) { addTopicList.add(topicName); - }else{ + } else { addTopicList.remove(topicName); } }); @@ -132,15 +132,15 @@ public class CaseTopicListDialog extends Dialog implements IMoGoAutopilotRecordL @Override public void afterTextChanged(Editable s) { searchStr = s.toString(); - if(searchStr!=null && searchStr.length()>0){ + if (searchStr != null && searchStr.length() > 0) { ivSearch.setImageDrawable(getContext().getDrawable(R.drawable.icon_bad_case_delect)); } else { ivSearch.setImageDrawable(getContext().getDrawable(R.drawable.icon_bad_case_search)); } - if(searchStr!=null && searchStr.length()>0){ + if (searchStr != null && searchStr.length() > 0) { searchTopicList.clear(); - for(int index=0;index { - if(searchStr!=null && searchStr.length()>0){ + if (searchStr != null && searchStr.length() > 0) { etSearch.setText(""); ivSearch.setImageDrawable(getContext().getDrawable(R.drawable.icon_bad_case_search)); topicListAdapter.setData(recordType.getTopicsList()); @@ -159,11 +159,11 @@ public class CaseTopicListDialog extends Dialog implements IMoGoAutopilotRecordL } }); tvSave.setOnClickListener(v -> { - if(recordType!=null){ - Boolean success=CallerAutoPilotManager.INSTANCE.getBadCaseConfig(2,recordType.getId(),addTopicList); - if(Boolean.TRUE.equals(success)){ + if (recordType != null) { + Boolean success = CallerAutoPilotManager.INSTANCE.getBadCaseConfig(2, recordType.getId(), addTopicList); + if (Boolean.TRUE.equals(success)) { ToastUtils.showShort("Topic设置成功"); - if(recordType.getId() == 0){ + if (recordType.getId() == 0) { //自定义Topic BadCaseConfig.customTopicList.clear(); BadCaseConfig.customTopicList.addAll(addTopicList); @@ -171,7 +171,7 @@ public class CaseTopicListDialog extends Dialog implements IMoGoAutopilotRecordL addTopicList.clear(); recordType.getTopicsList().removeAll(allTopicList); dismiss(); - }else{ + } else { ToastUtils.showShort("Topic设置失败"); } } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/InitiativeBadCaseWindow.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/InitiativeBadCaseWindow.kt index 8f2f8cdda3..9aab7c532e 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/InitiativeBadCaseWindow.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/InitiativeBadCaseWindow.kt @@ -38,8 +38,6 @@ import kotlinx.coroutines.launch import mogo.telematics.pad.MessagePad import record_cache.RecordPanelOuterClass import java.io.File -import java.lang.StringBuilder -import java.lang.reflect.Field import java.util.* @@ -79,15 +77,17 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList private lateinit var tvInitiativeCancel: TextView private var audioStatus = false - private var audioFileName:String?=null //录音文件名称 + private var audioFileName: String? = null //录音文件名称 private var uploadReason: StringBuilder = StringBuilder() //上报原因,标签 + @Volatile - private var recordKey: String?=null //录制bag包key + private var recordKey: String? = null //录制bag包key + @Volatile - private var recordFileName: String?=null //录制文件包名 - private var longitude: Double?=null - private var latitude: Double?=null + private var recordFileName: String? = null //录制文件包名 + private var longitude: Double? = null + private var latitude: Double? = null private var mInViewX = 0f private var mInViewY = 0f @@ -107,8 +107,9 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList } @SuppressLint("SetTextI18n") - private fun initFloatWindow(){ - mFloatLayout = LayoutInflater.from(mActivity).inflate(R.layout.view_initiative_bad_case, null) as View + private fun initFloatWindow() { + mFloatLayout = + LayoutInflater.from(mActivity).inflate(R.layout.view_initiative_bad_case, null) as View mFloatLayout.setOnTouchListener(this) tvInitiativeNum = mFloatLayout.findViewById(R.id.tvInitiativeNum) @@ -127,16 +128,17 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList tvInitiativeReport = mFloatLayout.findViewById(R.id.tvInitiativeReport) tvInitiativeCancel = mFloatLayout.findViewById(R.id.tvInitiativeCancel) - if(BadCaseConfig.windowNum<1){ + if (BadCaseConfig.windowNum < 1) { BadCaseConfig.windowNum = 1 } tvInitiativeNum.text = BadCaseConfig.windowNum.toString() BadCaseConfig.windowNum++ - tvInitiativeTime.text = "时间:${millis2String(System.currentTimeMillis(),TimeUtils.getHourMinSecondFormat())}" + tvInitiativeTime.text = + "时间:${millis2String(System.currentTimeMillis(), TimeUtils.getHourMinSecondFormat())}" tvInitiativeIdentity.text = "身份:${BadCaseConfig.identity}" //采集结果回调监听 - CallerAutopilotRecordListenerManager.addListener(this.hashCode().toString(),this) + CallerAutopilotRecordListenerManager.addListener(this.hashCode().toString(), this) // 添加 ADAS车辆状态&定位 监听 CallerAutopilotCarStatusListenerManager.addListener(this.hashCode().toString(), this) viewAudioButton.setOnClickListener { @@ -145,36 +147,37 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList } tvInitiativeReport.setOnClickListener { - if(!rbOne.isChecked && !rbTwo.isChecked && !rbThree.isChecked && - !rbFour.isChecked && !rbFive.isChecked && !rbSix.isChecked){ + if (!rbOne.isChecked && !rbTwo.isChecked && !rbThree.isChecked && + !rbFour.isChecked && !rbFive.isChecked && !rbSix.isChecked + ) { TipToast.shortTip("请选择至少一个Case") return@setOnClickListener } - if(rbOne.isChecked){ + if (rbOne.isChecked) { uploadReason.append("严重画龙 ") } - if(rbTwo.isChecked){ + if (rbTwo.isChecked) { uploadReason.append("速度过慢 ") } - if(rbThree.isChecked){ + if (rbThree.isChecked) { uploadReason.append("感知、定位、地图等其他 ") } - if(rbFour.isChecked){ + if (rbFour.isChecked) { uploadReason.append("速度过快 ") } - if(rbFive.isChecked){ + if (rbFive.isChecked) { uploadReason.append("存在碰撞风险 ") } - if(rbSix.isChecked){ + if (rbSix.isChecked) { uploadReason.append("点刹、顿挫") } - if(audioStatus){ + if (audioStatus) { audioStatus = !audioStatus setAudio(audioStatus) Handler().postDelayed({ - uploadAudio() - },1000) - }else{ + uploadAudio() + }, 1000) + } else { uploadAudio() } } @@ -197,10 +200,10 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList } } - var countDownTimer: CountDownTimer?=null + var countDownTimer: CountDownTimer? = null - private fun setAudio(status: Boolean){ - if(status){ + private fun setAudio(status: Boolean) { + if (status) { //开始录音 audioFileName = "Audio_${System.currentTimeMillis()}_BadCase" RecordManager.getInstance().start(audioFileName) @@ -208,11 +211,11 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList viewAudioButton.setImageResource(R.drawable.icon_bad_case_audio_select) tvAudioCountDown.visibility = View.VISIBLE //开始倒计时 - if(countDownTimer==null){ + if (countDownTimer == null) { countDownTimer = object : CountDownTimer(60000, 1000) { override fun onTick(millisUntilFinished: Long) { - tvAudioCountDown.text = "${millisUntilFinished/1000}S" + tvAudioCountDown.text = "${millisUntilFinished / 1000}S" } override fun onFinish() { @@ -225,7 +228,7 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList } countDownTimer?.start() } - }else{ + } else { //结束倒计时 countDownTimer?.cancel() countDownTimer?.onFinish() @@ -235,11 +238,13 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList } - private fun uploadAudio(){ + private fun uploadAudio() { val singlePath = "/mnt/sdcard/mogo/DataCollection/${audioFileName}.wav" val file = File(singlePath) - if(file.exists()){ - LogInfoManagerFactory.createAudioUpload(mActivity.applicationContext,"Audio",singlePath, + if (file.exists()) { + LogInfoManagerFactory.createAudioUpload(mActivity.applicationContext, + "Audio", + singlePath, object : OnUploadListener { override fun onUploadSuccess(filePath: String, downloadUrl: String) { CallerLogger.d("$M_DEVA$TAG", "语音文件上传成功:downloadUrl=$downloadUrl") @@ -255,7 +260,7 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList removeUploadListener(singlePath) } }) - }else{ + } else { //上传到服务器 upload(null) } @@ -265,7 +270,7 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList * 将语音文件上传Cos监听移除 * @param filePath 文件路径 */ - private fun removeUploadListener(filePath: String){ + private fun removeUploadListener(filePath: String) { val pkgInfo: List = filePath.substring( filePath.lastIndexOf("/") + 1, filePath.lastIndexOf(".") @@ -278,21 +283,21 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList * 将记录上传到服务器 * @param downloadUrl 语音文件下载地址 */ - private fun upload(downloadUrl: String?){ - GlobalScope.launch{ + private fun upload(downloadUrl: String?) { + GlobalScope.launch { val uploadResult = presenter.upload(mutableMapOf().also { itx -> - itx["carLicense"] = AppConfigInfo.plateNumber?:"" //车牌号 - itx["filename"] = recordFileName?:"" //bag包文件地址 + itx["carLicense"] = AppConfigInfo.plateNumber ?: "" //车牌号 + itx["filename"] = recordFileName ?: "" //bag包文件地址 itx["filesize"] = "0" //bag包文件大小 - itx["key"] = recordKey?:"" //key - itx["reason"] = uploadReason.toString()?:"" //采集原因 + itx["key"] = recordKey ?: "" //key + itx["reason"] = uploadReason.toString() ?: "" //采集原因 itx["duration"] = BadCaseConfig.totalDuration.toString() //采集时长,固定为20S itx["startTime"] = System.currentTimeMillis().toString() //上报时间(时间戳格式) itx["channel"] = "1" //渠道 itx["carSn"] = MoGoAiCloudClientConfig.getInstance().sn //SN itx["userRole"] = BadCaseConfig.identity //采集者角色 - itx["audioUrl"] = downloadUrl?:"" //音频COS地址 - itx["mapVersion"] = BadCaseConfig.dockerVersion ?:"" //工控机版本 + itx["audioUrl"] = downloadUrl ?: "" //音频COS地址 + itx["mapVersion"] = BadCaseConfig.dockerVersion ?: "" //工控机版本 itx["eyeVersion"] = AppUtils.getAppVersionName() //鹰眼版本 itx["coordinate"] = "latitude:${latitude};longitude:${longitude}" //坐标 @@ -338,15 +343,22 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList // 默认固定位置,靠屏幕右边缘的中间 mWindowManager!!.defaultDisplay.getMetrics(metrics) mWindowParams!!.x = metrics.widthPixels - mWindowParams!!.y = metrics.heightPixels / 2 - BarUtils.getStatusBarHeight()-950 + mWindowParams!!.y = metrics.heightPixels / 2 - BarUtils.getStatusBarHeight() - 950 mWindowManager!!.addView(mFloatLayout, mWindowParams) //开启录包 - if(recordCaseEntity!=null){ - CallerAutoPilotManager.recordPackage(recordCaseEntity.caseId,Random(SystemClock.elapsedRealtime()).nextInt(), - BadCaseConfig.totalDuration, BadCaseConfig.previousDuration,recordCaseEntity.topicList) - }else{ - CallerAutoPilotManager.recordPackage(BadCaseConfig.type,Random(SystemClock.elapsedRealtime()).nextInt(), - BadCaseConfig.totalDuration, BadCaseConfig.previousDuration) + if (recordCaseEntity != null) { + CallerAutoPilotManager.recordPackage( + recordCaseEntity.caseId, + Random(SystemClock.elapsedRealtime()).nextInt(), + BadCaseConfig.totalDuration, + BadCaseConfig.previousDuration, + recordCaseEntity.topicList + ) + } else { + CallerAutoPilotManager.recordPackage( + BadCaseConfig.type, Random(SystemClock.elapsedRealtime()).nextInt(), + BadCaseConfig.totalDuration, BadCaseConfig.previousDuration + ) } } } @@ -362,11 +374,11 @@ class InitiativeBadCaseWindow constructor(activity: Activity) : View.OnTouchList override fun onAutopilotRecordResult(recordPanel: RecordPanelOuterClass.RecordPanel) { CallerLogger.d("${M_DEVA}${TAG}", "-- 收到工控机录制任务回调 -- $recordPanel") ThreadUtils.runOnUiThread { - if(recordKey==null){ + if (recordKey == null) { recordKey = recordPanel.key.toString() BadCaseConfig.recordKeyList.add(recordPanel.key) } - if(recordFileName==null){ + if (recordFileName == null) { recordFileName = recordPanel.filename } } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/PassiveBadCaseWindow.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/PassiveBadCaseWindow.kt index cfb42c46b6..7936699ab4 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/PassiveBadCaseWindow.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/PassiveBadCaseWindow.kt @@ -7,7 +7,6 @@ import android.graphics.PixelFormat import android.os.CountDownTimer import android.os.Handler import android.util.DisplayMetrics -import android.util.Log import android.view.* import android.widget.CheckBox import android.widget.CompoundButton @@ -17,7 +16,6 @@ import com.google.android.flexbox.FlexboxLayout import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.eagle.core.data.app.AppConfigInfo import com.mogo.eagle.core.data.msgbox.MsgBoxBean -import com.mogo.eagle.core.data.msgbox.MsgCategory import com.mogo.eagle.core.data.msgbox.RecordBagMsg import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotCarStateListener import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotCarStatusListenerManager @@ -29,17 +27,16 @@ import com.mogo.eagle.core.utilcode.util.* import com.mogo.eagle.core.utilcode.util.TimeUtils.millis2String import com.zhidao.loglib.call.LogInfoManagerFactory import com.zhidao.loglib.upload.OnUploadListener +import com.zhidao.loglib.upload.UploadManager import com.zhjt.mogo_core_function_devatools.R import com.zhjt.mogo_core_function_devatools.badcase.consts.BadCaseConfig import com.zhjt.mogo_core_function_devatools.badcase.record.RecordManager import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.launch -import mogo.telematics.pad.MessagePad -import com.zhidao.loglib.upload.UploadManager import me.jessyan.autosize.utils.AutoSizeUtils +import mogo.telematics.pad.MessagePad import org.greenrobot.eventbus.EventBus import java.io.File -import java.lang.reflect.Field /** * @author XuXinChao @@ -59,14 +56,14 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene private lateinit var mFloatLayout: View private var audioStatus = false - private var audioFileName:String?=null //录音文件名称 + private var audioFileName: String? = null //录音文件名称 private var uploadReason: String = String() //上报原因,标签 - private var recordKey: String?=null //录制bag包key - private var recordFileName: String?=null //录制文件包名 - private var boxBean: MsgBoxBean ?= null - private var longitude: Double?=null - private var latitude: Double?=null + private var recordKey: String? = null //录制bag包key + private var recordFileName: String? = null //录制文件包名 + private var boxBean: MsgBoxBean? = null + private var longitude: Double? = null + private var latitude: Double? = null private var mInViewX = 0f private var mInViewY = 0f @@ -76,7 +73,7 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene private var mInScreenY = 0f private var clickListener: ClickListener? = null - var countDownTimer: CountDownTimer?=null + var countDownTimer: CountDownTimer? = null private lateinit var tvPassiveNum: TextView private lateinit var tvPassiveTime: TextView @@ -99,8 +96,9 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene } @SuppressLint("SetTextI18n") - private fun initFloatWindow(){ - mFloatLayout = LayoutInflater.from(mActivity).inflate(R.layout.view_passive_bad_case, null) as View + private fun initFloatWindow() { + mFloatLayout = + LayoutInflater.from(mActivity).inflate(R.layout.view_passive_bad_case, null) as View mFloatLayout.setOnTouchListener(this) tvPassiveNum = mFloatLayout.findViewById(R.id.tvPassiveNum) tvPassiveTime = mFloatLayout.findViewById(R.id.tvPassiveTime) @@ -110,12 +108,13 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene tvPassiveReport = mFloatLayout.findViewById(R.id.tvPassiveReport) tvPassiveCancel = mFloatLayout.findViewById(R.id.tvPassiveCancel) flReasonLayout = mFloatLayout.findViewById(R.id.flReasonLayout) - if(BadCaseConfig.windowNum<1){ + if (BadCaseConfig.windowNum < 1) { BadCaseConfig.windowNum = 1 } tvPassiveNum.text = BadCaseConfig.windowNum.toString() BadCaseConfig.windowNum++ - tvPassiveTime.text = "时间:${millis2String(System.currentTimeMillis(),TimeUtils.getHourMinSecondFormat())}" + tvPassiveTime.text = + "时间:${millis2String(System.currentTimeMillis(), TimeUtils.getHourMinSecondFormat())}" tvPassiveIdentity.text = "身份:${BadCaseConfig.identity}" // 添加 ADAS车辆状态&定位 监听 CallerAutopilotCarStatusListenerManager.addListener(TAG, this) @@ -125,17 +124,17 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene } tvPassiveReport.setOnClickListener { - if(uploadReason.isEmpty()){ + if (uploadReason.isEmpty()) { TipToast.shortTip("请选择至少一个Case") return@setOnClickListener } - if(audioStatus){ + if (audioStatus) { audioStatus = !audioStatus setAudio(audioStatus) Handler().postDelayed({ uploadAudio() - },1000) - }else{ + }, 1000) + } else { uploadAudio() } //删除记录 @@ -163,8 +162,8 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene } } - private fun setAudio(status: Boolean){ - if(status){ + private fun setAudio(status: Boolean) { + if (status) { //开始录音 audioFileName = "Audio_${System.currentTimeMillis()}_BadCase" RecordManager.getInstance().start(audioFileName) @@ -172,11 +171,11 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene viewAudioButton.setImageResource(R.drawable.icon_bad_case_audio_select) tvAudioCountDown.visibility = View.VISIBLE //开始倒计时 - if(countDownTimer==null){ + if (countDownTimer == null) { countDownTimer = object : CountDownTimer(60000, 1000) { override fun onTick(millisUntilFinished: Long) { - tvAudioCountDown.text = "${millisUntilFinished/1000}S" + tvAudioCountDown.text = "${millisUntilFinished / 1000}S" } override fun onFinish() { @@ -189,7 +188,7 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene } countDownTimer?.start() } - }else{ + } else { //结束倒计时 countDownTimer?.cancel() countDownTimer?.onFinish() @@ -199,11 +198,13 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene } - private fun uploadAudio(){ + private fun uploadAudio() { val singlePath = "/mnt/sdcard/mogo/DataCollection/${audioFileName}.wav" val file = File(singlePath) - if(file.exists()){ - LogInfoManagerFactory.createAudioUpload(mActivity.applicationContext,"Audio",singlePath, + if (file.exists()) { + LogInfoManagerFactory.createAudioUpload(mActivity.applicationContext, + "Audio", + singlePath, object : OnUploadListener { override fun onUploadSuccess(filePath: String, downloadUrl: String) { CallerLogger.d("$M_DEVA$TAG", "语音文件上传成功:downloadUrl=$downloadUrl") @@ -219,7 +220,7 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene removeUploadListener(singlePath) } }) - }else{ + } else { //上传到服务器 upload(null) } @@ -229,7 +230,7 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene * 将语音文件上传Cos监听移除 * @param filePath 文件路径 */ - private fun removeUploadListener(filePath: String){ + private fun removeUploadListener(filePath: String) { val pkgInfo: List = filePath.substring( filePath.lastIndexOf("/") + 1, filePath.lastIndexOf(".") @@ -242,21 +243,21 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene * 将记录上传到服务器 * @param downloadUrl 语音文件下载地址 */ - private fun upload(downloadUrl: String?){ - GlobalScope.launch{ + private fun upload(downloadUrl: String?) { + GlobalScope.launch { val uploadResult = presenter.upload(mutableMapOf().also { itx -> - itx["carLicense"] = AppConfigInfo.plateNumber?:"" //车牌号 - itx["filename"] = recordFileName?:"" //bag包文件地址 + itx["carLicense"] = AppConfigInfo.plateNumber ?: "" //车牌号 + itx["filename"] = recordFileName ?: "" //bag包文件地址 itx["filesize"] = "0" //bag包文件大小 - itx["key"] = recordKey?:"" //key + itx["key"] = recordKey ?: "" //key itx["reason"] = uploadReason //采集原因 itx["duration"] = BadCaseConfig.totalDuration.toString() //采集时长,固定为20S itx["startTime"] = System.currentTimeMillis().toString() //上报时间(时间戳格式) itx["channel"] = "0" //渠道 itx["carSn"] = MoGoAiCloudClientConfig.getInstance().sn //SN itx["userRole"] = BadCaseConfig.identity //采集者角色 - itx["audioUrl"] = downloadUrl?:"" //音频COS地址 - itx["mapVersion"] = BadCaseConfig.dockerVersion ?:"" //工控机版本 + itx["audioUrl"] = downloadUrl ?: "" //音频COS地址 + itx["mapVersion"] = BadCaseConfig.dockerVersion ?: "" //工控机版本 itx["eyeVersion"] = AppUtils.getAppVersionName() //鹰眼版本 itx["coordinate"] = "latitude:${latitude};longitude:${longitude}" //坐标 @@ -308,28 +309,33 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene // 默认固定位置,靠屏幕右边缘的中间 mWindowManager!!.defaultDisplay.getMetrics(metrics) mWindowParams!!.x = metrics.widthPixels - mWindowParams!!.y = metrics.heightPixels - BarUtils.getStatusBarHeight()-950 + mWindowParams!!.y = metrics.heightPixels - BarUtils.getStatusBarHeight() - 950 mWindowManager!!.addView(mFloatLayout, mWindowParams) } - GlobalScope.launch{ + GlobalScope.launch { presenter.loadBadCases(true).also { ThreadUtils.runOnUiThread { it.iterator().forEach { val checkBox = CheckBox(mActivity) checkBox.setTextColor(Color.WHITE) - val lp = FlexboxLayout.LayoutParams(FlexboxLayout.LayoutParams.WRAP_CONTENT, - FlexboxLayout.LayoutParams.WRAP_CONTENT) - checkBox.buttonDrawable = mActivity.resources.getDrawable(R.drawable.badcase_radio_button_style) - checkBox.setPadding(SizeUtils.dp2px(10f), + val lp = FlexboxLayout.LayoutParams( + FlexboxLayout.LayoutParams.WRAP_CONTENT, + FlexboxLayout.LayoutParams.WRAP_CONTENT + ) + checkBox.buttonDrawable = + mActivity.resources.getDrawable(R.drawable.badcase_radio_button_style) + checkBox.setPadding( SizeUtils.dp2px(10f), SizeUtils.dp2px(10f), - SizeUtils.dp2px(10f)) - checkBox.textSize = AutoSizeUtils.dp2px(mActivity,18f).toFloat() + SizeUtils.dp2px(10f), + SizeUtils.dp2px(10f) + ) + checkBox.textSize = AutoSizeUtils.dp2px(mActivity, 18f).toFloat() checkBox.text = it.reason checkBox.isChecked = it.isChecked checkBox.setOnCheckedChangeListener(this@PassiveBadCaseWindow) - flReasonLayout.addView(checkBox,lp) + flReasonLayout.addView(checkBox, lp) } } } @@ -339,13 +345,13 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene override fun onCheckedChanged(buttonView: CompoundButton?, isChecked: Boolean) { buttonView?.text?.let { - if(isChecked){ - if(!uploadReason.contains(it)){ + if (isChecked) { + if (!uploadReason.contains(it)) { uploadReason += it } - }else{ - if(uploadReason.contains(it)){ - uploadReason = uploadReason.replace(it.toString(),"") + } else { + if (uploadReason.contains(it)) { + uploadReason = uploadReason.replace(it.toString(), "") } } @@ -359,7 +365,7 @@ class PassiveBadCaseWindow constructor(activity: Activity) : View.OnTouchListene if (mFloatLayout.parent != null) mWindowManager!!.removeView(mFloatLayout) } - fun setRecord(msgBoxBean: MsgBoxBean){ + fun setRecord(msgBoxBean: MsgBoxBean) { boxBean = msgBoxBean val recordBagMsg = (msgBoxBean.bean as RecordBagMsg) recordKey = recordBagMsg.key.toString() diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/RecordTemplateAdapter.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/RecordTemplateAdapter.kt index b13093d508..02dd332eb3 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/RecordTemplateAdapter.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/biz/adapter/RecordTemplateAdapter.kt @@ -7,23 +7,22 @@ import android.widget.TextView import androidx.recyclerview.widget.RecyclerView import com.mogo.eagle.core.data.badcase.RecordTypeEntity import com.zhjt.mogo_core_function_devatools.R -import com.zhjt.mogo_core_function_devatools.badcase.biz.BadCaseConfigView /** * @author XuXinChao * @description 录制模板清单列表适配器 * @since: 2022/10/19 */ -class RecordTemplateAdapter : RecyclerView.Adapter(){ +class RecordTemplateAdapter : RecyclerView.Adapter() { - private var data:List? = null + private var data: List? = null private var clickTemplateListener: ClickTemplateListener? = null - fun setData( data: List?){ + fun setData(data: List?) { this.data = data } - fun setListener(listener: ClickTemplateListener){ + fun setListener(listener: ClickTemplateListener) { clickTemplateListener = listener } @@ -34,7 +33,7 @@ class RecordTemplateAdapter : RecyclerView.Adapter + data?.let { recordTypeEntity -> holder.caseName.text = recordTypeEntity[position].desc holder.caseName.setOnClickListener { clickTemplateListener?.onClick(recordTypeEntity[position]) @@ -44,11 +43,11 @@ class RecordTemplateAdapter : RecyclerView.Adapter cacheBufferList = Collections.synchronizedList(new LinkedList()); - private File file; + private final List cacheBufferList = Collections.synchronizedList(new LinkedList<>()); + private final File file; + private final byte[] mp3Buffer; private FileOutputStream os; - private byte[] mp3Buffer; private EncordFinishListener encordFinishListener; /** @@ -69,7 +68,7 @@ public class Mp3EncodeThread extends Thread { private ChangeBuffer next() { for (; ; ) { - if (cacheBufferList == null || cacheBufferList.size() == 0) { + if (cacheBufferList.size() == 0) { try { if (isOver) { finish(); @@ -122,8 +121,8 @@ public class Mp3EncodeThread extends Thread { } public static class ChangeBuffer { - private short[] rawData; - private int readSize; + private final short[] rawData; + private final int readSize; public ChangeBuffer(short[] rawData, int readSize) { this.rawData = rawData.clone(); diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/repository/store/BadCaseStore.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/repository/store/BadCaseStore.kt index 3edf01e489..9e61bc3309 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/repository/store/BadCaseStore.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/repository/store/BadCaseStore.kt @@ -3,13 +3,13 @@ package com.zhjt.mogo_core_function_devatools.badcase.repository.store import androidx.datastore.core.DataStore import androidx.datastore.core.DataStoreFactory import androidx.datastore.core.Serializer -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA import com.mogo.eagle.core.utilcode.util.Utils import com.zhjt.mogo_core_function_devatools.badcase.BadCaseManager -import com.zhjt.mogo_core_function_devatools.badcase.repository.net.api.entity.BadCaseResponse.Reason import com.zhjt.mogo_core_function_devatools.badcase.generated.BadCauses import com.zhjt.mogo_core_function_devatools.badcase.generated.Cause +import com.zhjt.mogo_core_function_devatools.badcase.repository.net.api.entity.BadCaseResponse.Reason import kotlinx.coroutines.FlowPreview import kotlinx.coroutines.flow.catch import kotlinx.coroutines.flow.firstOrNull @@ -54,7 +54,12 @@ internal object BadCaseStore { private val store: DataStore by lazy { - DataStoreFactory.create(serializer = serializer) { File(Utils.getApp().filesDir, "bad_cases.pb") } + DataStoreFactory.create(serializer = serializer) { + File( + Utils.getApp().filesDir, + "bad_cases.pb" + ) + } } suspend fun updateRecords(reasons: List, isDriven: Boolean): BadCauses { @@ -99,7 +104,10 @@ internal object BadCaseStore { @OptIn(FlowPreview::class) suspend fun records(isDriven: Boolean): List { - CallerLogger.d("$M_DEVA${BadCaseManager.TAG}", "-- load cases from pb -- isDriven: $isDriven") + CallerLogger.d( + "$M_DEVA${BadCaseManager.TAG}", + "-- load cases from pb -- isDriven: $isDriven" + ) val causes = store.data.firstOrNull() CallerLogger.d("$M_DEVA${BadCaseManager.TAG}", "-- load cases from pb -- result: $causes") val list = if (isDriven) causes?.drivenDataList else causes?.drivingDataList diff --git a/core/function-impl/mogo-core-function-dispatch/build.gradle b/core/function-impl/mogo-core-function-dispatch/build.gradle index 19386cc6b1..fd67628ac2 100644 --- a/core/function-impl/mogo-core-function-dispatch/build.gradle +++ b/core/function-impl/mogo-core-function-dispatch/build.gradle @@ -64,7 +64,6 @@ dependencies { implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') implementation project(':core:mogo-core-network') - implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') } } diff --git a/core/function-impl/mogo-core-function-hmi/build.gradle b/core/function-impl/mogo-core-function-hmi/build.gradle index 52f99df701..a06fa9f178 100644 --- a/core/function-impl/mogo-core-function-hmi/build.gradle +++ b/core/function-impl/mogo-core-function-hmi/build.gradle @@ -81,7 +81,6 @@ dependencies { if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { api rootProject.ext.dependencies.mogoaicloudservicesdk api rootProject.ext.dependencies.mogocommons - api rootProject.ext.dependencies.mogoserviceapi api rootProject.ext.dependencies.mogoservice api rootProject.ext.dependencies.mogomap api rootProject.ext.dependencies.crashreportupgrade @@ -102,7 +101,6 @@ dependencies { api rootProject.ext.dependencies.mogo_core_function_devatools api rootProject.ext.dependencies.mogo_core_function_carcorder api rootProject.ext.dependencies.mogo_core_function_call - api rootProject.ext.dependencies.mogo_core_function_api api rootProject.ext.dependencies.mogo_core_function_msgbox implementation project(':libraries:map-usbcamera') @@ -110,9 +108,6 @@ dependencies { } else { api project(':foudations:mogo-aicloud-services-sdk') api project(':foudations:mogo-commons') - api project(':services:mogo-service-api') - - api project(':libraries:mogo-map') api project(':test:crashreport-upgrade') // api project(':test:crashreport-bugly') api project(':test:crashreport-apmbyte') @@ -135,8 +130,6 @@ dependencies { api project(':core:function-impl:mogo-core-function-datacenter') api project(':core:mogo-core-function-call') - api project(':core:mogo-core-function-api') - api project(':libraries:mogo-adas') api project(':libraries:map-usbcamera') } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml b/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml index f86d2c7d81..acc82f7da5 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml @@ -125,15 +125,6 @@ android:name="MAP_SDK_VERSION111111" android:value="${MAP_SDK_VERSION}" /> - - - - - - diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/bindingcar/ModifyBindingCarDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/bindingcar/ModifyBindingCarDialog.kt index 8220934278..a231c2cedb 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/bindingcar/ModifyBindingCarDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/bindingcar/ModifyBindingCarDialog.kt @@ -24,7 +24,7 @@ class ModifyBindingCarDialog(context: Context) : BaseFloatDialog(context), Lifec private val statusChangedListenerForCheckNotice = IMogoStatusChangedListener { descriptor, isTrue -> - if (descriptor == StatusDescriptor.MAIN_PAGE_IS_BACKGROUND) { + 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/bindingcar/ToBindingCarDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/bindingcar/ToBindingCarDialog.kt index e737eff6f8..305cd3e0b1 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/bindingcar/ToBindingCarDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/bindingcar/ToBindingCarDialog.kt @@ -23,7 +23,7 @@ class ToBindingCarDialog(context: Context) : BaseFloatDialog(context), Lifecycle private var cancelTv: TextView? = null private val statusChangedListenerForCheckNotice = IMogoStatusChangedListener { descriptor, isTrue -> - if (descriptor == StatusDescriptor.MAIN_PAGE_IS_BACKGROUND) { + 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/NoticeCheckDialog.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeCheckDialog.kt index d5779981bd..92597ad08a 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeCheckDialog.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeCheckDialog.kt @@ -43,7 +43,7 @@ class NoticeCheckDialog(context: Context) : BaseFloatDialog(context), LifecycleO private var playErrorImageView: ImageView? = null private var connectTextView: TextView? = null private val statusChangedListenerForCheckNotice = IMogoStatusChangedListener { descriptor, isTrue -> - if (descriptor == StatusDescriptor.MAIN_PAGE_IS_BACKGROUND) { + 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/NoticeTrafficDialog.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficDialog.java index 1d52222fca..31f6a0837f 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficDialog.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficDialog.java @@ -443,7 +443,7 @@ public class NoticeTrafficDialog extends BaseFloatDialog implements LifecycleObs } private final IMogoStatusChangedListener statusChangedListenerForNotice = (descriptor, isTrue) -> { - if (descriptor == StatusDescriptor.MAIN_PAGE_IS_BACKGROUND) { + if (descriptor == StatusDescriptor.MAIN_PAGE_IS_BACKGROUND && isTrue) { CallerLogger.INSTANCE.d(M_HMI + TAG, "onStatusChanged==MAIN_PAGE_IS_BACKGROUND"); dismiss(); } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt index 22e1910455..2ef74582ff 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt @@ -7,6 +7,7 @@ import android.content.ClipboardManager import android.content.Context import android.graphics.Color import android.os.Build +import android.telecom.Call import android.text.Html import android.util.AttributeSet import android.view.LayoutInflater @@ -73,7 +74,6 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.mogo.toast.TipToast import com.mogo.eagle.core.utilcode.util.* -import com.mogo.map.MogoMapUIController import com.mogo.map.uicontroller.VisualAngleMode import com.mogo.map.uicontroller.VisualAngleMode.* import com.mogo.eagle.core.function.business.routeoverlay.* @@ -279,7 +279,7 @@ class DebugSettingView @JvmOverloads constructor( } btnOpenAllGestures.setOnClickListener { - MogoMapUIController.getInstance().setAllGesturesEnabled(true) + CallerMapUIServiceManager.getMapUIController()?.setAllGesturesEnabled(true) } /** diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/PerspectiveSwitchView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/PerspectiveSwitchView.kt index df4e2a1d15..020a0b32d0 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/PerspectiveSwitchView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/PerspectiveSwitchView.kt @@ -5,8 +5,8 @@ import android.util.AttributeSet import android.view.LayoutInflater import android.view.View import android.widget.FrameLayout +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager.getMapUIController import com.mogo.eagle.core.function.hmi.R -import com.mogo.map.MogoMapUIController import com.mogo.map.uicontroller.VisualAngleMode import kotlinx.android.synthetic.main.view_perspective_switch.view.* @@ -28,25 +28,17 @@ class PerspectiveSwitchView @JvmOverloads constructor( } override fun onClick(v: View?) { - //切换地图的远近视图 - if (MogoMapUIController.getInstance().currentMapVisualAngle.isLongSight) { -// MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) -// .visibleAllMarkers() - MogoMapUIController.getInstance() - .changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null) - textSwitch.setText(R.string.module_map_model_normal) - } else if (MogoMapUIController.getInstance().currentMapVisualAngle.isMediumSight) { -// MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) -// .inVisibleWithoutMarkers(DataTypes.TYPE_MARKER_ADAS) - MogoMapUIController.getInstance() - .changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null) - textSwitch.setText(R.string.module_map_model_faster) - } else { -// MogoMarkerManager.getInstance(AbsMogoApplication.getApp()) -// .visibleAllMarkers() - MogoMapUIController.getInstance() - .changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null) - textSwitch.setText(R.string.module_map_model_normal) + getMapUIController()?.let { + if (it.currentMapVisualAngle.isLongSight) { + it.changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null) + textSwitch.setText(R.string.module_map_model_normal) + } else if (it.currentMapVisualAngle.isMediumSight) { + it.changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null) + textSwitch.setText(R.string.module_map_model_faster) + } else { + it.changeMapVisualAngle(VisualAngleMode.MODE_LONG_SIGHT, null) + textSwitch.setText(R.string.module_map_model_faster) + } } } } \ 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/ui/widget/SpeedPanelView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SpeedPanelView.kt index 9990edb0b3..0b7e36a9f6 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SpeedPanelView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SpeedPanelView.kt @@ -9,9 +9,9 @@ import com.mogo.eagle.core.data.map.MogoLocation import com.mogo.eagle.core.function.api.map.listener.IMoGoMapLocationListener import com.mogo.eagle.core.function.call.hmi.CallerHmiManager import com.mogo.eagle.core.function.call.map.CallerMapLocationListenerManager +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.function.hmi.R import com.mogo.eagle.core.utilcode.util.UiThreadHandler -import com.mogo.map.MogoMapUIController import java.util.* /** @@ -38,7 +38,7 @@ class SpeedPanelView @JvmOverloads constructor( } init { - initEvent(context) + initEvent() setBackgroundResource(R.drawable.yi_biao_pan_bg_nor) mContext = context mSpeedChartView = SpeedChartView(context) @@ -52,7 +52,7 @@ class SpeedPanelView @JvmOverloads constructor( addView(mSpeedChartView) } - private fun initEvent(context: Context) { + private fun initEvent() { setOnLongClickListener { CallerHmiManager.toggleDebugView() false @@ -69,8 +69,7 @@ class SpeedPanelView @JvmOverloads constructor( val task = object : TimerTask() { override fun run() { mLatLng?.let { - mSpeedLimit = MogoMapUIController.getInstance() - .getLimitSpeed(it.longitude, it.latitude, it.bearing) + mSpeedLimit = CallerMapUIServiceManager.getMapUIController()!!.getLimitSpeed(it.longitude, it.latitude, it.bearing) UiThreadHandler.post { val speed = (it.speed * 3.6f).toInt() mSpeedChartView.setArcColor(Color.parseColor(if (speed > mSpeedLimit) "#DB3137" else "#3E77F6")) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/EventDispatchCenter.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/EventDispatchCenter.java deleted file mode 100644 index 0189556893..0000000000 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/EventDispatchCenter.java +++ /dev/null @@ -1,283 +0,0 @@ -package com.mogo.eagle.core.function.main; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_HMI; - -import android.location.Location; -import android.view.MotionEvent; - -import com.mogo.eagle.core.data.map.MogoLatLng; -import com.mogo.eagle.core.data.map.MogoLocation; -import com.mogo.eagle.core.function.main.registercenter.MogoRegisterCenterHandler; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.map.listener.IMogoMapListener; -import com.mogo.map.location.IMogoLocationListener; -import com.mogo.map.marker.IMogoMarker; -import com.mogo.map.marker.IMogoMarkerClickListener; -import com.mogo.map.model.MogoPoi; -import com.mogo.map.navi.IMogoCarLocationChangedListener; -import com.mogo.map.navi.IMogoCarLocationChangedListener2; -import com.mogo.map.uicontroller.EnumMapUI; -import com.mogo.map.uicontroller.VisualAngleMode; - -import java.util.ArrayList; -import java.util.Iterator; - -/** - * @author congtaowang - * @since 2020-04-24 - *

- * 事件回调分发中心 - */ -public class EventDispatchCenter implements - IMogoMarkerClickListener, - IMogoCarLocationChangedListener2, - IMogoMapListener, - IMogoLocationListener { - - - private static volatile EventDispatchCenter sInstance; - private Runnable mMapLoadedCallback; - - private EventDispatchCenter() { - } - - public static EventDispatchCenter getInstance() { - if (sInstance == null) { - synchronized (EventDispatchCenter.class) { - if (sInstance == null) { - sInstance = new EventDispatchCenter(); - } - } - } - return sInstance; - } - - private static final String TAG = "DispatchCenter"; - - @Override - public boolean onMarkerClicked(IMogoMarker marker) { - IMogoMarkerClickListener listener = MogoRegisterCenterHandler.getInstance().getMarkerListener(marker.getOwner()); - if (listener != null) { - try { - return listener.onMarkerClicked(marker); - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onMarkerClicked error : " + e); - } - } - return false; - } - - @Override - public boolean onStaticMarkerClicked(IMogoMarker marker) { - ArrayList list = MogoRegisterCenterHandler.getInstance().getStaticMarkerListener(marker.getOwner()); - if (list == null) { - return false; - } - try { - for (IMogoMarkerClickListener listener : list) { - return listener.onStaticMarkerClicked(marker); - } - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onStaticMarkerClicked error : " + e); - } - return false; - } - - @Override - public void onCarLocationChanged2(Location latLng) { - - Iterator iterator = MogoRegisterCenterHandler.getInstance().getCarLocationChangedListener(); - if (iterator == null) { - return; - } - MogoLatLng target = null; - while (iterator.hasNext()) { - IMogoCarLocationChangedListener listener = iterator.next(); - if (listener instanceof IMogoCarLocationChangedListener2) { - try { - ((IMogoCarLocationChangedListener2) listener).onCarLocationChanged2(latLng); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - } - - /** - * 地图加载完成回调 - * - * @param callback - */ - void setMapLoadedCallback(Runnable callback) { - this.mMapLoadedCallback = callback; - } - - @Override - public void onMapLoaded() { - if (mMapLoadedCallback != null) { - mMapLoadedCallback.run(); - mMapLoadedCallback = null; - } - - Iterator iterator = MogoRegisterCenterHandler.getInstance().getMapListeners(); - if (iterator == null) { - return; - } - while (iterator.hasNext()) { - IMogoMapListener listener = iterator.next(); - if (listener != null) { - try { - listener.onMapLoaded(); - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onMapLoaded error : " + e); - } - } - } - } - - @Override - public void onTouch(MotionEvent motionEvent) { - Iterator iterator = MogoRegisterCenterHandler.getInstance().getMapListeners(); - if (iterator == null) { - return; - } - while (iterator.hasNext()) { - IMogoMapListener listener = iterator.next(); - if (listener != null) { - try { - listener.onTouch(motionEvent); - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onTouch error : " + e); - } - } - } - } - - @Override - public void onPOIClick(MogoPoi poi) { - Iterator iterator = MogoRegisterCenterHandler.getInstance().getMapListeners(); - if (iterator == null) { - return; - } - while (iterator.hasNext()) { - IMogoMapListener listener = iterator.next(); - if (listener != null) { - try { - listener.onPOIClick(poi); - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onPOIClick error : " + e); - } - } - } - } - - @Override - public void onMapClick(MogoLatLng latLng) { - Iterator iterator = MogoRegisterCenterHandler.getInstance().getMapListeners(); - if (iterator == null) { - return; - } - while (iterator.hasNext()) { - IMogoMapListener listener = iterator.next(); - if (listener != null) { - try { - listener.onMapClick(latLng); - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onMapClick error : " + e); - } - } - } - } - - @Override - public void onLockMap(boolean isLock) { - Iterator iterator = MogoRegisterCenterHandler.getInstance().getMapListeners(); - if (iterator == null) { - return; - } - while (iterator.hasNext()) { - IMogoMapListener listener = iterator.next(); - if (listener != null) { - try { - listener.onLockMap(isLock); - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onLockMap error : " + e); - } - } - } - } - - @Override - public void onMapModeChanged(EnumMapUI ui) { - Iterator iterator = MogoRegisterCenterHandler.getInstance().getMapListeners(); - if (iterator == null) { - return; - } - while (iterator.hasNext()) { - IMogoMapListener listener = iterator.next(); - if (listener != null) { - try { - listener.onMapModeChanged(ui); - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onMapModeChanged error :" + e); - } - } - } - } - - @Override - public void onMapVisualAngleChanged(VisualAngleMode visualAngleMode) { - Iterator iterator = MogoRegisterCenterHandler.getInstance().getMapListeners(); - if (iterator == null) { - return; - } - while (iterator.hasNext()) { - IMogoMapListener listener = iterator.next(); - if (listener != null) { - try { - listener.onMapVisualAngleChanged(visualAngleMode); - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onMapVisualAngleChanged error : " + e); - } - } - } - } - - @Override - public void onMapChanged(MogoLatLng location, float zoom, float tilt, float bearing) { - Iterator iterator = MogoRegisterCenterHandler.getInstance().getMapListeners(); - if (iterator == null) { - return; - } - while (iterator.hasNext()) { - IMogoMapListener listener = iterator.next(); - if (listener != null) { - try { - listener.onMapChanged(location, zoom, tilt, bearing); - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onMapChanged error :" + e); - } - } - } - } - - @Override - public void onLocationChanged(MogoLocation location) { - - Iterator iterator = MogoRegisterCenterHandler.getInstance().getLocationListeners(); - if (iterator == null) { - return; - } - while (iterator.hasNext()) { - IMogoLocationListener listener = iterator.next(); - if (listener != null) { - try { - listener.onLocationChanged(location); - } catch (Exception e) { - CallerLogger.INSTANCE.e(M_HMI + TAG, "onLocationChanged error : " + e); - } - } - } - } - -} diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.java index 801249170e..a52ea391c3 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/MainActivity.java @@ -6,7 +6,6 @@ import static com.mogo.eagle.core.data.deva.chain.ChainConstant.CHAIN_LINK_LOG_N import static com.mogo.eagle.core.function.main.MainPresenter.MOGO_PERMISSION_REQUEST_CODE; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_HMI; -import android.content.Intent; import android.content.pm.PackageManager; import android.os.Build; import android.os.Bundle; @@ -36,15 +35,14 @@ import com.mogo.commons.mvp.BaseFragment; import com.mogo.commons.mvp.MvpActivity; import com.mogo.commons.mvp.MvpFragment; import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; +import com.mogo.eagle.core.data.config.HdMapBuildConfig; import com.mogo.eagle.core.data.constants.MoGoFragmentPaths; -import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.function.hmi.R; import com.mogo.eagle.core.function.hmi.ui.widget.StatusBarView; -import com.mogo.eagle.core.function.main.cards.MogoModulesManager; -import com.mogo.eagle.core.function.main.service.MogoMainService; +import com.mogo.eagle.core.function.main.modules.MogoModulesManager; import com.mogo.eagle.core.function.main.stagetwo.AutopilotStartup; import com.mogo.eagle.core.function.main.windowview.FloatingViewHandler; import com.mogo.eagle.core.utilcode.mogo.AppLaunchTimeUtils; @@ -54,9 +52,9 @@ import com.mogo.eagle.core.utilcode.mogo.toast.ResourcesHelper; import com.mogo.eagle.core.utilcode.util.BarUtils; import com.mogo.eagle.core.utilcode.util.NetworkUtils; import com.mogo.eagle.core.utilcode.util.ProcessUtils; -import com.mogo.map.listener.IMogoHosListenerRegister; +import com.mogo.eagle.core.utilcode.util.UiThreadHandler; +import com.mogo.map.listener.IMogoMapListener; import com.mogo.map.listener.MogoMapListenerHandler; -import com.mogo.map.location.IMogoLocationListener; import com.mogo.map.uicontroller.EnumMapUI; import com.mogo.map.uicontroller.IMogoMapUIController; import com.rousetime.android_startup.StartupManager; @@ -81,7 +79,6 @@ import system_master.SystemStatusInfo; * 描述:加载各个模块 */ public class MainActivity extends MvpActivity implements MainView, - IMogoLocationListener, IMoGoAutopilotStatusListener { protected static final String TAG = "MainActivity"; @@ -129,8 +126,8 @@ public class MainActivity extends MvpActivity implement } private void injectStatusBar() { - FrameLayout decorView =(FrameLayout) this.getWindow().getDecorView(); - View contentView = ((ViewGroup)decorView.findViewById(android.R.id.content)).getChildAt(0); + FrameLayout decorView = (FrameLayout) this.getWindow().getDecorView(); + View contentView = ((ViewGroup) decorView.findViewById(android.R.id.content)).getChildAt(0); contentView.setFitsSystemWindows(false); decorView.setClipToPadding(false); @@ -228,29 +225,25 @@ public class MainActivity extends MvpActivity implement @Override public void loadModules() { final long start = System.currentTimeMillis(); - MogoModulesManager.getInstance().init(this); - IMogoHosListenerRegister listenerRegister = CallerMapUIServiceManager.INSTANCE.getHostListenerRegister(); - if (listenerRegister != null) { - listenerRegister.registerHostMapListener(TAG,EventDispatchCenter.getInstance()); - listenerRegister.registerMarkerClickListener(TAG, EventDispatchCenter.getInstance()); - } + MogoMapListenerHandler.Companion.getMogoMapListenerHandler().registerHostMapListener(TAG, new IMogoMapListener() { + @Override + public void onMapLoaded() { + // 延时加载其他模块 + getWindow().getDecorView().post(() -> { + HdMapBuildConfig.isMapLoaded = true; + loadOthersModules(); + loadFunctionFragment(); - EventDispatchCenter.getInstance().setMapLoadedCallback(() -> { - CallerLogger.INSTANCE.d(M_HMI + TAG, "map loaded." + Thread.currentThread().getName()); - // 延时加载其他模块 - getWindow().getDecorView().post(() -> { - loadOthersModules(); - loadFunctionFragment(); + // TODO 这里临时兼容进入VR模式,标记状态机。有些业务(OCH)会根据状态判断加载 + MogoStatusManager.getInstance().setVrMode(TAG, true); + // 设置地图样式 + MogoMapListenerHandler.Companion.getMogoMapListenerHandler().onMapModeChanged(EnumMapUI.MAP_STYLE_DAY_VR); + }); + CallerLogger.INSTANCE.i(M_HMI + TAG, "App launch timer cost " + (System.currentTimeMillis() - start) + "ms"); - // TODO 这里临时兼容进入VR模式,标记状态机。有些业务(OCH)会根据状态判断加载 - MogoStatusManager.getInstance().setVrMode(TAG, true); - // 设置地图样式 - MogoMapListenerHandler.Companion.getMogoMapListenerHandler().onMapModeChanged(EnumMapUI.MAP_STYLE_DAY_VR); - }); - CallerLogger.INSTANCE.i(M_HMI + TAG, "App launch timer cost " + (System.currentTimeMillis() - start) + "ms"); + } }); - // 加载地图 loadFunctionMapView(); } @@ -263,27 +256,16 @@ public class MainActivity extends MvpActivity implement MogoModulesManager.getInstance().loadFunctionModules(); mPresenter.delayOperations(); MogoModulesManager.getInstance().loadFunctionModulesServer(); - - // 启动一些基本的服务:定位等 - startBaseService(); + UiThreadHandler.postDelayed(() -> { + CallerLogger.INSTANCE.d(M_HMI + TAG, "5秒已过,启动基础服务……"); + MogoModulesManager.getInstance().loadBaseModule(); + }, 5_000L); if (DebugConfig.isDebug()) { // 启动Native内存泄漏监测 startLeakMonitor(); } } - /** - * 启动后台服务 - */ - private void startBaseService() { - Intent intentMainService = new Intent(this, MogoMainService.class); - startService(intentMainService); - - // USB 摄像头行车记录仪进程 -// Intent intentCarcorderService = new Intent(this, CarcorderService.class); -// startService(intentCarcorderService); - } - private void startLeakMonitor() { LeakMonitorConfig leakMonitorConfig = new LeakMonitorConfig.Builder() .setLoopInterval(50000) @@ -355,16 +337,11 @@ public class MainActivity extends MvpActivity implement return new MainPresenter(this); } - @Override - public void onLocationChanged(MogoLocation location) { - EventDispatchCenter.getInstance().onLocationChanged(location); - } - @Override protected void onResume() { super.onResume(); MogoStatusManager.getInstance().setMainPageResumeStatus(TAG, true); - MogoStatusManager.getInstance().setMainPageIsBackgroundStatus(TAG, true); + MogoStatusManager.getInstance().setMainPageIsBackgroundStatus(TAG, false); } @Override @@ -379,16 +356,6 @@ public class MainActivity extends MvpActivity implement MogoStatusManager.getInstance().setMainPageIsBackgroundStatus(TAG, true); } - @Override - public void onBackPressed() { - - } - - @Override - protected void onNewIntent(Intent intent) { - super.onNewIntent(intent); - } - @Override public void onAutopilotStatusResponse(@NonNull AutopilotStatusInfo autoPilotStatusInfo) { int status = autoPilotStatusInfo.getIpcConnStatus(); @@ -434,11 +401,7 @@ public class MainActivity extends MvpActivity implement protected void onDestroy() { super.onDestroy(); CallerAutoPilotStatusListenerManager.INSTANCE.removeListener(TAG); - IMogoHosListenerRegister listenerRegister = CallerMapUIServiceManager.INSTANCE.getHostListenerRegister(); - if (listenerRegister != null) { - listenerRegister.unregisterMarkerClickListener(TAG); - listenerRegister.unregisterHostMapListener(TAG); - } + MogoMapListenerHandler.Companion.getMogoMapListenerHandler().unregisterHostMapListener(TAG); IMogoMapUIController mapUIController = CallerMapUIServiceManager.INSTANCE.getMapUIController(); if (mapUIController != null) { mapUIController.destroy(); diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/cards/MogoModulesHandler.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/modules/MogoModulesHandler.java similarity index 90% rename from core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/cards/MogoModulesHandler.java rename to core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/modules/MogoModulesHandler.java index a29dc98c19..4ed4e41e1e 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/cards/MogoModulesHandler.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/modules/MogoModulesHandler.java @@ -1,4 +1,4 @@ -package com.mogo.eagle.core.function.main.cards; +package com.mogo.eagle.core.function.main.modules; /** * @author congtaowang diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/cards/MogoModulesManager.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/modules/MogoModulesManager.java similarity index 99% rename from core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/cards/MogoModulesManager.java rename to core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/modules/MogoModulesManager.java index c62981d154..3ff0d9ef83 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/cards/MogoModulesManager.java +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/modules/MogoModulesManager.java @@ -1,4 +1,4 @@ -package com.mogo.eagle.core.function.main.cards; +package com.mogo.eagle.core.function.main.modules; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_HMI; diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/monitoring/VehicleMonitoring.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/monitoring/VehicleMonitoring.java deleted file mode 100644 index bca60eed1e..0000000000 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/monitoring/VehicleMonitoring.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.mogo.eagle.core.function.main.monitoring; - - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_HMI; - -import android.content.Context; -import android.os.Handler; -import android.os.Message; - -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; -import com.mogo.eagle.core.function.call.check.CallerCheckManager; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; - -/** - * @author liujing - * @description 车辆监控,暂时隐藏该功能 - * @since: 8/16/21 - */ -public class VehicleMonitoring implements Handler.Callback { - - private static final String TAG = "VehicleMonitoring"; - private final Context mContext; - private final Handler mHandler = new Handler(this); - //自动驾驶状态下**分钟间隔弹框提示一次 后期根据需求做修改,暂定30秒自检一次 - private static final long AUTO_CHECK_STATUS_DELAY = 30 * 1000; - //非自动驾驶测试数据 后期根据需求做修改 - private static final long MANUAL_CHECK_STATUS_DELAY = 30 * 1000; - //自动驾驶状态 - private static int AutopilotStatus = CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState(); - - public VehicleMonitoring(Context context) { - mContext = context; - } - - public void vehicleCheck() { - //暂时隐藏自检功能 - /** - * - if (AutopilotStatus == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { - CallerLogger.INSTANCE.d(M_HMI + TAG, "自动驾驶中..."); - mHandler.sendEmptyMessageDelayed(AutopilotStatus, AUTO_CHECK_STATUS_DELAY); - } else { - CallerLogger.INSTANCE.d(M_HMI + TAG, "非自动驾驶状态"); - //非自动驾驶状态只展示一次 - mHandler.sendEmptyMessageDelayed(AutopilotStatus, MANUAL_CHECK_STATUS_DELAY); - } - - */ - } - - @Override - public boolean handleMessage(Message msg) { -// AutopilotStatus = CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState(); -// switch (msg.what) { -// case IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING: -// vehicleMonitor(); -// mHandler.sendEmptyMessageDelayed(AutopilotStatus, AUTO_CHECK_STATUS_DELAY); -// return true; -// case IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE: -// case IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE: -// vehicleMonitor(); -// mHandler.sendEmptyMessageDelayed(AutopilotStatus, MANUAL_CHECK_STATUS_DELAY); -// return true; -// default: -// } - return false; - } - - public void vehicleMonitor() { - CallerLogger.INSTANCE.d(M_HMI + TAG, "vehicleMonitor"); - CallerCheckManager.checkMonitor(mContext); - } - -} diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/registercenter/MogoRegisterCenter.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/registercenter/MogoRegisterCenter.java deleted file mode 100644 index 81031ac66e..0000000000 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/registercenter/MogoRegisterCenter.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.mogo.eagle.core.function.main.registercenter; - -import android.content.Context; - -import com.alibaba.android.arouter.facade.annotation.Route; -import com.mogo.eagle.core.data.constants.MogoServicePaths; -import com.mogo.map.listener.IMogoMapListener; -import com.mogo.map.location.IMogoLocationListener; -import com.mogo.map.marker.IMogoMarkerClickListener; -import com.mogo.map.navi.IMogoCarLocationChangedListener; -import com.mogo.service.module.IMogoRegisterCenter; - -import java.util.Iterator; - -/** - * @author congtaowang - * @since 2020-01-09 - *

- * 描述 - */ -@Route(path = MogoServicePaths.PATH_REGISTER_CENTER) -public class MogoRegisterCenter implements IMogoRegisterCenter { - - @Override - public void registerMogoMapListener(String moduleName, IMogoMapListener listener) { - MogoRegisterCenterHandler.getInstance().registerMogoMapListener(moduleName, listener); - } - - @Override - public void unregisterMogoMapListener(String moduleName) { - MogoRegisterCenterHandler.getInstance().unregisterMogoMapListener(moduleName); - } - - @Override - public void registerMogoLocationListener(String moduleName, IMogoLocationListener listener) { - MogoRegisterCenterHandler.getInstance().registerMogoLocationListener(moduleName, listener); - } - - @Override - public Iterator getLocationListeners() { - return MogoRegisterCenterHandler.getInstance().getLocationListeners(); - } - - @Override - public void unregisterMogoLocationListener(String moduleName) { - MogoRegisterCenterHandler.getInstance().unregisterMogoLocationListener(moduleName); - } - - @Override - public void registerMogoMarkerClickListener(String moduleName, IMogoMarkerClickListener listener) { - MogoRegisterCenterHandler.getInstance().registerMogoMarkerClickListener(moduleName, listener); - } - - @Override - public void unregisterMogoMarkerClickListener(String moduleName) { - MogoRegisterCenterHandler.getInstance().unregisterMogoMarkerClickListener(moduleName); - } - - @Override - public void registerMogoStaticMarkerClickListener(String tag, IMogoMarkerClickListener listener) { - MogoRegisterCenterHandler.getInstance().registerMogoStaticMarkerClickListener(tag, listener); - } - - @Override - public void unregisterMogoStaticMarkerClickListener(String tag, IMogoMarkerClickListener listener ) { - MogoRegisterCenterHandler.getInstance().unregisterMogoStaticMarkerClickListener(tag, listener); - } - - @Override - public void registerCarLocationChangedListener(String tag, IMogoCarLocationChangedListener listener) { - MogoRegisterCenterHandler.getInstance().registerCarLocationChangedListener(tag, listener); - } - - @Override - public void unregisterCarLocationChangedListener(String tag, IMogoCarLocationChangedListener listener) { - MogoRegisterCenterHandler.getInstance().unregisterCarLocationChangedListener(tag, listener); - } - - @Override - public void init(Context context) { - } -} diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/registercenter/MogoRegisterCenterHandler.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/registercenter/MogoRegisterCenterHandler.java deleted file mode 100644 index 8d4e2f3975..0000000000 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/registercenter/MogoRegisterCenterHandler.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.mogo.eagle.core.function.main.registercenter; - -import android.content.Context; - -import com.mogo.map.listener.IMogoMapListener; -import com.mogo.map.location.IMogoLocationListener; -import com.mogo.map.marker.IMogoMarkerClickListener; -import com.mogo.map.navi.IMogoCarLocationChangedListener; -import com.mogo.service.module.IMogoRegisterCenter; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; - -/** - * @author congtaowang - * @since 2020-01-09 - *

- * 描述 - */ -public class MogoRegisterCenterHandler implements IMogoRegisterCenter { - - private static volatile MogoRegisterCenterHandler sInstance; - - private final Map mMap = new HashMap<>(); - private final Map mLocation = new HashMap<>(); - private final Map mMarker = new HashMap<>(); - private final Map> mStaticMarker = new HashMap<>(); - private final Map mCarLocations = new ConcurrentHashMap<>(); - - private MogoRegisterCenterHandler() { - } - - public static MogoRegisterCenterHandler getInstance() { - if (sInstance == null) { - synchronized (MogoRegisterCenterHandler.class) { - if (sInstance == null) { - sInstance = new MogoRegisterCenterHandler(); - } - } - } - return sInstance; - } - - public synchronized void release() { - sInstance = null; - } - - @Override - public void registerMogoMapListener(String tag, IMogoMapListener listener) { - mMap.put(tag, listener); - } - - @Override - public void unregisterMogoMapListener(String tag) { - mMap.remove(tag); - } - - @Override - public void registerMogoLocationListener(String tag, IMogoLocationListener listener) { - mLocation.put(tag, listener); - } - - @Override - public void unregisterMogoLocationListener(String tag) { - mLocation.remove(tag); - } - - @Override - public void registerMogoMarkerClickListener(String tag, IMogoMarkerClickListener listener) { - mMarker.put(tag, listener); - } - - @Override - public void unregisterMogoMarkerClickListener(String tag) { - mMarker.remove(tag); - } - - @Override - public void registerMogoStaticMarkerClickListener(String tag, IMogoMarkerClickListener listener) { - ArrayList list = mStaticMarker.get(tag); - if (list == null) { - list = new ArrayList<>(); - list.add(listener); - mStaticMarker.put(tag, list); - } - list.add(listener); - mStaticMarker.put(tag, list); - } - - @Override - public void unregisterMogoStaticMarkerClickListener(String tag, IMogoMarkerClickListener listener) { - ArrayList list = mStaticMarker.get(tag); - if (list == null) { - return; - } - list.remove(listener); - } - - @Override - public void registerCarLocationChangedListener(String tag, IMogoCarLocationChangedListener listener) { - mCarLocations.put(tag, listener); - } - - @Override - public void unregisterCarLocationChangedListener(String tag, IMogoCarLocationChangedListener listener) { - mCarLocations.remove(tag); - } - - @Override - public void init(Context context) { - } - - public IMogoMarkerClickListener getMarkerListener(String tag) { - return mMarker.get(tag); - } - - public ArrayList getStaticMarkerListener(String tag){ - return mStaticMarker.get(tag); - } - - public Iterator getMapListeners() { - return mMap.values().iterator(); - } - - @Override - public Iterator getLocationListeners() { - return mLocation.values().iterator(); - } - - public Iterator getCarLocationChangedListener() { - return mCarLocations.values().iterator(); - } - -} diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/service/MogoMainService.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/service/MogoMainService.java deleted file mode 100644 index 10b2268c27..0000000000 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/main/service/MogoMainService.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.mogo.eagle.core.function.main.service; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_HMI; - -import android.app.Service; -import android.content.Intent; -import android.os.IBinder; - -import androidx.annotation.Nullable; - -import com.alibaba.android.arouter.facade.annotation.Route; -import com.mogo.commons.AbsMogoApplication; -import com.mogo.eagle.core.data.config.HdMapBuildConfig; -import com.mogo.eagle.core.data.map.MogoLocation; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.function.main.EventDispatchCenter; -import com.mogo.eagle.core.function.main.cards.MogoModulesManager; -import com.mogo.eagle.core.function.main.monitoring.VehicleMonitoring; -import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; -import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.map.location.IMogoLocationClient; -import com.mogo.map.location.IMogoLocationListener; -import com.mogo.map.navi.MogoCarLocationChangedListenerRegister; - -public -/** - * @author congtaowang - * @since 2020/6/10 - * - * 描述 - */ -@Route(path = "/service/base/info") -class MogoMainService extends Service implements IMogoLocationListener { - - private static final String TAG = "MogoMainService"; - - /** - * 主模块管控定位,可以向各个模块发送统一定位信息 - */ - private IMogoLocationClient mLocationClient; - - @Override - public void onCreate() { - CallerLogger.INSTANCE.d(M_HMI + TAG, "基本服务启动"); - initAndStartLocation(); - UiThreadHandler.postDelayed(() -> { - CallerLogger.INSTANCE.d(M_HMI + TAG, "5秒已过,启动基础服务……"); - loadBaseModules(); - initGpsSimulatorListener(); - HdMapBuildConfig.isMapLoaded = true; - }, 5_000L - ); - // 车辆检测 - VehicleMonitoring monitoring = new VehicleMonitoring(this); - monitoring.vehicleCheck(); - } - - @Nullable - @Override - public IBinder onBind(Intent intent) { - return null; - } - - @Override - public int onStartCommand(Intent intent, int flags, int startId) { - return START_NOT_STICKY; - } - - private void initAndStartLocation() { - CallerLogger.INSTANCE.d(M_HMI + TAG, "开始定位"); - mLocationClient = CallerMapUIServiceManager.INSTANCE.getSingletonLocationClient(AbsMogoApplication.getApp()); - if (mLocationClient != null) { - mLocationClient.addLocationListener(this); - mLocationClient.start(2_000L); - } - } - - /** - * 初始化自车定位监听 - */ - private void initGpsSimulatorListener() { - CallerLogger.INSTANCE.d(M_HMI + TAG, "注册自车位置监听"); - MogoCarLocationChangedListenerRegister.getInstance().registerCarLocationChangedListener(EventDispatchCenter.getInstance()); - } - - private void loadBaseModules() { - CallerLogger.INSTANCE.d(M_HMI + TAG, "加载基本模块"); - MogoModulesManager.getInstance().loadBaseModule(); - } - - @Override - public void onLocationChanged(MogoLocation location) { - EventDispatchCenter.getInstance().onLocationChanged(location); - } - - @Override - public void onDestroy() { - super.onDestroy(); - if (mLocationClient != null) { - mLocationClient.removeLocationListener(this); - mLocationClient.stop(); - mLocationClient.destroy(); - mLocationClient = null; - } - } -} diff --git a/core/function-impl/mogo-core-function-map/build.gradle b/core/function-impl/mogo-core-function-map/build.gradle index 3151dde685..151a0660e6 100644 --- a/core/function-impl/mogo-core-function-map/build.gradle +++ b/core/function-impl/mogo-core-function-map/build.gradle @@ -69,28 +69,20 @@ dependencies { implementation rootProject.ext.dependencies.lifecycle_extension if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { - implementation rootProject.ext.dependencies.mogoserviceapi - implementation rootProject.ext.dependencies.mogo_core_res implementation rootProject.ext.dependencies.mogo_core_data implementation rootProject.ext.dependencies.mogo_core_utils - implementation rootProject.ext.dependencies.mogo_core_function_api implementation rootProject.ext.dependencies.mogo_core_function_call implementation rootProject.ext.dependencies.mogomap implementation rootProject.ext.dependencies.mogomapapi } else { - implementation project(':services:mogo-service-api') - implementation project(':foudations:mogo-commons') implementation project(':core:mogo-core-res') implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') - implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') - implementation project(":libraries:mogo-map") - implementation project(":libraries:mogo-map-api") } } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/impl/MogoMapService.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/impl/MogoMapService.java index 671ec4b65e..6ab37dbb77 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/impl/MogoMapService.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/impl/MogoMapService.java @@ -15,6 +15,8 @@ import com.mogo.map.MogoPoiSearch; import com.mogo.map.MogoTrafficSearch; import com.mogo.map.listener.IMogoHosListenerRegister; import com.mogo.map.listener.MogoHosListenerRegister; +import com.mogo.map.location.GDLocationClient; +import com.mogo.map.location.IMogoGDLocationClient; import com.mogo.map.location.IMogoLocationClient; import com.mogo.map.marker.IMogoMarkerManager; import com.mogo.map.overlay.IMogoOverlayManager; @@ -78,6 +80,11 @@ public class MogoMapService implements IMogoMapService { return new MogoTrafficSearch(); } + @Override + public IMogoGDLocationClient getGDLocationServer(Context context) { + return GDLocationClient.getInstance(context); + } + @Override public void init(Context context) { CallerVisualAngleManager.INSTANCE.init(context); diff --git a/core/function-impl/mogo-core-function-monitoring/build.gradle b/core/function-impl/mogo-core-function-monitoring/build.gradle index aba956f700..b73c52461d 100644 --- a/core/function-impl/mogo-core-function-monitoring/build.gradle +++ b/core/function-impl/mogo-core-function-monitoring/build.gradle @@ -55,13 +55,11 @@ dependencies { implementation rootProject.ext.dependencies.mogo_core_utils implementation rootProject.ext.dependencies.mogo_core_res implementation rootProject.ext.dependencies.mogo_core_data - implementation rootProject.ext.dependencies.mogo_core_function_api implementation rootProject.ext.dependencies.mogo_core_function_call } else { implementation project(':core:mogo-core-utils') implementation project(':core:mogo-core-res') implementation project(':core:mogo-core-data') - implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') implementation project(":foudations:mogo-commons") } diff --git a/core/function-impl/mogo-core-function-notice/build.gradle b/core/function-impl/mogo-core-function-notice/build.gradle index dba27c088e..eba9fec0ba 100644 --- a/core/function-impl/mogo-core-function-notice/build.gradle +++ b/core/function-impl/mogo-core-function-notice/build.gradle @@ -66,8 +66,6 @@ dependencies { if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { implementation rootProject.ext.dependencies.mogocommons - implementation rootProject.ext.dependencies.mogoserviceapi - implementation rootProject.ext.dependencies.mogo_core_data implementation rootProject.ext.dependencies.mogo_core_utils implementation rootProject.ext.dependencies.mogo_core_res @@ -75,8 +73,6 @@ dependencies { implementation rootProject.ext.dependencies.mogo_core_function_call } else { implementation project(":foudations:mogo-commons") - implementation project(':services:mogo-service-api') - implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') implementation project(':core:mogo-core-res') diff --git a/core/function-impl/mogo-core-function-obu-mogo/build.gradle b/core/function-impl/mogo-core-function-obu-mogo/build.gradle index 6e6159fc47..9bf311e83c 100644 --- a/core/function-impl/mogo-core-function-obu-mogo/build.gradle +++ b/core/function-impl/mogo-core-function-obu-mogo/build.gradle @@ -51,14 +51,9 @@ dependencies { kapt rootProject.ext.dependencies.aroutercompiler if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { - api rootProject.ext.dependencies.mogoserviceapi - implementation rootProject.ext.dependencies.mogo_core_data implementation rootProject.ext.dependencies.mogo_core_utils - implementation rootProject.ext.dependencies.mogo_core_function_call } else { - api project(':services:mogo-service-api') - implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') implementation project(':core:mogo-core-function-call') diff --git a/core/function-impl/mogo-core-function-v2x/build.gradle b/core/function-impl/mogo-core-function-v2x/build.gradle index ee22a219e5..5884122465 100644 --- a/core/function-impl/mogo-core-function-v2x/build.gradle +++ b/core/function-impl/mogo-core-function-v2x/build.gradle @@ -57,19 +57,15 @@ dependencies { implementation rootProject.ext.dependencies.mogocommons implementation rootProject.ext.dependencies.mogo_core_data implementation rootProject.ext.dependencies.mogo_core_utils - implementation rootProject.ext.dependencies.mogo_core_function_api implementation rootProject.ext.dependencies.mogo_core_function_call implementation rootProject.ext.dependencies.mogo_core_res } else { implementation project(":foudations:mogo-commons") implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') - implementation project(':core:mogo-core-function-api') implementation project(':core:mogo-core-function-call') implementation project(':core:mogo-core-res') implementation project(':libraries:mogo-adas') - implementation project(":libraries:mogo-map-api") - implementation project(":libraries:mogo-map") } } diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoPersonWarnPolylineManager.java b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoPersonWarnPolylineManager.java index 74bd1d5fa7..c8887b74a6 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoPersonWarnPolylineManager.java +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoPersonWarnPolylineManager.java @@ -5,14 +5,14 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_V2X import android.content.Context; import com.alibaba.android.arouter.facade.annotation.Route; +import com.mogo.commons.AbsMogoApplication; import com.mogo.eagle.core.data.map.MogoLatLng; +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.function.v2x.events.bridge.BridgeApi; import com.mogo.eagle.core.function.v2x.events.consts.MoGoV2XServicePaths; import com.mogo.eagle.core.function.v2x.events.consts.V2XConst; import com.mogo.eagle.core.function.v2x.events.entity.model.DrawLineInfo; import com.mogo.eagle.core.function.v2x.events.manager.IMoGoPersonWarnPolylineManager; -import com.mogo.map.MogoOverlayManager; import com.mogo.map.overlay.IMogoOverlayManager; import com.mogo.map.overlay.IMogoPolyline; import com.mogo.map.overlay.MogoPolylineOptions; @@ -55,7 +55,7 @@ public class MoGoPersonWarnPolylineManager implements IMoGoPersonWarnPolylineMan options.add(locations.get(i)); } // 绘制线的对象 - IMogoOverlayManager overlay = MogoOverlayManager.getInstance(); + IMogoOverlayManager overlay = CallerMapUIServiceManager.INSTANCE.getOverlayManager(AbsMogoApplication.getApp()); if (overlay != null) { mMogoPolyline = overlay.addPolyline(options); mMogoPolyline.setTransparency(0.5f); diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoStopPolylineManager.java b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoStopPolylineManager.java index 645b3bba52..7a50d4546c 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoStopPolylineManager.java +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoStopPolylineManager.java @@ -5,14 +5,14 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_V2X import android.content.Context; import com.alibaba.android.arouter.facade.annotation.Route; +import com.mogo.commons.AbsMogoApplication; import com.mogo.eagle.core.data.map.MogoLatLng; +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.function.v2x.events.bridge.BridgeApi; import com.mogo.eagle.core.function.v2x.events.consts.MoGoV2XServicePaths; import com.mogo.eagle.core.function.v2x.events.consts.V2XConst; import com.mogo.eagle.core.function.v2x.events.entity.model.DrawLineInfo; import com.mogo.eagle.core.function.v2x.events.manager.IMoGoStopPolylineManager; -import com.mogo.map.MogoOverlayManager; import com.mogo.map.overlay.IMogoOverlayManager; import com.mogo.map.overlay.IMogoPolyline; import com.mogo.map.overlay.MogoPolylineOptions; @@ -54,7 +54,7 @@ public class MoGoStopPolylineManager implements IMoGoStopPolylineManager { options.add(locations.get(i)); } // 绘制线的对象 - IMogoOverlayManager overlay = MogoOverlayManager.getInstance(); + IMogoOverlayManager overlay = CallerMapUIServiceManager.INSTANCE.getOverlayManager(AbsMogoApplication.getApp()); if (overlay != null) { mMogoPolyline = overlay.addPolyline(options); } diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoV2XMarkerManager.java b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoV2XMarkerManager.java index 83ed3ee04d..4394184df3 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoV2XMarkerManager.java +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoV2XMarkerManager.java @@ -27,7 +27,6 @@ import com.mogo.eagle.core.function.v2x.events.marker.V2XMarkerAdapter; import com.mogo.eagle.core.function.v2x.events.utils.EntityUtilsKt; import com.mogo.eagle.core.function.v2x.events.utils.MapUtils; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.map.MogoMarkerManager; import com.mogo.map.marker.IMogoMarker; import com.mogo.map.marker.IMogoMarkerClickListener; import com.mogo.map.marker.IMogoMarkerManager; @@ -164,7 +163,7 @@ public class MoGoV2XMarkerManager implements IMoGoV2XMarkerManager { mAlarmInfoMarker = Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMarkerService()).drawMarker(markerShowEntity); } else { optionsRipple.icon(V2XMarkerAdapter.getV2XRoadEventViewPng(context, roadEventEntity)); - IMogoMarkerManager marker = MogoMarkerManager.getInstance(context); + IMogoMarkerManager marker = CallerMapUIServiceManager.INSTANCE.getMarkerManager(context); if (marker != null) { mAlarmInfoMarker = marker.addMarker(V2X_EVENT_ALARM_POI, optionsRipple); } @@ -210,7 +209,7 @@ public class MoGoV2XMarkerManager implements IMoGoV2XMarkerManager { @Override public void clearALLPOI() { try { - IMogoMarkerManager markerManager = MogoMarkerManager.getInstance(AbsMogoApplication.getApp()); + IMogoMarkerManager markerManager = CallerMapUIServiceManager.INSTANCE.getMarkerManager(AbsMogoApplication.getApp()); if (markerManager != null) { markerManager.removeMarkers(); } diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoWarnPolylineManager.java b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoWarnPolylineManager.java index d3e3cf2c1c..285abcb128 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoWarnPolylineManager.java +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/manager/impl/MoGoWarnPolylineManager.java @@ -5,13 +5,13 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_V2X import android.content.Context; import com.alibaba.android.arouter.facade.annotation.Route; +import com.mogo.commons.AbsMogoApplication; import com.mogo.eagle.core.data.map.MogoLatLng; +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.function.v2x.events.bridge.BridgeApi; import com.mogo.eagle.core.function.v2x.events.consts.MoGoV2XServicePaths; import com.mogo.eagle.core.function.v2x.events.entity.model.DrawLineInfo; import com.mogo.eagle.core.function.v2x.events.manager.IMoGoWarnPolylineManager; -import com.mogo.map.MogoOverlayManager; import com.mogo.map.overlay.IMogoOverlayManager; import com.mogo.map.overlay.IMogoPolyline; import com.mogo.map.overlay.MogoPolylineOptions; @@ -62,7 +62,7 @@ public class MoGoWarnPolylineManager implements IMoGoWarnPolylineManager { } // 绘制线的对象 - IMogoOverlayManager overlay = MogoOverlayManager.getInstance(); + IMogoOverlayManager overlay = CallerMapUIServiceManager.INSTANCE.getOverlayManager(AbsMogoApplication.getApp()); if (overlay != null) { mMogoPolyline = overlay.addPolyline(options); } diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/overlay/V2XOptimalRouteOverlay.java b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/overlay/V2XOptimalRouteOverlay.java index 6bf879689e..47f35b5e86 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/overlay/V2XOptimalRouteOverlay.java +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/overlay/V2XOptimalRouteOverlay.java @@ -1,11 +1,11 @@ package com.mogo.eagle.core.function.v2x.events.overlay; +import com.mogo.commons.AbsMogoApplication; import com.mogo.eagle.core.data.map.MogoLatLng; import com.mogo.eagle.core.data.map.MogoLocation; -import com.mogo.eagle.core.function.v2x.events.bridge.BridgeApi; +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.function.v2x.events.utils.LocationUtils; import com.mogo.eagle.core.utilcode.util.ColorUtils; -import com.mogo.map.MogoOverlayManager; import com.mogo.map.overlay.IMogoOverlayManager; import com.mogo.map.overlay.IMogoPolyline; import com.mogo.map.overlay.MogoPolylineOptions; @@ -66,7 +66,7 @@ public class V2XOptimalRouteOverlay { // 线条粗细,渐变,渐变色值 mPolylineOptions.width(25).useGradient(true).colorValues(mPolylineColors); // 绘制线 - IMogoOverlayManager overlay = MogoOverlayManager.getInstance(); + IMogoOverlayManager overlay = CallerMapUIServiceManager.INSTANCE.getOverlayManager(AbsMogoApplication.getApp()); if (overlay != null) { mMoGoPolyline = overlay.addPolyline(mPolylineOptions); } diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/impl/V2XScenarioManager.java b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/impl/V2XScenarioManager.java index a5addc16c7..148f2dfa0d 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/impl/V2XScenarioManager.java +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/impl/V2XScenarioManager.java @@ -9,6 +9,7 @@ import androidx.localbroadcastmanager.content.LocalBroadcastManager; import com.mogo.commons.module.status.MogoStatusManager; import com.mogo.eagle.core.data.config.HmiBuildConfig; import com.mogo.eagle.core.data.map.entity.V2XMessageEntity; +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.function.v2x.events.consts.V2XConst; import com.mogo.eagle.core.function.v2x.events.scenario.IV2XScenarioManager; import com.mogo.eagle.core.function.v2x.events.scenario.scene.road.V2XRoadEventScenario; @@ -17,7 +18,6 @@ import com.mogo.eagle.core.function.v2x.events.scenario.scene.warning.V2XFrontWa import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.ThreadUtils; import com.mogo.eagle.core.utilcode.util.Utils; -import com.mogo.map.MogoMapUIController; import com.mogo.map.uicontroller.IMogoMapUIController; import com.mogo.map.uicontroller.VisualAngleMode; @@ -105,7 +105,7 @@ public class V2XScenarioManager implements IV2XScenarioManager { * 道路事件触发后,切换到中景 */ private void sceneChange() { - IMogoMapUIController mapUiController = MogoMapUIController.getInstance(); + IMogoMapUIController mapUiController = CallerMapUIServiceManager.INSTANCE.getMapUIController(); if (mapUiController != null && mapUiController.getCurrentMapVisualAngle() != VisualAngleMode.MODE_MEDIUM_SIGHT) { mapUiController.changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null); } diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/airoad/AiRoadMarker.kt b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/airoad/AiRoadMarker.kt index 00ba9faf9e..38ff5c2452 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/airoad/AiRoadMarker.kt +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/airoad/AiRoadMarker.kt @@ -10,6 +10,7 @@ import androidx.lifecycle.* import androidx.lifecycle.Lifecycle.Event import androidx.lifecycle.Lifecycle.Event.ON_CREATE import androidx.lifecycle.Lifecycle.Event.ON_DESTROY +import com.mogo.commons.AbsMogoApplication import com.mogo.eagle.core.data.map.* import com.mogo.eagle.core.data.map.MapRoadInfo.StopLine import com.mogo.eagle.core.data.map.entity.V2XRoadEventEntity @@ -47,7 +48,7 @@ object AiRoadMarker { private val carLocation by lazy { AtomicReference>() } - private val overlayManager by lazy { MogoOverlayManager.getInstance() } + private val overlayManager by lazy { CallerMapUIServiceManager.getOverlayManager(AbsMogoApplication.getApp()) } private val line by lazy { AtomicReference() } @@ -300,7 +301,7 @@ object AiRoadMarker { options.colorValues(colors) Logger.d(TAG, "--- marker --- 7 --- points: ${points.size}") if (line == null || line.isDestroyed) { - val l = overlayManager.addPolyline(options) + val l = overlayManager?.addPolyline(options) this.line.set(l) line = l } else { diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/road/V2XAiRoadEventMarker.kt b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/road/V2XAiRoadEventMarker.kt index 47168bfb36..706abccbb8 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/road/V2XAiRoadEventMarker.kt +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/road/V2XAiRoadEventMarker.kt @@ -3,13 +3,15 @@ package com.mogo.eagle.core.function.v2x.events.scenario.scene.road import android.graphics.* import android.util.* import com.mogo.cloud.commons.utils.* +import com.mogo.commons.AbsMogoApplication import com.mogo.eagle.core.data.map.* import com.mogo.eagle.core.data.map.entity.V2XRoadEventEntity +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager +import com.mogo.eagle.core.function.v2x.R import com.mogo.eagle.core.function.v2x.events.bridge.BridgeApi.context import com.mogo.eagle.core.function.v2x.events.bridge.BridgeApi.v2xMarker import com.mogo.eagle.core.utilcode.util.DrivingDirectionUtils import com.mogo.map.* -import com.mogo.map.R.raw import com.mogo.map.marker.* import com.mogo.map.overlay.* import java.util.* @@ -31,7 +33,7 @@ object V2XAiRoadEventMarker { private val distance = AtomicInteger(0) - private val overlayManager by lazy { MogoOverlayManager.getInstance() } + private val overlayManager by lazy { CallerMapUIServiceManager.getOverlayManager(AbsMogoApplication.getApp()) } fun drawMarkers(entity: V2XRoadEventEntity): Pair?>? { removeMarkers(current.get()) @@ -61,10 +63,12 @@ object V2XAiRoadEventMarker { val p = polygons[i] val options = MogoMarkerOptions().data(entity).latitude(p.second).longitude(p.first) options.anchor(0.5f, 0.5f) - options.icon3DRes(raw.sanjiaozhui) + options.icon3DRes(R.raw.sanjiaozhui) try { - val marker = MogoMarkerManager.getInstance(context()).addMarker("road_pyramid_" + entity.getPoiType(), options) - markers += marker + val marker = CallerMapUIServiceManager.getMarkerManager(AbsMogoApplication.getApp())?.addMarker("road_pyramid_" + entity.poiType, options) + marker?.let { + markers += it + } } catch (t: Throwable) { t.printStackTrace() } @@ -87,14 +91,14 @@ object V2XAiRoadEventMarker { if (points.size > 2) { points.add(points[0]) } - options.points(points); + options.points(points) options.useGradient(true) options.useFacade(true) options.setGps(false) options.width(5f) options.zIndex(75000f) options.maxIndex(800000f) - val line = overlayManager.addPolyline(options) + val line = overlayManager?.addPolyline(options) current.set(Pair(line, markers)) if (line != null) { line.isVisible = true diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/warning/V2XWarningMarker.java b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/warning/V2XWarningMarker.java index 934749b42e..f4ad336bd6 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/warning/V2XWarningMarker.java +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/scenario/scene/warning/V2XWarningMarker.java @@ -21,7 +21,6 @@ import com.mogo.eagle.core.function.v2x.events.scenario.view.IV2XMarker; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.mogo.thread.WorkThreadHandler; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.map.MogoMarkerManager; import com.mogo.map.marker.IMogoMarkerManager; import com.mogo.map.overlay.IMogoPolyline; import com.mogo.commons.utils.Trigonometric; @@ -97,7 +96,7 @@ public class V2XWarningMarker implements IV2XMarker { } else { } //二轮车和行人的渲染和移动 - IMogoMarkerManager marker = MogoMarkerManager.getInstance(AbsMogoApplication.getApp()); + IMogoMarkerManager marker = CallerMapUIServiceManager.INSTANCE.getMarkerManager(AbsMogoApplication.getApp()); if (marker != null) { marker.removeMarkers(TYPE_MARKER_CLOUD_WARN_DATA); } @@ -218,7 +217,7 @@ public class V2XWarningMarker implements IV2XMarker { stopPolyLineManager.clearLine(); } - IMogoMarkerManager marker = MogoMarkerManager.getInstance(AbsMogoApplication.getApp()); + IMogoMarkerManager marker = CallerMapUIServiceManager.INSTANCE.getMarkerManager(AbsMogoApplication.getApp()); if (marker != null) { //清除小箭头 marker.removeMarkers(WARNING_ARROWS); @@ -267,7 +266,7 @@ public class V2XWarningMarker implements IV2XMarker { private void handleStopLine() { try { if (mCloundWarningInfo != null) { - IMogoMarkerManager marker = MogoMarkerManager.getInstance(AbsMogoApplication.getApp()); + IMogoMarkerManager marker = CallerMapUIServiceManager.INSTANCE.getMarkerManager(AbsMogoApplication.getApp()); if (marker != null) { marker.removeMarkers(TYPE_MARKER_CLOUD_STOP_LINE_DATA); } @@ -448,7 +447,7 @@ public class V2XWarningMarker implements IV2XMarker { @Override public void clearPOI() { - IMogoMarkerManager marker = MogoMarkerManager.getInstance(AbsMogoApplication.getApp()); + IMogoMarkerManager marker = CallerMapUIServiceManager.INSTANCE.getMarkerManager(AbsMogoApplication.getApp()); if (marker != null) { marker.removeMarkers(V2X_FRONT_WARNING_MARKER); } diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/view/CarZegoLiveVideoView.java b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/view/CarZegoLiveVideoView.java index da71a17e9f..c1906b7954 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/view/CarZegoLiveVideoView.java +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/view/CarZegoLiveVideoView.java @@ -15,18 +15,16 @@ import androidx.constraintlayout.widget.ConstraintLayout; import androidx.core.content.ContextCompat; import com.mogo.cloud.trafficlive.api.ITrafficCarLiveCallBack; import com.mogo.cloud.trafficlive.api.MoGoAiCloudTrafficLive; -import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.voice.AIAssist; import com.mogo.eagle.core.data.map.MogoLocation; +import com.mogo.eagle.core.function.call.map.CallerMapLocationListenerManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.function.v2x.R; -import com.mogo.eagle.core.function.v2x.events.bridge.BridgeApi; import com.mogo.eagle.core.function.v2x.events.voice.V2XVoiceCallbackListener; import com.mogo.eagle.core.function.v2x.events.voice.V2XVoiceConstants; import com.mogo.eagle.core.function.v2x.events.voice.V2XVoiceManager; import com.mogo.eagle.core.utilcode.util.Utils; import com.mogo.eagle.core.widget.RoundLayout; -import com.mogo.map.MogoLocationClient; import com.mogo.map.location.IMogoLocationClient; /** @@ -99,12 +97,7 @@ public class CarZegoLiveVideoView extends RoundLayout { */ private void playLiveVideo() { if (mSurfaceView != null) { - IMogoLocationClient locationClient = MogoLocationClient.getInstance(getContext()); - MogoLocation mogoLocation = null; - if (locationClient != null) { - mogoLocation = locationClient.getLastKnowLocation(); - } - + MogoLocation mogoLocation = CallerMapLocationListenerManager.INSTANCE.getCurrentLocation(); if (mogoLocation != null) { MoGoAiCloudTrafficLive.viewFrontVehicleLive(mogoLocation.getLatitude(), mogoLocation.getLongitude(), ((int) mogoLocation.getBearing()), mSurfaceView, new ITrafficCarLiveCallBack() { @Override diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/view/V2XCrossRoadVideoView.java b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/view/V2XCrossRoadVideoView.java index 7a77aa786c..8f9c8a2494 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/view/V2XCrossRoadVideoView.java +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/events/view/V2XCrossRoadVideoView.java @@ -3,6 +3,7 @@ package com.mogo.eagle.core.function.v2x.events.view; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_V2X; import static com.mogo.eagle.core.widget.media.video.SimpleVideoPlayer.PLAY_EVT_PLAY_BEGIN; import static com.mogo.eagle.core.widget.media.video.SimpleVideoPlayer.PLAY_EVT_PLAY_LOADING; + import android.content.Context; import android.content.Intent; import android.graphics.PorterDuff; @@ -20,17 +21,15 @@ import com.mogo.cloud.trafficlive.api.MoGoAiCloudTrafficLive; import com.mogo.commons.voice.AIAssist; import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.data.map.entity.MarkerCarInfo; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; +import com.mogo.eagle.core.function.call.map.CallerMapLocationListenerManager; import com.mogo.eagle.core.function.v2x.R; -import com.mogo.eagle.core.function.v2x.events.bridge.BridgeApi; import com.mogo.eagle.core.function.v2x.events.voice.V2XVoiceCallbackListener; import com.mogo.eagle.core.function.v2x.events.voice.V2XVoiceConstants; import com.mogo.eagle.core.function.v2x.events.voice.V2XVoiceManager; +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.Utils; import com.mogo.eagle.core.widget.RoundLayout; import com.mogo.eagle.core.widget.media.video.SimpleVideoPlayer; -import com.mogo.map.MogoLocationClient; -import com.mogo.map.location.IMogoLocationClient; import com.shuyu.gsyvideoplayer.GSYVideoManager; import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder; import com.shuyu.gsyvideoplayer.cache.CacheFactory; @@ -164,31 +163,28 @@ public class V2XCrossRoadVideoView extends RoundLayout { } //重新获取直播流地址 else { - IMogoLocationClient iMogoLocationClient = MogoLocationClient.getInstance(getContext()); - if (iMogoLocationClient != null) { - MogoLocation mogoLocation = iMogoLocationClient.getLastKnowLocation(); - if (mogoLocation == null) { - return; - } - MoGoAiCloudTrafficLive.viewFrontIntersectionLive(mogoLocation.getLatitude(), mogoLocation.getLongitude(), ((int) mogoLocation.getBearing()), new ITrafficIntersectionLiveCallBack() { - @Override - public void liveUrlResult(String liveUrl) { - if (!TextUtils.isEmpty(liveUrl)) { - MarkerCarInfo.CarLiveInfo carLiveInfo = new MarkerCarInfo.CarLiveInfo(); - carLiveInfo.setVideoUrl(liveUrl); - setCarLiveInfo(carLiveInfo); - playLiveVideo(carLiveInfo); - } else { - CallerLogger.INSTANCE.d(M_V2X + TAG, "startLive 路口实况直播地址为空"); - } - } - - @Override - public void onError(String errorMsg) { - CallerLogger.INSTANCE.d(M_V2X + TAG, "获取路口实况失败"); - } - }); + MogoLocation mogoLocation = CallerMapLocationListenerManager.INSTANCE.getCurrentLocation(); + if (mogoLocation == null) { + return; } + MoGoAiCloudTrafficLive.viewFrontIntersectionLive(mogoLocation.getLatitude(), mogoLocation.getLongitude(), ((int) mogoLocation.getBearing()), new ITrafficIntersectionLiveCallBack() { + @Override + public void liveUrlResult(String liveUrl) { + if (!TextUtils.isEmpty(liveUrl)) { + MarkerCarInfo.CarLiveInfo carLiveInfo = new MarkerCarInfo.CarLiveInfo(); + carLiveInfo.setVideoUrl(liveUrl); + setCarLiveInfo(carLiveInfo); + playLiveVideo(carLiveInfo); + } else { + CallerLogger.INSTANCE.d(M_V2X + TAG, "startLive 路口实况直播地址为空"); + } + } + + @Override + public void onError(String errorMsg) { + CallerLogger.INSTANCE.d(M_V2X + TAG, "获取路口实况失败"); + } + }); } } } diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/speedlimit/SpeedLimitDataManager.java b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/speedlimit/SpeedLimitDataManager.java index d683cebdbd..02904b4391 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/speedlimit/SpeedLimitDataManager.java +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/speedlimit/SpeedLimitDataManager.java @@ -10,9 +10,9 @@ import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.map.listener.IMoGoMapLocationListener; import com.mogo.eagle.core.function.call.hmi.CallerHmiManager; import com.mogo.eagle.core.function.call.map.CallerMapLocationListenerManager; +import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; import com.mogo.eagle.core.function.call.v2x.CallLimitingVelocityListenerManager; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.map.MogoMapUIController; import com.zhjt.service_biz.BizConfig; import java.util.Timer; @@ -52,7 +52,7 @@ public class SpeedLimitDataManager implements IMoGoMapLocationListener { @Override public void run() { if (mLocation != null) { - if (MogoMapUIController.getInstance() != null) { + if(CallerMapUIServiceManager.INSTANCE.getMapUIController()!=null){ getSpeedLimit(); } } @@ -61,7 +61,7 @@ public class SpeedLimitDataManager implements IMoGoMapLocationListener { @BizConfig(biz = V2I, dependentBizNode = "", bizNode = BIZ_SLW) private void getSpeedLimit() { if (!isShowObuLimitSpeedView) { - int speedLimit = MogoMapUIController.getInstance().getLimitSpeed(mLocation.getLongitude(), mLocation.getLatitude(), mLocation.getBearing()); + int speedLimit = CallerMapUIServiceManager.INSTANCE.getMapUIController().getLimitSpeed(mLocation.getLongitude(), mLocation.getLatitude(), mLocation.getBearing()); UiThreadHandler.post(() -> { if (speedLimit > 0) { CallerHmiManager.INSTANCE.showLimitingVelocity(speedLimit); diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/constants/MogoServicePaths.java b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/constants/MogoServicePaths.java index 6c73c7205e..da480f56df 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/constants/MogoServicePaths.java +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/constants/MogoServicePaths.java @@ -37,13 +37,6 @@ public class MogoServicePaths { @Deprecated public static final String PATH_VOICE_MANAGER = "/voicemanager/api"; - /** - * 基础功能监听回调注册 - */ - @Keep - @Deprecated - public static final String PATH_REGISTER_CENTER = "/registercenter/api"; - /** * 自研地图和高德地图切换 */ diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/IMogoMapService.java b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/IMogoMapService.java index f677a42147..f1644e567f 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/IMogoMapService.java +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/map/IMogoMapService.java @@ -5,6 +5,7 @@ import android.content.Context; import com.alibaba.android.arouter.facade.template.IProvider; import com.mogo.eagle.core.function.api.map.marker.IMogoMarkerService; import com.mogo.map.listener.IMogoHosListenerRegister; +import com.mogo.map.location.IMogoGDLocationClient; import com.mogo.map.location.IMogoLocationClient; import com.mogo.map.marker.IMogoMarkerManager; import com.mogo.map.overlay.IMogoOverlayManager; @@ -90,4 +91,10 @@ public interface IMogoMapService extends IProvider { */ IMogoTrafficSearch getTrafficSearchApi(); + /** + * 获取高德定位服务 + * @return + */ + IMogoGDLocationClient getGDLocationServer(Context context); + } diff --git a/core/mogo-core-function-call/build.gradle b/core/mogo-core-function-call/build.gradle index 621360e062..22a7f5270f 100644 --- a/core/mogo-core-function-call/build.gradle +++ b/core/mogo-core-function-call/build.gradle @@ -55,16 +55,14 @@ dependencies { if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { implementation rootProject.ext.dependencies.mogo_core_data implementation rootProject.ext.dependencies.mogo_core_utils - implementation rootProject.ext.dependencies.mogo_core_function_api - implementation rootProject.ext.dependencies.mogoserviceapi implementation rootProject.ext.dependencies.mogocommons } else { implementation project(':libraries:mogo-adas') + api project(':libraries:mogo-map-api') + implementation project(':foudations:mogo-commons') implementation project(':core:mogo-core-data') implementation project(':core:mogo-core-utils') - implementation project(':core:mogo-core-function-api') - implementation project(':services:mogo-service-api') - implementation project(':foudations:mogo-commons') + api project(':core:mogo-core-function-api') } } diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapUIServiceManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapUIServiceManager.kt index 2c2698f641..050d9de8e7 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapUIServiceManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerMapUIServiceManager.kt @@ -5,10 +5,10 @@ import com.mogo.eagle.core.data.constants.MogoServicePaths import com.mogo.eagle.core.function.api.map.IMogoMapService import com.mogo.eagle.core.function.api.map.marker.IMogoMarkerService import com.mogo.eagle.core.function.call.base.CallerBase -import com.mogo.map.listener.IMogoHosListenerRegister +import com.mogo.map.location.IMogoGDLocationClient import com.mogo.map.location.IMogoLocationClient import com.mogo.map.marker.IMogoMarkerManager -import com.mogo.map.search.geo.IMogoGeoSearch +import com.mogo.map.overlay.IMogoOverlayManager import com.mogo.map.uicontroller.IMogoMapUIController object CallerMapUIServiceManager { @@ -23,18 +23,10 @@ object CallerMapUIServiceManager { return serviceProvider?.mapUIController } - fun getHostListenerRegister(): IMogoHosListenerRegister? { - return serviceProvider?.hostListenerRegister - } - fun getSingletonLocationClient(context: Context): IMogoLocationClient? { return serviceProvider?.getSingletonLocationClient(context) } - fun getGeoSearch(context: Context): IMogoGeoSearch? { - return serviceProvider?.getGeoSearch(context) - } - fun getMarkerManager(context: Context): IMogoMarkerManager? { return serviceProvider?.getMarkerManager(context) } @@ -42,4 +34,12 @@ object CallerMapUIServiceManager { fun getMarkerService(): IMogoMarkerService? { return serviceProvider?.markerService } + + fun getOverlayManager(context: Context): IMogoOverlayManager?{ + return serviceProvider?.getOverlayManager(context) + } + + fun getGDLocationServer(context: Context):IMogoGDLocationClient?{ + return serviceProvider?.getGDLocationServer(context) + } } \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 61ca2879cb..d44611a1f6 100644 --- a/gradle.properties +++ b/gradle.properties @@ -63,7 +63,7 @@ BIZCONFIG_VERSION=1.3.2 SERVICE_BIZ_VERSION=1.2.4 ################ 外部依赖引用 ################ # loglib -LOGLIB_VERSION=1.5.8 +LOGLIB_VERSION=1.5.10 ######## MogoAiCloudSDK Version ######## # 网络请求LOGLIB_VERSION MOGO_NETWORK_VERSION=1.4.3.27 diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/IMogoMap.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/IMogoMap.java index baec754e0c..76729f44a7 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/IMogoMap.java +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/IMogoMap.java @@ -44,7 +44,6 @@ public interface IMogoMap { */ IMogoMarker addMarker( String tag, MogoMarkerOptions options ); - /** * 批量更新锚点位置 * diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/location/IMogoGDLocationClient.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/location/IMogoGDLocationClient.java new file mode 100644 index 0000000000..247da8c29a --- /dev/null +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/location/IMogoGDLocationClient.java @@ -0,0 +1,20 @@ +package com.mogo.map.location; + +public interface IMogoGDLocationClient { + + /** + * 开始定位 + */ + void start(); + + /** + * 停止定位 + */ + void stop(); + + /** + * 获取cityCode + */ + String getLastCityCode(); + +} diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/IMogoCarLocationChangedListener.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/IMogoCarLocationChangedListener.java deleted file mode 100644 index 4ce184a68b..0000000000 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/IMogoCarLocationChangedListener.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.mogo.map.navi; - - -/** - * @author congtaowang - * @since 2020-03-14 - *

- * 车辆位置变化 - */ -public interface IMogoCarLocationChangedListener { - -} diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/IMogoCarLocationChangedListener2.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/IMogoCarLocationChangedListener2.java deleted file mode 100644 index fe2bf33422..0000000000 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/IMogoCarLocationChangedListener2.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.mogo.map.navi; - -import android.location.Location; - -/** - * @author congtaowang - * @since 2020-03-14 - *

- * 车辆位置变化 - */ -public interface IMogoCarLocationChangedListener2 extends IMogoCarLocationChangedListener { - - void onCarLocationChanged2( Location latLng ); -} diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/IMogoCarLocationChangedListenerRegister.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/IMogoCarLocationChangedListenerRegister.java deleted file mode 100644 index 58dc1cbada..0000000000 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/IMogoCarLocationChangedListenerRegister.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.mogo.map.navi; - -public -/** - * @author congtaowang - * @since 2020/10/23 - * - * 描述 - */ -interface IMogoCarLocationChangedListenerRegister { - - /** - * 注册车辆位置变化监听,非业务使用 - * - * @param listener - */ - void registerCarLocationChangedListener( IMogoCarLocationChangedListener2 listener ); -} diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/MogoCarLocationChangedListenerRegister.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/MogoCarLocationChangedListenerRegister.java deleted file mode 100644 index baa3b2f579..0000000000 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/navi/MogoCarLocationChangedListenerRegister.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.mogo.map.navi; - -public -/** - * @author congtaowang - * @since 2020/10/23 - * - * 描述 - */ -class MogoCarLocationChangedListenerRegister implements IMogoCarLocationChangedListenerRegister { - - private static volatile MogoCarLocationChangedListenerRegister sInstance; - private IMogoCarLocationChangedListener2 listener; - - private MogoCarLocationChangedListenerRegister(){} - - public static MogoCarLocationChangedListenerRegister getInstance(){ - if( sInstance == null ){ - synchronized( MogoCarLocationChangedListenerRegister.class ) { - if( sInstance == null ){ - sInstance = new MogoCarLocationChangedListenerRegister(); - } - } - } - return sInstance; - } - - public synchronized void release(){ - sInstance = null; - } - - private Object readResolve() { - // 阻止反序列化,必须实现 Serializable 接口 - return sInstance; - } - - /** - * 注册车辆位置变化监听,非业务使用 - * - * @param listener - */ - @Override - public void registerCarLocationChangedListener( IMogoCarLocationChangedListener2 listener ) { - this.listener = listener; - } - - public IMogoCarLocationChangedListener2 getListener() { - return listener; - } -} diff --git a/libraries/mogo-map/build.gradle b/libraries/mogo-map/build.gradle index de2755fc0f..d3adcc32cb 100644 --- a/libraries/mogo-map/build.gradle +++ b/libraries/mogo-map/build.gradle @@ -65,7 +65,7 @@ dependencies { implementation project(':foudations:mogo-commons') implementation project(':core:mogo-core-data') - implementation project(':core:mogo-core-function-call') + implementation project(':core:mogo-core-function-call') //todo 解除依赖 } } diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java b/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java index b0ad9ef30d..1a626b9c75 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/AMapViewWrapper.java @@ -46,7 +46,6 @@ import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; import com.mogo.eagle.core.utilcode.mogo.toast.TipToast; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.map.listener.MogoMapListenerHandler; -import com.mogo.map.navi.MogoCarLocationChangedListenerRegister; import com.mogo.map.uicontroller.CarCursorOption; import com.mogo.map.uicontroller.EnumMapUI; import com.mogo.map.uicontroller.IMogoMapUIController; @@ -330,9 +329,9 @@ public class AMapViewWrapper implements IMogoMapView, CallerLogger.INSTANCE.d(M_MAP + TAG, "map onDestroy"); } - if (mLocationTask != null) { - mainHandler.removeCallbacks(mLocationTask); - } +// if (mLocationTask != null) { +// mainHandler.removeCallbacks(mLocationTask); +// } } @Override @@ -706,40 +705,40 @@ public class AMapViewWrapper implements IMogoMapView, CallerMapDevaListenerManager.INSTANCE.invokeUploadLogFile(filePath); } - private static class LocationTask implements Runnable { +// private static class LocationTask implements Runnable { +// +// private MogoLocation location; +// +// public void setMoGoLocation(MogoLocation location) { +// this.location = location; +// } +// +// @Override +// public void run() { +// if (location != null) { +// CallerMapLocationListenerManager.INSTANCE.invokeMapLocationChangeListener(location, 1, false); +// location = null; +// } +// } +// } - private MogoLocation location; +// private volatile LocationTask mLocationTask; - public void setMoGoLocation(MogoLocation location) { - this.location = location; - } - - @Override - public void run() { - if (location != null) { - CallerMapLocationListenerManager.INSTANCE.invokeMapLocationChangeListener(location, 1, false); - location = null; - } - } - } - - private volatile LocationTask mLocationTask; - - private final Handler mainHandler = new Handler(Looper.getMainLooper()); +// private final Handler mainHandler = new Handler(Looper.getMainLooper()); @Override public void onLocationChanged(@NotNull com.zhidaoauto.map.sdk.open.location.MogoLocation location) { - MogoLocation currentLocation = ObjectUtils.fromLocation(location); - if (Looper.myLooper() == Looper.getMainLooper()) { - CallerMapLocationListenerManager.INSTANCE.invokeMapLocationChangeListener(currentLocation, 1, false); - } else { - if (mLocationTask == null) { - mLocationTask = new LocationTask(); - } - mLocationTask.setMoGoLocation(currentLocation); - mainHandler.removeCallbacks(mLocationTask); - mainHandler.post(mLocationTask); - } +// MogoLocation currentLocation = ObjectUtils.fromLocation(location); +// if (Looper.myLooper() == Looper.getMainLooper()) { +// CallerMapLocationListenerManager.INSTANCE.invokeMapLocationChangeListener(currentLocation, 1, false); +// } else { +// if (mLocationTask == null) { +// mLocationTask = new LocationTask(); +// } +// mLocationTask.setMoGoLocation(currentLocation); +// mainHandler.removeCallbacks(mLocationTask); +// mainHandler.post(mLocationTask); +// } // 将有效经纬度暂存本地,提供给下一次的Http-DNS使用,防止首次请求位置获取不到 if (location.getLat() > 0 && location.getLon() > 0) { @@ -753,20 +752,20 @@ public class AMapViewWrapper implements IMogoMapView, .putString(SharedPrefsConstants.LOCATION_LONGITUDE, String.valueOf(location.getLon())); } - // 同步给各个模块 - Location sysLocation = new Location(location.getProvider()); - sysLocation.setAltitude(location.getAltitude()); - sysLocation.setLatitude(location.getLat()); - sysLocation.setLongitude(location.getLon()); - sysLocation.setProvider(location.getProvider()); - sysLocation.setAccuracy(location.getAcceleration()); - sysLocation.setTime(location.duration); - sysLocation.setBearing((float) location.getHeading()); - sysLocation.setSpeed(location.getSpeed()); +// // 同步给各个模块 +// Location sysLocation = new Location(location.getProvider()); +// sysLocation.setAltitude(location.getAltitude()); +// sysLocation.setLatitude(location.getLat()); +// sysLocation.setLongitude(location.getLon()); +// sysLocation.setProvider(location.getProvider()); +// sysLocation.setAccuracy(location.getAcceleration()); +// sysLocation.setTime(location.duration); +// sysLocation.setBearing((float) location.getHeading()); +// sysLocation.setSpeed(location.getSpeed()); - if (MogoCarLocationChangedListenerRegister.getInstance().getListener() != null) { - MogoCarLocationChangedListenerRegister.getInstance().getListener().onCarLocationChanged2(sysLocation); - } +// if (MogoCarLocationChangedListenerRegister.getInstance().getListener() != null) { +// MogoCarLocationChangedListenerRegister.getInstance().getListener().onCarLocationChanged2(sysLocation); +// } if (checkAMapView() && mMapLoaded) { // 地图初始化完成后,每隔5s自动判断当前地图的模式 if (mIsFirstLocated) { diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/MogoMapUIController.java b/libraries/mogo-map/src/main/java/com/mogo/map/MogoMapUIController.java index f92b08dae0..a5d21cb604 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/MogoMapUIController.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/MogoMapUIController.java @@ -3,14 +3,12 @@ package com.mogo.map; import android.graphics.Point; import android.graphics.Rect; import android.location.Location; -import android.util.Log; import android.view.View; import com.mogo.eagle.core.data.map.CenterLine; import com.mogo.eagle.core.data.map.MogoLatLng; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.map.uicontroller.CarCursorOption; -import com.mogo.map.uicontroller.EnumMapUI; import com.mogo.map.uicontroller.IMogoMapUIController; import com.mogo.map.uicontroller.MapCameraPosition; import com.mogo.map.uicontroller.MapControlResult; @@ -40,6 +38,12 @@ public class MogoMapUIController implements IMogoMapUIController { initDelegate(); } + private void initDelegate() { + if (mDelegate == null) { + mDelegate = MogoMapDelegateFactory.getMapUIControllerDelegate(); + } + } + public static MogoMapUIController getInstance() { if (sInstance == null) { synchronized (MogoMapUIController.class) { @@ -51,10 +55,6 @@ public class MogoMapUIController implements IMogoMapUIController { return sInstance; } - public void setDelegate(IMogoMapUIController mDelegate) { - this.mDelegate = mDelegate; - } - public static synchronized void release() { sInstance = null; } @@ -347,14 +347,6 @@ public class MogoMapUIController implements IMogoMapUIController { mDelegate = null; } - private void initDelegate() { - if (mDelegate == null) { - mDelegate = MogoMapDelegateFactory.getMapUIControllerDelegate(); - } - } - - - @Override public void stepInVrMode(boolean isDayMode) { initDelegate(); diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/location/GDLocationClient.java b/libraries/mogo-map/src/main/java/com/mogo/map/location/GDLocationClient.java index cf7197d8d6..ef341fad5c 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/location/GDLocationClient.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/location/GDLocationClient.java @@ -10,7 +10,7 @@ import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.constants.SharedPrefsConstants; import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; -public class GDLocationClient implements AMapLocationListener { +public class GDLocationClient implements AMapLocationListener,IMogoGDLocationClient { private volatile static GDLocationClient gdLocationClient; private static final byte[] obj = new byte[0]; @@ -52,12 +52,20 @@ public class GDLocationClient implements AMapLocationListener { } } + @Override public void start() { if (mLocationClient != null) { mLocationClient.startLocation(); } } + @Override + public void stop() { + if (mLocationClient != null) { + mLocationClient.stopLocation(); + } + } + @Override public void onLocationChanged(AMapLocation aMapLocation) { if (aMapLocation != null) { @@ -70,6 +78,7 @@ public class GDLocationClient implements AMapLocationListener { } } + @Override public String getLastCityCode() { return mCityCode; } diff --git a/modules.txt b/modules.txt index 7c940073d5..3abd5a1039 100644 --- a/modules.txt +++ b/modules.txt @@ -7,7 +7,6 @@ :tts:tts-base :tts:tts-pad :libraries:mogo-map-api -:services:mogo-service-api :foudations:mogo-aicloud-services-sdk :foudations:mogo-commons :libraries:map-usbcamera diff --git a/services/mogo-service-api/.gitignore b/services/mogo-service-api/.gitignore deleted file mode 100644 index 796b96d1c4..0000000000 --- a/services/mogo-service-api/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build diff --git a/services/mogo-service-api/README.md b/services/mogo-service-api/README.md deleted file mode 100644 index e954a2c778..0000000000 --- a/services/mogo-service-api/README.md +++ /dev/null @@ -1,40 +0,0 @@ -# 基础服务接口层 - -## adas 控制 - -## 数据统计、埋点 - -## 长链接口 - -## 数据分发 - -## 动态按钮控制:entrance 层可以控制按钮功能 - -## fragment 管理 - -## 图片加载 - -## 事件监听:分发小智语音 command、广播接收者 intent - -## 返回桌面 - -## 位置上报:部分产线需要自己上报位置 - -## 地图控制 - -## marker 绘制 - -## 监听注册中心 - -## poi 搜索 UI 控制 - -## 网络请求 - -## passport 接口 - -## 状态机 - -## 数据刷新策略接口 - -## 页面内部浮窗和顶部弹窗管理 - diff --git a/services/mogo-service-api/apipackage.txt b/services/mogo-service-api/apipackage.txt deleted file mode 100644 index bf9128c67a..0000000000 --- a/services/mogo-service-api/apipackage.txt +++ /dev/null @@ -1,4 +0,0 @@ -com.mogo.service.network -com.mogo.service.module -com.mogo.service.map -com.mogo.service \ No newline at end of file diff --git a/services/mogo-service-api/build.gradle b/services/mogo-service-api/build.gradle deleted file mode 100644 index 378f79697c..0000000000 --- a/services/mogo-service-api/build.gradle +++ /dev/null @@ -1,68 +0,0 @@ -plugins { - id 'com.android.library' - id 'kotlin-android' - id 'kotlin-android-extensions' - id 'kotlin-kapt' - id 'com.alibaba.arouter' -} - -android { - compileSdkVersion rootProject.ext.android.compileSdkVersion - // buildToolsVersion rootProject.ext.android.buildToolsVersion - defaultConfig { - minSdkVersion rootProject.ext.android.minSdkVersion - targetSdkVersion rootProject.ext.android.targetSdkVersion - versionCode Integer.valueOf(VERSION_CODE) - versionName getValueFromRootProperties("${project.name.replace("-", "_").toUpperCase()}_VERSION") - - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles 'consumer-rules.pro' - - //ARouter apt 参数 - kapt { - useBuildCache = false - arguments { - arg("AROUTER_MODULE_NAME", project.getName()) - } - } - - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - } - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - -} - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - - api rootProject.ext.dependencies.androidxappcompat - implementation rootProject.ext.dependencies.arouter - kapt rootProject.ext.dependencies.aroutercompiler - - api rootProject.ext.dependencies.carmanager - - if (Boolean.valueOf(USE_MAVEN_PACKAGE)) { - api rootProject.ext.dependencies.mogomapapi - - implementation rootProject.ext.dependencies.mogo_core_data - implementation rootProject.ext.dependencies.mogo_core_function_api - } else { - api project(":libraries:mogo-map-api") - - implementation project(':core:mogo-core-data') - api project(':core:mogo-core-function-api') - - } -} - -apply from: new File(rootProject.rootDir, "gradle/upload.gradle").toString() diff --git a/services/mogo-service-api/consumer-rules.pro b/services/mogo-service-api/consumer-rules.pro deleted file mode 100644 index d7506f9e95..0000000000 --- a/services/mogo-service-api/consumer-rules.pro +++ /dev/null @@ -1 +0,0 @@ -#-----MogoServiceApi----- diff --git a/services/mogo-service-api/gradle.properties b/services/mogo-service-api/gradle.properties deleted file mode 100644 index ffb04fe748..0000000000 --- a/services/mogo-service-api/gradle.properties +++ /dev/null @@ -1,3 +0,0 @@ -GROUP=com.mogo.service -POM_ARTIFACT_ID=mogo-service-api -VERSION_CODE=1 diff --git a/services/mogo-service-api/proguard-rules.pro b/services/mogo-service-api/proguard-rules.pro deleted file mode 100644 index 200f328484..0000000000 --- a/services/mogo-service-api/proguard-rules.pro +++ /dev/null @@ -1,24 +0,0 @@ -# Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile - -#-----MogoServiceApi----- --keep class com.mogo.service.** {*;} diff --git a/services/mogo-service-api/src/main/AndroidManifest.xml b/services/mogo-service-api/src/main/AndroidManifest.xml deleted file mode 100644 index 46f9830497..0000000000 --- a/services/mogo-service-api/src/main/AndroidManifest.xml +++ /dev/null @@ -1,2 +0,0 @@ - diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoRegisterCenter.java b/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoRegisterCenter.java deleted file mode 100644 index da3edfa595..0000000000 --- a/services/mogo-service-api/src/main/java/com/mogo/service/module/IMogoRegisterCenter.java +++ /dev/null @@ -1,107 +0,0 @@ -package com.mogo.service.module; - -import com.alibaba.android.arouter.facade.template.IProvider; -import com.mogo.map.listener.IMogoMapListener; -import com.mogo.map.location.IMogoLocationListener; -import com.mogo.map.marker.IMogoMarkerClickListener; -import com.mogo.map.navi.IMogoCarLocationChangedListener; - -import java.util.Iterator; - -/** - * @author congtaowang - * @since 2020-01-09 - *

- * 监听注册中心 - */ -public interface IMogoRegisterCenter extends IProvider { - - /** - * 注册地图监听函数 - * - * @param tag - * @param listener - * @return - */ - void registerMogoMapListener( String tag, IMogoMapListener listener ); - - /** - * 注销地图监听函数 - * - * @param tag - */ - void unregisterMogoMapListener( String tag ); - - /** - * 注册定位监听函数 - * - * @param tag - * @param listener - * @return - */ - void registerMogoLocationListener( String tag, IMogoLocationListener listener ); - - /** - * 返回点位监听 - * - * @return - */ - Iterator< IMogoLocationListener > getLocationListeners(); - - /** - * 注销定位监听函数 - * - * @param tag - */ - void unregisterMogoLocationListener( String tag ); - - /** - * 注册marker点击监听函数 - * - * @param tag - * @param listener - * @return - */ - void registerMogoMarkerClickListener( String tag, IMogoMarkerClickListener listener ); - - /** - * 注销定位监听函数 - * - * @param tag - */ - void unregisterMogoMarkerClickListener( String tag ); - - /** - * 注册地图上静态marker点击监听函数 - * - * @param tag - * @param listener - * @return - */ - void registerMogoStaticMarkerClickListener( String tag, IMogoMarkerClickListener listener ); - - /** - * 注销定位监听函数 - * - * @param tag - */ - void unregisterMogoStaticMarkerClickListener( String tag, IMogoMarkerClickListener listener ); - - - /** - * 注册车辆位置变化监听 - * - * @param tag - * @param listener - */ - void registerCarLocationChangedListener( String tag, IMogoCarLocationChangedListener listener ); - - /** - * 注销车辆位置变化监听 - * - * @param tag - * @param listener - */ - void unregisterCarLocationChangedListener( String tag, IMogoCarLocationChangedListener listener ); - -} diff --git a/settings.gradle b/settings.gradle index 8016c44322..099fd6337c 100644 --- a/settings.gradle +++ b/settings.gradle @@ -51,9 +51,6 @@ include ':core:function-impl:mogo-core-function-chat' // 消息盒子 include ':core:function-impl:mogo-core-function-datacenter' -// 服务 -include ':services:mogo-service-api' - // 模块 include ':foudations:mogo-aicloud-services-sdk' include ':foudations:mogo-commons'