From 708144401f951f457ebd58261477b6a00af4a8f6 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 6 Apr 2021 14:47:22 +0800 Subject: [PATCH 1/8] upgrade aiSdk version --- gradle.properties | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/gradle.properties b/gradle.properties index 2172a6f8a0..9cf58fd805 100644 --- a/gradle.properties +++ b/gradle.properties @@ -155,19 +155,19 @@ LOGLIB_VERSION = 1.0.4 ######## MogoAiCloudSDK Version # 网络请求 -MOGO_NETWORK_VERSION=1.0.61 +MOGO_NETWORK_VERSION=1.0.62 # 鉴权 -MOGO_PASSPORT_VERSION=1.0.61 +MOGO_PASSPORT_VERSION=1.0.62 # 常链接 -MOGO_SOCKET_VERSION=1.0.61 +MOGO_SOCKET_VERSION=1.0.62 # 数据采集 -MOGO_REALTIME_VERSION=1.0.61 +MOGO_REALTIME_VERSION=1.0.62 # 探路,道路事件发布,获取 -MOGO_TANLU_VERSION=1.0.61 +MOGO_TANLU_VERSION=1.0.62 # 直播推流 -MOGO_LIVE_VERSION=1.0.61 +MOGO_LIVE_VERSION=1.0.62 # 直播拉流 -MOGO_TRAFFICLIVE_VERSION=1.0.61 +MOGO_TRAFFICLIVE_VERSION=1.0.62 ######## Foundation MogoAiCloud Moduletruetr # mogoAiCloud apk services From 42d00485812364386aa9a196431f3cfec262d46b Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 6 Apr 2021 15:25:35 +0800 Subject: [PATCH 2/8] fixbug --- gradle.properties | 14 +++++++------- .../scene/livecar/V2XVoiceCallLiveScenario.java | 8 ++++++-- .../src/main/res/values-xhdpi/dimens.xml | 2 ++ 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/gradle.properties b/gradle.properties index 9cf58fd805..3d9c247180 100644 --- a/gradle.properties +++ b/gradle.properties @@ -155,19 +155,19 @@ LOGLIB_VERSION = 1.0.4 ######## MogoAiCloudSDK Version # 网络请求 -MOGO_NETWORK_VERSION=1.0.62 +MOGO_NETWORK_VERSION=1.0.63 # 鉴权 -MOGO_PASSPORT_VERSION=1.0.62 +MOGO_PASSPORT_VERSION=1.0.63 # 常链接 -MOGO_SOCKET_VERSION=1.0.62 +MOGO_SOCKET_VERSION=1.0.63 # 数据采集 -MOGO_REALTIME_VERSION=1.0.62 +MOGO_REALTIME_VERSION=1.0.63 # 探路,道路事件发布,获取 -MOGO_TANLU_VERSION=1.0.62 +MOGO_TANLU_VERSION=1.0.63 # 直播推流 -MOGO_LIVE_VERSION=1.0.62 +MOGO_LIVE_VERSION=1.0.63 # 直播拉流 -MOGO_TRAFFICLIVE_VERSION=1.0.62 +MOGO_TRAFFICLIVE_VERSION=1.0.63 ######## Foundation MogoAiCloud Moduletruetr # mogoAiCloud apk services diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveScenario.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveScenario.java index 405295e884..29ad1c1247 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveScenario.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveScenario.java @@ -1,7 +1,7 @@ package com.mogo.module.v2x.scenario.scene.livecar; import android.view.View; -import android.view.ViewGroup; +import android.widget.RelativeLayout; import androidx.annotation.Nullable; @@ -64,7 +64,11 @@ public class V2XVoiceCallLiveScenario extends AbsV2XScenario32px 1060px 583px + 160px + 32px 390px 410px From 70b9b6d1ff541b441376b7ad009176333455894a Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Tue, 6 Apr 2021 15:37:59 +0800 Subject: [PATCH 3/8] opt --- .../common/drawer/V2XWarnDataDrawer.java | 7 +-- .../common/entity/V2XWarningEntity.java | 12 +++++ .../com/mogo/module/v2x/V2XWaringManager.java | 3 +- .../impl/MoGoPersonWarnPolylineManager.java | 7 ++- .../impl/MoGoV2XCloundDataManager.java | 50 +++++++++++-------- .../manager/impl/MoGoWarnPolylineManager.java | 6 +-- .../res/raw/scenario_warning_event_data.json | 3 +- 7 files changed, 52 insertions(+), 36 deletions(-) diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/V2XWarnDataDrawer.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/V2XWarnDataDrawer.java index b9f839be11..5928d1df61 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/V2XWarnDataDrawer.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/V2XWarnDataDrawer.java @@ -85,12 +85,12 @@ public class V2XWarnDataDrawer extends BaseDrawer implements IMogoStatusChangedL WorkThreadHandler.getInstance().postDelayed(() -> { IMogoMarker marker = drawMarker(markerShowEntity); Log.d("liyz", "renderWarnData marker != null "); - marker.addDynamicAnchorPosition(new MogoLatLng(data.getCollisionLat(), data.getCollisionLon()), (float) data.getHeading(), 4000); + marker.addDynamicAnchorPosition(new MogoLatLng(data.getCollisionLat(), data.getCollisionLon()), (float) data.getHeading(), 5000); //移动完成以后,3s后消失 UiThreadHandler.postDelayed( () -> { marker.remove(); - }, 3000 ); + }, 8000 ); }, 0); @@ -105,7 +105,8 @@ public class V2XWarnDataDrawer extends BaseDrawer implements IMogoStatusChangedL IMarkerView iMarkerView = MapMarkerAdapter.getMarkerView(mContext, markerShowEntity, options); options.icon3DRes(getModelRes(2)); //TODO - options.anchorColor("#FF4040"); +// options.anchorColor("#FF4040"); + options.anchorColor("#FF3036"); //红色 IMogoMarker marker = MogoApisHandler.getInstance().getApis().getMapServiceApi().getMarkerManager(mContext).addMarker(markerShowEntity.getMarkerType(), options); iMarkerView.setMarker(marker); marker.setToTop(); diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XWarningEntity.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XWarningEntity.java index 9f294af585..532dca9d7a 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XWarningEntity.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/V2XWarningEntity.java @@ -54,6 +54,7 @@ public class V2XWarningEntity implements Serializable { public long satelliteTime; //预警蒙层等展示时长 private long showTime; + private float roadwidth; //自组字段 //tts播报 @@ -218,6 +219,14 @@ public class V2XWarningEntity implements Serializable { return stopLines; } + public float getRoadwidth() { + return roadwidth; + } + + public void setRoadwidth(float roadwidth) { + this.roadwidth = roadwidth; + } + @Override public String toString() { return "V2XWarningEntity{" + @@ -231,6 +240,7 @@ public class V2XWarningEntity implements Serializable { ", angle=" + angle + ", direction=" + direction + ", speed=" + speed + + ", stopLines=" + stopLines + ", stopLineDistance=" + stopLineDistance + ", roadId='" + roadId + '\'' + ", laneId='" + laneId + '\'' + @@ -241,6 +251,8 @@ public class V2XWarningEntity implements Serializable { ", heading=" + heading + ", systemTime=" + systemTime + ", satelliteTime=" + satelliteTime + + ", showTime=" + showTime + + ", roadwidth=" + roadwidth + ", tts='" + tts + '\'' + ", carLocation=" + carLocation + '}'; diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XWaringManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XWaringManager.java index 9e98307aa5..a274f3d9c6 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XWaringManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XWaringManager.java @@ -67,7 +67,7 @@ public class V2XWaringManager { } /** - * TODO 测试数据 + * 测试数据 */ private void testData() { @@ -86,7 +86,6 @@ public class V2XWaringManager { // 加载数据源 V2XWarningEntity warningEntity = GsonUtil.objectFromJson(baos.toString(), V2XWarningEntity.class); V2XServiceManager.getMoGoV2XCloundDataManager().analysisV2XCloundDataEvent(warningEntity); - Logger.d(V2XConst.LOG_NAME_WARN, "testData -----> "); } catch (Exception e) { e.printStackTrace(); } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoPersonWarnPolylineManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoPersonWarnPolylineManager.java index 43e5a4eb06..0a124b9e96 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoPersonWarnPolylineManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoPersonWarnPolylineManager.java @@ -16,7 +16,7 @@ import java.util.ArrayList; import java.util.List; /** - * 当前车辆与道路事件的连接线 + * 绘制行人和二轮车连线 */ @Route(path = MoGoV2XServicePaths.PATH_V2X_PERSON_WARN_POLYLINE_MANAGER) public class MoGoPersonWarnPolylineManager implements IMoGoPersonWarnPolylineManager { @@ -54,9 +54,8 @@ public class MoGoPersonWarnPolylineManager implements IMoGoPersonWarnPolylineMan } // 线条粗细,渐变,渐变色值 -// Logger.d(V2XConst.LOG_NAME_WARN, "MoGoPersonWarnPolylineManager roadWidth = " + roadWidth); - options.width(60).useGradient(true).colorValues(colors); -// options.width(info.getWidth()).useGradient(true).colorValues(colors); + Log.d(V2XConst.LOG_NAME_WARN, "MoGoPersonWarnPolylineManager width = " + info.getWidth()); + options.width(info.getWidth()).useGradient(true).transparency(0.1f).colorValues(colors); // 当前车辆位置 options.add(info.getStartLocation()); // 目标车辆位置 diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoV2XCloundDataManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoV2XCloundDataManager.java index 216058ac4a..c7bfc74e61 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoV2XCloundDataManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoV2XCloundDataManager.java @@ -17,6 +17,7 @@ import com.mogo.module.v2x.V2XServiceManager; import com.mogo.module.v2x.entity.model.DrawLineInfo; import com.mogo.module.v2x.manager.IMoGoV2XCloundDataManager; import com.mogo.utils.UiThreadHandler; +import com.mogo.utils.WorkThreadHandler; import com.mogo.utils.logger.Logger; import java.util.Arrays; @@ -29,24 +30,36 @@ import static com.mogo.module.v2x.V2XServiceManager.getContext; @Route(path = MoGoV2XServicePaths.PATH_V2X_WARN_CLOUND_DATA_MANAGER) public class MoGoV2XCloundDataManager implements IMoGoV2XCloundDataManager, IMogoCarLocationChangedListener2 { private V2XWarningEntity mCloundWarningInfo; + private static String TAG = "MoGoV2XCloundDataManager"; @Override public void init(Context context) { + MogoApisHandler.getInstance().getApis().getRegisterCenterApi() + .registerCarLocationChangedListener(TAG, this); } @Override public void analysisV2XCloundDataEvent(V2XWarningEntity cloundWarningInfo) { + Log.d(V2XConst.LOG_NAME_WARN, "analysisV2XCloundDataEvent -----> "); + mCloundWarningInfo = cloundWarningInfo; - //绘制识别物与交汇点连线,并且更新连线数据 TODO VR模式无法获取道路宽度 - drawOtherObjectLine(cloundWarningInfo); - Logger.d(V2XConst.LOG_NAME_WARN, "analysisV2XCloundDataEvent -----> "); + //绘制识别物与交汇点连线,并且更新连线数据 + WorkThreadHandler.getInstance().postDelayed(() -> { + drawOtherObjectLine(cloundWarningInfo); + }, 0); + //二轮车和行人的渲染和移动 V2XWarnDataDrawer.getInstance().renderWarnData(cloundWarningInfo); + + //延迟3秒清理线 + UiThreadHandler.postDelayed( () -> { + V2XServiceManager.getMoGoPersonWarnPolylineManager().clearLine(); + }, 8000 ); } /** - * 绘制行人和二轮车连线,并且更新数据 + * 绘制行人和二轮车连线,并且更新数据 TODO 需要实时给行人当前位置 */ private void drawOtherObjectLine(V2XWarningEntity info) { IMogoPolyline polyLine = V2XServiceManager.getMoGoPersonWarnPolylineManager().getMogoPersonWarnPolyline(); @@ -56,7 +69,7 @@ public class MoGoV2XCloundDataManager implements IMoGoV2XCloundDataManager, IMog polyLine.setPoints(Arrays.asList(new MogoLatLng(info.getLat(), info.getLon()), new MogoLatLng(info.getCollisionLat(), info.getCollisionLon()))); } else { - Log.d(V2XConst.LOG_NAME_WARN, "polyLine == null"); + Log.e(V2XConst.LOG_NAME_WARN, "polyLine == null"); DrawLineInfo lineInfo = new DrawLineInfo(); MogoLatLng startLatlng = new MogoLatLng(info.getLat(), info.getLon()); MogoLatLng endLatlng = new MogoLatLng(info.getCollisionLat(), info.getCollisionLon()); @@ -64,21 +77,14 @@ public class MoGoV2XCloundDataManager implements IMoGoV2XCloundDataManager, IMog lineInfo.setEndLocation(endLatlng); lineInfo.setHeading(info.heading); if (MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode() ) { - float roadWidth = V2XServiceManager.getMapUIController().getRoadWidth(info.getLon(), - info.getLat(), (float) info.heading, true, true); - Log.d(V2XConst.LOG_NAME_WARN, "roadWidth = " + roadWidth); - float pixel = V2XServiceManager.getMapUIController().getScalePerPixel(); - float width = roadWidth / pixel; - lineInfo.setWidth(width); +// float roadWidth = V2XServiceManager.getMapUIController().getRoadWidth(info.getLon(), +// info.getLat(), (float) info.heading, true, true); + Log.d(V2XConst.LOG_NAME_WARN, "drawOtherObjectLine width = " + info.getRoadwidth()); + lineInfo.setWidth(info.getRoadwidth()); } V2XServiceManager.getMoGoPersonWarnPolylineManager().drawPersonWarnPolyline(getContext(), lineInfo); } - //延迟3秒清理线 - UiThreadHandler.postDelayed( () -> { - V2XServiceManager.getMoGoPersonWarnPolylineManager().clearLine(); - }, 6000 ); - } else { Log.e(V2XConst.LOG_NAME_WARN, "info == null"); V2XServiceManager.getMoGoPersonWarnPolylineManager().clearLine(); @@ -91,11 +97,11 @@ public class MoGoV2XCloundDataManager implements IMoGoV2XCloundDataManager, IMog } /** - * 自车定位 移动完成需要 3s消失 + * 自车定位 移动完成需要 3s消失,这里何时清理,应该是没有数据的时候 */ @Override public void onCarLocationChanged2(Location latLng) { - Log.d(V2XConst.LOG_NAME_WARN, "latLng = " + latLng.getLatitude() + "--" + latLng.getLongitude()); + Log.d(V2XConst.LOG_NAME_WARN, "onCarLocationChanged2 latLng = " + latLng.getLatitude() + "--" + latLng.getLongitude()); //当行人经纬度交点 经纬度不为空,开始画线,否则清理 //自车只需要关注移动 IMogoPolyline mogoPolyline = V2XServiceManager.getMoGoWarnPolylineManager().getMogoWarnPolyline(); @@ -105,21 +111,21 @@ public class MoGoV2XCloundDataManager implements IMoGoV2XCloundDataManager, IMog new MogoLatLng(mCloundWarningInfo.getCollisionLat(), mCloundWarningInfo.getCollisionLon()))); } else { - Log.e(V2XConst.LOG_NAME_WARN, "mogoPolyline == null"); + Log.e(V2XConst.LOG_NAME_WARN, "onCarLocationChanged2 mogoPolyline == null width = " + mCloundWarningInfo.getRoadwidth()); DrawLineInfo info = new DrawLineInfo(); // 对象 MogoLatLng startLatlng = new MogoLatLng(latLng.getLatitude(), latLng.getLongitude()); MogoLatLng endLatlng = new MogoLatLng(mCloundWarningInfo.getCollisionLat(), mCloundWarningInfo.getCollisionLon()); info.setHeading(latLng.getBearing()); info.setStartLocation(startLatlng); info.setEndLocation(endLatlng); - info.setWidth(60); //TODO + info.setWidth(mCloundWarningInfo.getRoadwidth()); //TODO 还需要转换比例尺 V2XServiceManager.getMoGoWarnPolylineManager().drawWarnPolyline(getContext(), info); } - //延迟3秒清理线 + //延迟3秒清理线 TODO 何时 清理 UiThreadHandler.postDelayed( () -> { V2XServiceManager.getMoGoWarnPolylineManager().clearLine(); - }, 3000 ); + }, 13000 ); } else { Log.e(V2XConst.LOG_NAME_WARN, "onCarLocationChanged2 mCloundWarningInfo == null"); diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoWarnPolylineManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoWarnPolylineManager.java index 723e182ccc..4362aac4c3 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoWarnPolylineManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoWarnPolylineManager.java @@ -38,8 +38,6 @@ public class MoGoWarnPolylineManager implements IMoGoWarnPolylineManager { mMogoPolyline.remove(); } - Log.d(V2XConst.LOG_NAME_WARN, "MoGoWarnPolylineManager --------> "); - // 连接线参数 MogoPolylineOptions options = new MogoPolylineOptions(); List colors = new ArrayList<>(); @@ -58,9 +56,9 @@ public class MoGoWarnPolylineManager implements IMoGoWarnPolylineManager { colors.add(0xFFE32F46); } -// Log.d(V2XConst.LOG_NAME_WARN, "MoGoWarnPolylineManager roadWidth = " + roadWidth); + Log.d(V2XConst.LOG_NAME_WARN, "MoGoWarnPolylineManager roadWidth = " + info.getWidth()); // 线条粗细,渐变,渐变色值 - options.width(60).useGradient(true).colorValues(colors); + options.width(info.getWidth()).useGradient(true).transparency(0.9f).colorValues(colors); // options.width(info.getWidth()).useGradient(true).colorValues(colors); // 当前车辆位置 options.add(info.getStartLocation()); diff --git a/modules/mogo-module-v2x/src/main/res/raw/scenario_warning_event_data.json b/modules/mogo-module-v2x/src/main/res/raw/scenario_warning_event_data.json index 91f29e6187..838ce52329 100644 --- a/modules/mogo-module-v2x/src/main/res/raw/scenario_warning_event_data.json +++ b/modules/mogo-module-v2x/src/main/res/raw/scenario_warning_event_data.json @@ -25,5 +25,6 @@ "stopLineLon": 116.417634, "warningContent": "小心行人", "heading": 30, - "showTime": 3000 + "showTime": 3000, + "roadwidth": 65.0 } \ No newline at end of file From 82b70c1696b133257a4d02ccb028cffcedbf1fa4 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 6 Apr 2021 15:40:34 +0800 Subject: [PATCH 4/8] fixbug --- .../v2x/scenario/scene/livecar/V2XVoiceCallLiveScenario.java | 4 ++-- modules/mogo-module-v2x/src/main/res/values-xhdpi/dimens.xml | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveScenario.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveScenario.java index 29ad1c1247..a802d93962 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveScenario.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveScenario.java @@ -66,9 +66,9 @@ public class V2XVoiceCallLiveScenario extends AbsV2XScenario1060px 583px 160px + 0px 32px + 0px 390px 410px From b49d74b201dee9280d2e4ee8d28ae7ca79892bf0 Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Tue, 6 Apr 2021 15:47:28 +0800 Subject: [PATCH 5/8] opt --- .../com/mogo/module/share/TanluManager.java | 2 +- .../impl/MoGoPersonWarnPolylineManager.java | 27 +++++++++-------- .../manager/impl/MoGoWarnPolylineManager.java | 29 ++++++++++--------- 3 files changed, 32 insertions(+), 26 deletions(-) diff --git a/modules/mogo-module-share/src/main/java/com/mogo/module/share/TanluManager.java b/modules/mogo-module-share/src/main/java/com/mogo/module/share/TanluManager.java index 79767d4021..9b62ffc657 100644 --- a/modules/mogo-module-share/src/main/java/com/mogo/module/share/TanluManager.java +++ b/modules/mogo-module-share/src/main/java/com/mogo/module/share/TanluManager.java @@ -449,7 +449,7 @@ public class TanluManager implements IMogoMarkerClickListener, } /** - * TODO 释放资源 + * 释放资源 */ public void releaseAction() { // EventBus.getDefault().unregister(this); diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoPersonWarnPolylineManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoPersonWarnPolylineManager.java index 0a124b9e96..5f64cf646b 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoPersonWarnPolylineManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoPersonWarnPolylineManager.java @@ -40,18 +40,21 @@ public class MoGoPersonWarnPolylineManager implements IMoGoPersonWarnPolylineMan // 渐变色 List colors = new ArrayList<>(); - if (info.getType() != null) { - if (info.getType().equals("1")) { //预警 TODO - colors.add(0xFFFFA31A); - colors.add(0xFFFFA31A); - } else { - colors.add(0xFFE32F46); - colors.add(0xFFE32F46); - } - } else { - colors.add(0xFFE32F46); - colors.add(0xFFE32F46); - } +// if (info.getType() != null) { +// if (info.getType().equals("1")) { //预警 TODO +// colors.add(0xFFFFA31A); +// colors.add(0xFFFFA31A); +// } else { +// colors.add(0xFFE32F46); +// colors.add(0xFFE32F46); +// } +// } else { +// colors.add(0xFFE32F46); +// colors.add(0xFFE32F46); +// } + + colors.add(0xFFE32F46); + colors.add(0xFFE32F46); // 线条粗细,渐变,渐变色值 Log.d(V2XConst.LOG_NAME_WARN, "MoGoPersonWarnPolylineManager width = " + info.getWidth()); diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoWarnPolylineManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoWarnPolylineManager.java index 4362aac4c3..c38d3869d4 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoWarnPolylineManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/manager/impl/MoGoWarnPolylineManager.java @@ -42,19 +42,22 @@ public class MoGoWarnPolylineManager implements IMoGoWarnPolylineManager { MogoPolylineOptions options = new MogoPolylineOptions(); List colors = new ArrayList<>(); - if (info.getType() != null) { - if (info.getType().equals("1")) { //预警 TODO - colors.add(0xFFFFA31A); - colors.add(0xFFFFA31A); - } else { - colors.add(0xFFE32F46); - colors.add(0xFFE32F46); - } - } else { - Log.e(V2XConst.LOG_NAME_WARN, "drawWarnPolyline info.getType() == null "); - colors.add(0xFFE32F46); - colors.add(0xFFE32F46); - } +// if (info.getType() != null) { +// if (info.getType().equals("1")) { //预警 TODO +// colors.add(0xFFFFA31A); +// colors.add(0xFFFFA31A); +// } else { +// colors.add(0xFFE32F46); +// colors.add(0xFFE32F46); +// } +// } else { +// Log.e(V2XConst.LOG_NAME_WARN, "drawWarnPolyline info.getType() == null "); +// colors.add(0xFFE32F46); +// colors.add(0xFFE32F46); +// } + + colors.add(0xFFE32F46); + colors.add(0xFFE32F46); Log.d(V2XConst.LOG_NAME_WARN, "MoGoWarnPolylineManager roadWidth = " + info.getWidth()); // 线条粗细,渐变,渐变色值 From 1bb1cfbc7ed798b233c23ede356038178946fa3f Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 6 Apr 2021 16:25:46 +0800 Subject: [PATCH 6/8] add init live --- .../java/com/mogo/module/v2x/view/CarZegoLiveVideoView.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/CarZegoLiveVideoView.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/CarZegoLiveVideoView.java index b861da543a..2b9dccc17b 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/CarZegoLiveVideoView.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/CarZegoLiveVideoView.java @@ -13,6 +13,8 @@ import android.widget.TextView; import androidx.constraintlayout.widget.ConstraintLayout; import androidx.core.content.ContextCompat; +import com.mogo.cloud.live.manager.LiveStreamManagerImpl; +import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import com.mogo.cloud.trafficlive.api.ITrafficCarLiveCallBack; import com.mogo.cloud.trafficlive.api.MoGoAiCloudTrafficLive; import com.mogo.commons.AbsMogoApplication; @@ -102,6 +104,8 @@ public class CarZegoLiveVideoView extends RoundLayout { */ private void playLiveVideo() { if (mSurfaceView != null) { + LiveStreamManagerImpl.getInstance(AbsMogoApplication.getApp(), + MoGoAiCloudClientConfig.getInstance().getThirdPartyDeviceId()); MogoLocation mogoLocation = V2XServiceManager.getMogoLocationClient().getLastKnowLocation(); MoGoAiCloudTrafficLive.viewFrontVehicleLive(mogoLocation.getLatitude(), mogoLocation.getLongitude(), ((int) mogoLocation.getBearing()), mSurfaceView, new ITrafficCarLiveCallBack() { @Override From fd221d8137227cd9c20e98b49ebdd2187bb7074c Mon Sep 17 00:00:00 2001 From: zhongchao Date: Tue, 6 Apr 2021 16:43:30 +0800 Subject: [PATCH 7/8] fixbug of init live --- .../v2x/scenario/scene/livecar/V2XVoiceCallLiveBiz.java | 5 +++++ .../java/com/mogo/module/v2x/view/CarZegoLiveVideoView.java | 2 -- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveBiz.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveBiz.java index 9f59163b2a..817ba97e12 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveBiz.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/livecar/V2XVoiceCallLiveBiz.java @@ -3,8 +3,11 @@ package com.mogo.module.v2x.scenario.scene.livecar; import android.content.Context; import android.text.TextUtils; +import com.mogo.cloud.live.manager.LiveStreamManagerImpl; +import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import com.mogo.cloud.trafficlive.api.ITrafficIntersectionLiveCallBack; import com.mogo.cloud.trafficlive.api.MoGoAiCloudTrafficLive; +import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.voice.AIAssist; import com.mogo.map.location.MogoLocation; import com.mogo.module.common.entity.V2XMessageEntity; @@ -100,6 +103,8 @@ public class V2XVoiceCallLiveBiz { * 查看前方车辆直播,同方向角 200米范围 */ public void getFrontCarLive() { + LiveStreamManagerImpl.getInstance(AbsMogoApplication.getApp(), + MoGoAiCloudClientConfig.getInstance().getThirdPartyDeviceId()); V2XMessageEntity v2XMessageEntity = buildCallLiveParams(null, null); mV2XVoiceCallLiveScenario = new V2XVoiceCallLiveScenario(); mV2XVoiceCallLiveScenario.setV2XWindow(new V2XVoiceCallLiveCarWindow()); diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/CarZegoLiveVideoView.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/CarZegoLiveVideoView.java index 2b9dccc17b..b29196ae28 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/CarZegoLiveVideoView.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/view/CarZegoLiveVideoView.java @@ -104,8 +104,6 @@ public class CarZegoLiveVideoView extends RoundLayout { */ private void playLiveVideo() { if (mSurfaceView != null) { - LiveStreamManagerImpl.getInstance(AbsMogoApplication.getApp(), - MoGoAiCloudClientConfig.getInstance().getThirdPartyDeviceId()); MogoLocation mogoLocation = V2XServiceManager.getMogoLocationClient().getLastKnowLocation(); MoGoAiCloudTrafficLive.viewFrontVehicleLive(mogoLocation.getLatitude(), mogoLocation.getLongitude(), ((int) mogoLocation.getBearing()), mSurfaceView, new ITrafficCarLiveCallBack() { @Override From 6ffa82526d9978957de2157414207914d7105603 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Wed, 7 Apr 2021 10:06:27 +0800 Subject: [PATCH 8/8] opt --- .idea/gradle.xml | 1 - .idea/misc.xml | 2 +- .../och/bus/presenter/OchBusOrderModel.java | 1 + .../och/bus/presenter/OchBusPresenter.java | 20 +++++++++++++++---- .../common/drawer/V2XWarnDataDrawer.java | 2 -- 5 files changed, 18 insertions(+), 8 deletions(-) diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 4ff10f68a5..83405b8de1 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -91,7 +91,6 @@ diff --git a/.idea/misc.xml b/.idea/misc.xml index 733acb1920..97b9126cee 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -8,7 +8,7 @@ - + \ No newline at end of file diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusOrderModel.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusOrderModel.java index b5826b2631..80d9a4d381 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusOrderModel.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusOrderModel.java @@ -75,6 +75,7 @@ class OchBusOrderModel { /** * 站点信息变更推送 + * 新订单、取消订单、到达站点等都会导致停靠站点变更,故都会收到此推送 */ private IMogoOnMessageListener< OchBusStationsChangedMsg > mOnBusStationsChangedMsg = new IMogoOnMessageListener< OchBusStationsChangedMsg >() { @Override diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java index 191bd9c882..1d97dd3a93 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java @@ -71,7 +71,7 @@ public class OchBusPresenter extends Presenter< OchBusFragment > implements IMog private IOchBusApiService mService; /** - * 运营状态 + * 运营状态、后端更具运营状态来判断车辆是否派单 */ private boolean mIsWorking = false; @@ -216,10 +216,16 @@ public class OchBusPresenter extends Presenter< OchBusFragment > implements IMog return nextStationIndex; } + /** + * 延时查询站点信心 + */ private void queryBusStationDelay() { handler.sendEmptyMessageDelayed( MSG_QUERY_BUS_STATION, QUERY_BUS_STATION_DELAY ); } + /** + * 在踩刹车、控制方向盘等操作后,会停止自动加水,重启自动驾驶的话相当于重新设置自动驾驶目的地 + */ public void restartAutopilot() { Logger.d( TAG, "重启自动驾驶===" + isGoingToNextStation ); if ( isGoingToNextStation ) { @@ -228,7 +234,7 @@ public class OchBusPresenter extends Presenter< OchBusFragment > implements IMog } /** - * 测试 + * 测试、重置站点状态 */ public void debugResetStationStatus() { OchBusResetRequest request = new OchBusResetRequest( Utils.getSn(), 1 ); @@ -403,14 +409,20 @@ public class OchBusPresenter extends Presenter< OchBusFragment > implements IMog } ); } + /** + * 播报下车乘客信息 + * + * @param o + */ private void playLeavePassengersMsg( QueryLeaveAwayPassengersResponse o ) { if ( currentStationIndex > stationList.size() - 1 ) { return; } String station = stationList.get( currentStationIndex ).getSiteName(); StringBuilder builder = new StringBuilder( "已到达" ); - if ( station.endsWith( "站" ) ) { - builder.append( station ); + builder.append( station ); + if ( !station.endsWith( "站" ) ) { + builder.append( "站" ); } if ( o == null || o.result == null || o.result.info == null || o.result.info.isEmpty() ) { // diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/V2XWarnDataDrawer.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/V2XWarnDataDrawer.java index b9f839be11..43edc1fd20 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/V2XWarnDataDrawer.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/V2XWarnDataDrawer.java @@ -59,8 +59,6 @@ public class V2XWarnDataDrawer extends BaseDrawer implements IMogoStatusChangedL public void onStatusChanged(StatusDescriptor descriptor, boolean isTrue) { Logger.d(TAG, "%s - %s", descriptor, isTrue); mChangeCarModeStatus = true; - - AdasRecognizedResultDrawer.getInstance().notifyVrModeChanged(); } public boolean isVrMode() {