diff --git a/config.gradle b/config.gradle
index 40fc573a16..9bcd878a53 100644
--- a/config.gradle
+++ b/config.gradle
@@ -169,7 +169,7 @@ ext {
// obu sdk
obusdk : "com.zhidao.enterprise.smartv2x:smartv2x:1.0.0.3",
- mebulaobu : 'com.zhidao.support.nebulaobu:nebulaobu:1.0.0.1',
+ mebulaobu : 'com.zhidao.support.nebulaobu:nebulaobu:1.0.0.3',
// 左侧面板
moduleleftpanel : "com.mogo.module:module-left-panel:${MOGO_MODULE_LEFT_PANEL_VERSION}",
// 左侧面板空实现
diff --git a/modules/mogo-module-common/src/main/res/values-xhdpi-2560x1600/dimens.xml b/modules/mogo-module-common/src/main/res/values-xhdpi-2560x1600/dimens.xml
index b693e5557c..038dc5a7eb 100644
--- a/modules/mogo-module-common/src/main/res/values-xhdpi-2560x1600/dimens.xml
+++ b/modules/mogo-module-common/src/main/res/values-xhdpi-2560x1600/dimens.xml
@@ -6,4 +6,10 @@
106px
52px
37px
+ 435px
+ 186px
+ 133px
+ 37px
+ 27px
+
diff --git a/modules/mogo-module-common/src/main/res/values-xhdpi/dimens.xml b/modules/mogo-module-common/src/main/res/values-xhdpi/dimens.xml
index c81c22f39e..c43fe754e8 100644
--- a/modules/mogo-module-common/src/main/res/values-xhdpi/dimens.xml
+++ b/modules/mogo-module-common/src/main/res/values-xhdpi/dimens.xml
@@ -1128,6 +1128,10 @@
100px
28px
28px
-
+ 320px
+ 140px
+ 28px
+ 20px
+ 100px
diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java
index 1f19e955e8..d5fe0f553b 100644
--- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java
+++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java
@@ -1332,7 +1332,6 @@ public class EntranceFragment extends MvpFragment ");
//使用adas部门obu sdk (星云)
-// NebulaObuClient.getInstance().init(context);
-// NebulaObuClient.getInstance().registerObu(100);
-// NebulaObuClient.getInstance().registerObuListener(listener);
+ NebulaObuClient.getInstance().init(context);
+ NebulaObuClient.getInstance().registerObu(100);
+ NebulaObuClient.getInstance().registerObuListener(listener);
IntentFilter filter = new IntentFilter("com.mogo.launcher.v2x.action.EXCHANGE_OBU_TYPE");
context.registerReceiver(obuTypeExchangeReceiver, filter);
}
-// public void release() {
-// NebulaObuClient.getInstance().unregisterObu();
-// NebulaObuClient.getInstance().unregisterObuListener();
-// }
+ public void release() {
+ NebulaObuClient.getInstance().unregisterObu();
+ NebulaObuClient.getInstance().unregisterObuListener();
+ }
/**
* 星云obu数据监听
*/
-// private OnObuListener listener = new OnObuListener() {
-// @Override
-// public void onRegister() {
-// Log.d("liyz", "onRegister ------> ");
-// }
-//
-// @Override
-// public void onConnectFail(boolean isNeedReconnect) {
-// Log.d("liyz", "onConnectFail ------> ");
-// }
-//
-// @Override
-// public void onUnregister() {
-// Log.d("liyz", "onUnregister ------> ");
-// }
-//
-// @Override
-// public void onObuInfo(ObuInfo info) {
-// Log.d("liyz", "onObuInfo ------> ");
-// }
-//
-// @Override
-// public void onWarningInfo(List infoList) {
-// Log.d("liyz", "onWarningInfo ------> ");
-// }
-// };
+ private OnObuListener listener = new OnObuListener() {
+ @Override
+ public void onRegister() {
+ }
+ @Override
+ public void onConnectFail(boolean isNeedReconnect) {
+ Logger.d("liyz", "onConnectFail ------> ");
+ }
+
+ @Override
+ public void onUnregister() {
+ }
+
+ @Override
+ public void onObuInfo(ObuInfo info) {
+ Logger.d("liyz", "onObuInfo ------> " + info.toString());
+ }
+
+ @Override
+ public void onWarningInfo(List infoList) {
+ if (infoList != null) {
+ if (infoList.size() > 0) { //一般只有一个
+ ActiveSafetyInfo info = infoList.get(0);
+ Logger.d("liyz", "onWarningInfo type ------> " + info.getWarningtype() + "--size = " + infoList.size());
+ if (info.getWarningtype() == 3) {
+ if (MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode()) {
+ handleSdkObu();
+ }
+ }
+ }
+ }
+ }
+ };
+
+ private void handleSdkObu() {
+ V2XMessageEntity messageEntity = new V2XMessageEntity<>();
+ messageEntity.setType(V2XMessageEntity.V2XTypeEnum.ALERT_OBU_EVENT);
+
+ // 前车紧急制动预警
+ V2XObuEventEntity urgencyEvent = new V2XObuEventEntity();
+ urgencyEvent.setType(ObuConstant.TYPE_URGENCY_COLLISION_WARNING);
+ urgencyEvent.setDesc(V2XObuEventScenario.URGENCY_COLLISION_WARN_TEXT);
+ messageEntity.setContent(urgencyEvent);
+ V2XObuEventScenario.getInstance().init(messageEntity);
+ }
/**
* 用来处理30秒内不重复播报的情况
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/V2XObuEventScenario.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/V2XObuEventScenario.java
index 73e9af43d4..8cec04c52e 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/V2XObuEventScenario.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/V2XObuEventScenario.java
@@ -5,6 +5,7 @@ import android.graphics.Color;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
+import android.util.Log;
import com.mogo.commons.debug.DebugConfig;
import com.mogo.commons.voice.AIAssist;
@@ -20,6 +21,7 @@ import com.mogo.module.v2x.V2XServiceManager;
import com.mogo.module.v2x.listener.V2XWindowStatusListener;
import com.mogo.module.v2x.scenario.impl.AbsV2XScenario;
import com.mogo.module.v2x.utils.DrivingDirectionUtils;
+import com.mogo.module.v2x.utils.ToastUtils;
import com.mogo.utils.logger.Logger;
import com.zhidao.mogo.module.obu.ObuConstant;
import com.zhidao.mogo.module.obu.obu.bean.MogoObuEventInfo;
@@ -40,7 +42,8 @@ import static com.mogo.module.v2x.V2XConst.MODULE_NAME;
*/
public class V2XObuEventScenario extends AbsV2XScenario implements Handler.Callback {
- public static final String URGENCY_COLLISION_WARN_TEXT = "前车急刹,注意保持安全距离!";
+ public static final String URGENCY_COLLISION_WARN_TEXT_ONE = "前车急刹,注意保持安全距离!";
+ public static final String URGENCY_COLLISION_WARN_TEXT = "前车急刹";
private static final int MSG_CLOSE_OBU_WINDOW = 1001;
private static final int DEFAULT_EXPIRE_TIME = 20_000;
@@ -118,7 +121,7 @@ public class V2XObuEventScenario extends AbsV2XScenario imple
*/
@Override
public void show() {
- AIAssist.getInstance(V2XServiceManager.getContext()).speakTTSVoice(getV2XMessageEntity().getContent().getDesc());
+ AIAssist.getInstance(V2XServiceManager.getContext()).speakTTSVoice(URGENCY_COLLISION_WARN_TEXT_ONE);
showWindow();
if (handler.hasMessages(MSG_CLOSE_OBU_WINDOW)) {
handler.removeMessages(MSG_CLOSE_OBU_WINDOW);
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/V2XObuEventWindow.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/V2XObuEventWindow.java
index 5b686a320c..fca42116b3 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/V2XObuEventWindow.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/obu/V2XObuEventWindow.java
@@ -17,6 +17,7 @@ import com.mogo.module.v2x.R;
import com.mogo.module.v2x.V2XServiceManager;
import com.mogo.module.v2x.listener.V2XWindowStatusListener;
import com.mogo.module.v2x.scenario.view.IV2XWindow;
+import com.mogo.module.v2x.utils.ToastUtils;
import com.mogo.service.windowview.IMogoTopViewStatusListener;
import com.mogo.utils.logger.Logger;
import com.zhidao.mogo.module.obu.ObuConstant;
@@ -47,7 +48,7 @@ public class V2XObuEventWindow extends FrameLayout implements IV2XWindow
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file