From 6156ef4679a707ebdb34888d8b82c3d72ae74f5f Mon Sep 17 00:00:00 2001 From: liujing Date: Thu, 25 Mar 2021 14:24:19 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A2=B0=E6=92=9E=E9=A2=84=E8=AD=A6=E5=AF=B9?= =?UTF-8?q?=E5=A4=96=E6=8E=A5=E5=8F=A3=E8=B0=83=E9=80=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo-module-main-launcher/build.gradle | 2 ++ .../module/main/launcher/MainLauncherActivity.java | 11 +++++++++-- .../mogo/module/service/receiver/MogoReceiver.java | 3 +++ .../scene/warning/V2XFrontWarningScenario.java | 4 +++- .../main/java/com/mogo/service/v2x/IV2XProvider.java | 8 +------- .../java/com/mogo/service/impl/v2x/V2XManager.java | 7 ++++--- 6 files changed, 22 insertions(+), 13 deletions(-) diff --git a/main-extensions/mogo-module-main-launcher/build.gradle b/main-extensions/mogo-module-main-launcher/build.gradle index 3de4bf61cd..efd300157a 100644 --- a/main-extensions/mogo-module-main-launcher/build.gradle +++ b/main-extensions/mogo-module-main-launcher/build.gradle @@ -43,9 +43,11 @@ dependencies { if (Boolean.valueOf(RELEASE)) { api rootProject.ext.dependencies.modulemain implementation rootProject.ext.dependencies.mogooch + implementation rootProject.ext.dependencies.moduleservice } else { api project(":modules:mogo-module-main") implementation project(":OCH:mogo-och") + implementation project(':modules:mogo-module-service') } } diff --git a/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java b/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java index 90a635a1eb..77a83e18e8 100644 --- a/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java +++ b/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java @@ -17,6 +17,7 @@ import com.mogo.module.common.MogoApisHandler; import com.mogo.module.common.entity.V2XMessageEntity; import com.mogo.module.main.MainActivity; import com.mogo.module.main.cards.MogoModulesManager; +import com.mogo.module.service.receiver.MogoReceiver; import com.mogo.och.IMogoOCH; import com.mogo.service.intent.IMogoIntentListener; import com.mogo.service.statusmanager.IMogoStatusChangedListener; @@ -42,10 +43,10 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); DebugConfig.setNeedRequestUserInfo(true); - Log.d(TAG, "onCreateregisterIntentListener"); + Log.d(TAG, "onCreate"); + mServiceApis.getV2XListenerManager().registerIntentListener(MogoReceiver.ACTION_V2X_FRONT_WARNING,this); mServiceApis.getStatusManagerApi().registerStatusChangedListener(TAG, StatusDescriptor.VR_MODE, this); - mServiceApis.getV2XListenerManager().registerIntentListener(TAG,this); } @Override @@ -177,21 +178,27 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis mWarningLeft.setVisibility(View.GONE); mWarningRight.setVisibility(View.GONE); mWarningBottom.setVisibility(View.GONE); + break; case ALERT_THE_FRONT_CRASH_WARNING_LEFT: mWarningLeft.setVisibility(View.VISIBLE); mWarningTop.setVisibility(View.GONE); mWarningRight.setVisibility(View.GONE); mWarningBottom.setVisibility(View.GONE); + break; case ALERT_THE_FRONT_CRASH_WARNING_RIGHT: mWarningRight.setVisibility(View.VISIBLE); mWarningTop.setVisibility(View.GONE); mWarningLeft.setVisibility(View.GONE); mWarningBottom.setVisibility(View.GONE); + break; case ALERT_THE_FRONT_CRASH_WARNING_BOTTOM: mWarningBottom.setVisibility(View.VISIBLE); mWarningRight.setVisibility(View.GONE); mWarningTop.setVisibility(View.GONE); mWarningLeft.setVisibility(View.GONE); + break; + default: + break; } } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/receiver/MogoReceiver.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/receiver/MogoReceiver.java index 5ac444b6c0..07b2ed3cf1 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/receiver/MogoReceiver.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/receiver/MogoReceiver.java @@ -63,6 +63,9 @@ public class MogoReceiver extends BroadcastReceiver { // 同行者 查询xxx堵不堵发送的广播 public static final String ACTION_TXZ_BLOCK_SEARCH = "com.zhidao.roadcondition.roadinfo"; + //车路云—场景预警 + public static final String ACTION_V2X_FRONT_WARNING = "ACTION_V2X_FRONT_WARNING"; + private IMogoIntentManager mMogoIntentManager; public MogoReceiver(Context context) { diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/warning/V2XFrontWarningScenario.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/warning/V2XFrontWarningScenario.java index d0b3586f1a..50fee8dfac 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/warning/V2XFrontWarningScenario.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/warning/V2XFrontWarningScenario.java @@ -11,6 +11,7 @@ import com.mogo.module.common.MogoApisHandler; import com.mogo.module.common.entity.V2XMessageEntity; import com.mogo.module.service.MarkerServiceHandler; import com.mogo.module.service.MogoServices; +import com.mogo.module.service.receiver.MogoReceiver; import com.mogo.module.v2x.scenario.impl.AbsV2XScenario; import com.mogo.service.MogoServicePaths; import com.mogo.service.impl.MogoServiceApis; @@ -30,12 +31,13 @@ public class V2XFrontWarningScenario extends AbsV2XScenario { @Override public void init(@Nullable V2XMessageEntity v2XMessageEntity) { type = v2XMessageEntity.getType(); - MarkerServiceHandler.getApis().getV2XListenerManager().warningChangedWithType(type, TAG); + MarkerServiceHandler.getApis().getV2XListenerManager().warningChangedForListenerWithType(type, MogoReceiver.ACTION_V2X_FRONT_WARNING); show(); } @Override public void show() { + showWindow(); Log.d(TAG, "show"); } diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/v2x/IV2XProvider.java b/services/mogo-service-api/src/main/java/com/mogo/service/v2x/IV2XProvider.java index ded08a1eff..cded9418b3 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/v2x/IV2XProvider.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/v2x/IV2XProvider.java @@ -10,15 +10,9 @@ import com.alibaba.android.arouter.facade.template.IProvider; * @since: 2021/3/24 */ public interface IV2XProvider extends IProvider { - /** - * 注册意图接收者 - */ public void registerIntentListener(String intent, IV2XListener listener); - /** - * 注册意图接收者 - */ public void unregisterIntentListener(String intent, IV2XListener listener); - public void warningChangedWithType(int type, String command); + public void warningChangedForListenerWithType(int type, String command); } diff --git a/services/mogo-service/src/main/java/com/mogo/service/impl/v2x/V2XManager.java b/services/mogo-service/src/main/java/com/mogo/service/impl/v2x/V2XManager.java index 43929f64ed..e1cb2627d5 100644 --- a/services/mogo-service/src/main/java/com/mogo/service/impl/v2x/V2XManager.java +++ b/services/mogo-service/src/main/java/com/mogo/service/impl/v2x/V2XManager.java @@ -2,6 +2,7 @@ package com.mogo.service.impl.v2x; import android.content.Context; import android.content.Intent; +import android.nfc.Tag; import android.util.Log; import com.alibaba.android.arouter.facade.annotation.Route; @@ -28,11 +29,11 @@ public class V2XManager implements IV2XProvider { @Override public void registerIntentListener(String intent, IV2XListener listener) { if (listener == null || intent == null) { - Log.d("V2XManager", "listener/intent 为null"); + Log.d("V2XManager","listener == null || intent == null"); return; } - Log.d("V2XManager", "intent=="+intent+"/listener=="+listener); if (!mListeners.containsKey(intent)) { + Log.d("V2XManager","intent=="+intent+"listener"+listener); mListeners.put(intent, new CopyOnWriteArrayList<>()); } mListeners.get(intent).add(listener); @@ -46,7 +47,7 @@ public class V2XManager implements IV2XProvider { } @Override - public void warningChangedWithType(int type, String command) { + public void warningChangedForListenerWithType(int type, String command) { List listeners = mListeners.get(command); if (listeners != null && !listeners.isEmpty()) { Iterator iterator = listeners.iterator();