diff --git a/config.gradle b/config.gradle index 4530ec1b0f..8b28c2b2ed 100644 --- a/config.gradle +++ b/config.gradle @@ -171,7 +171,9 @@ ext { // obu sdk obusdk : "com.zhidao.enterprise.smartv2x:smartv2x:1.0.0.3", - mebulaobu : 'com.zhidao.support.nebulaobu:nebulaobu:1.0.0.3', +// mebulaobu : 'com.zhidao.support.nebulaobu:nebulaobu:1.0.0.3', + mogoobu : 'com.zhidao.support.obu:mogoobu:1.0.0.2', + // 左侧面板 moduleleftpanel : "com.mogo.module:module-left-panel:${MOGO_MODULE_LEFT_PANEL_VERSION}", // 左侧面板空实现 diff --git a/modules/mogo-module-v2x/build.gradle b/modules/mogo-module-v2x/build.gradle index 4be22e5052..a299f8db01 100644 --- a/modules/mogo-module-v2x/build.gradle +++ b/modules/mogo-module-v2x/build.gradle @@ -94,7 +94,8 @@ dependencies { androidTestImplementation 'androidx.test.ext:junit:1.1.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' implementation project(':modules:mogo-module-obu') - implementation rootProject.ext.dependencies.mebulaobu +// implementation rootProject.ext.dependencies.mebulaobu + implementation rootProject.ext.dependencies.mogoobu } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XObuManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XObuManager.java index fc56d5c187..70e45e60ce 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XObuManager.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XObuManager.java @@ -38,11 +38,20 @@ import com.zhidao.mogo.module.obu.obu.IObuCallback; import com.zhidao.mogo.module.obu.obu.bean.MogoObuEventInfo; import com.zhidao.mogo.module.obu.obu.bean.MogoObuLocationInfo; import com.zhidao.mogo.module.obu.obu.bean.MogoObuTrafficLightInfo; -import com.zhidao.support.nebulaobu.NebulaObuClient; -import com.zhidao.support.nebulaobu.OnObuListener; -import com.zhidao.support.nebulaobu.model.ActiveSafetyInfo; -import com.zhidao.support.nebulaobu.model.ObuInfo; -import com.zhidao.support.nebulaobu.model.ObuInfoMore; +//import com.zhidao.support.nebulaobu.NebulaObuClient; +//import com.zhidao.support.nebulaobu.OnObuListener; +//import com.zhidao.support.nebulaobu.model.ActiveSafetyInfo; +//import com.zhidao.support.nebulaobu.model.ObuInfo; +//import com.zhidao.support.nebulaobu.model.ObuInfoMore; + +import com.zhidao.support.obu.MogoObuManager; +import com.zhidao.support.obu.OnMogoObuListener; +import com.zhidao.support.obu.model.CvxAppInitIndInfo; +import com.zhidao.support.obu.model.CvxHvCarIndInfo; +import com.zhidao.support.obu.model.CvxHvInfoIndInfo; +import com.zhidao.support.obu.model.CvxRvInfoIndInfo; +import com.zhidao.support.obu.model.CvxSetConfigCfmInfo; +import com.zhidao.support.obu.model.CvxV2vThreatIndInfo; import org.json.JSONArray; import org.json.JSONObject; @@ -94,9 +103,14 @@ public class V2XObuManager implements IObuCallback, Handler.Callback { obuManager.registerObuDataChangedListener(this); //使用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); + + //自研obu + MogoObuManager.getInstance().init(context); + MogoObuManager.getInstance().registerListener(mogoObuListener); + MogoObuManager.getInstance().unregisterListener(); // UiThreadHandler.postDelayed( () -> { // //TODO 测试 @@ -109,52 +123,122 @@ public class V2XObuManager implements IObuCallback, Handler.Callback { context.registerReceiver(obuTypeExchangeReceiver, filter); } - - public void release() { - NebulaObuClient.getInstance().unregisterObu(); - NebulaObuClient.getInstance().unregisterObuListener(); - } - - - /** - * 星云obu数据监听 - */ - private OnObuListener listener = new OnObuListener() { + private OnMogoObuListener mogoObuListener = new OnMogoObuListener() { @Override - public void onRegister() { + public void onConnected() { + //OBU连接成功 + Logger.d("liyz", "onConnected ------> "); } @Override public void onConnectFail(boolean isNeedReconnect) { Logger.d("liyz", "onConnectFail ------> "); + //OBU连接失败 } @Override - public void onUnregister() { + public void onDisconnect() { + Logger.d("liyz", "onDisconnect ------> "); + //OBU断开连接 } @Override - public void onObuInfo(ObuInfo info) { - Logger.d("liyz", "onObuInfo ------> " + info.toString()); + public void onReceiveOriginData(String data) { + super.onReceiveOriginData(data); + Logger.d("liyz", "onReceiveOriginData ------> data = " + data); + //接收到的原始数据 } @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(2); - } - } - } - } + public void onSendData(byte[] bytes) { + super.onSendData(bytes); + //发送的数据 + Logger.d("liyz", "onSendData ------> "); + } + + @Override + public void onCvxAppInitIndInfo(CvxAppInitIndInfo info) { + super.onCvxAppInitIndInfo(info); + Logger.d("liyz", "onCvxAppInitIndInfo ------> " + info.toString()); + //CV2X系统信息 + } + + @Override + public void onCvxSetConfigCfm(CvxSetConfigCfmInfo info) { + super.onCvxSetConfigCfm(info); + Logger.d("liyz", "onCvxSetConfigCfm ------> " + info.toString()); + //设置CV2X系统的配置确认 + } + + @Override + public void onCvxHvCarIndInfo(CvxHvCarIndInfo info) { + //主车车辆信息 + Logger.d("liyz", "onCvxHvCarIndInfo ------> " + info.toString()); + } + + @Override + public void onCvxHvInfoIndInfo(CvxHvInfoIndInfo info) { + //主车信息 + } + + @Override + public void onCvxRvInfoIndInfo(CvxRvInfoIndInfo info) { + //远车信息 + Logger.d("liyz", "onCvxRvInfoIndInfo ------> " + info.toString()); + } + + @Override + public void onCvxV2vThreatIndInfo(CvxV2vThreatIndInfo info) { + //预警信息 + Logger.e("liyz", "onCvxRvInfoIndInfo ------> " + info.toString()); } }; +// public void release() { +// NebulaObuClient.getInstance().unregisterObu(); +// NebulaObuClient.getInstance().unregisterObuListener(); +// } + + /** + * 星云obu数据监听 + */ +// 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(2); +// } +// } +// } +// } +// } +// }; + + private void handleSdkObu(int type) { V2XMessageEntity messageEntity = new V2XMessageEntity<>(); messageEntity.setType(V2XMessageEntity.V2XTypeEnum.ALERT_OBU_EVENT); 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 ec962d4b1b..596734eb33 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 @@ -44,7 +44,7 @@ public class V2XObuEventScenario extends AbsV2XScenario imple public static final String URGENCY_COLLISION_WARN_TEXT_ONE = "前车急刹,注意保持安全距离!"; public static final String URGENCY_COLLISION_WARN_TEXT = "前车急刹"; - public static final String URGENCY_CROING_WARN_TEXT = "交叉路口碰撞预警"; + public static final String URGENCY_CROING_WARN_TEXT = "注意交叉路口车辆"; private static final int MSG_CLOSE_OBU_WINDOW = 1001; private static final int DEFAULT_EXPIRE_TIME = 20_000; 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 44b5f8a400..fc5bbfb829 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 @@ -85,7 +85,7 @@ public class V2XObuEventWindow extends FrameLayout implements IV2XWindow