From a421f6c6aea1f096f40ec12386f6004046a2ea83 Mon Sep 17 00:00:00 2001 From: tongchenfei Date: Thu, 29 Oct 2020 16:41:42 +0800 Subject: [PATCH] opt traffic light --- .../extensions/utils/AdasNoticeHelper.java | 114 ++++++++++++------ .../module_ext_traffic_light_green.png | Bin 0 -> 7596 bytes .../module_ext_traffic_light_red.png | Bin 0 -> 5212 bytes .../module_ext_traffic_light_yellow.png | Bin 0 -> 5750 bytes .../module_ext_vr_mode_speed_green_bg.xml | 14 +++ ...ule_ext_vr_mode_traffic_light_green_bg.xml | 2 +- ...odule_ext_vr_mode_traffic_light_red_bg.xml | 19 +++ ...le_ext_vr_mode_traffic_light_yellow_bg.xml | 19 +++ .../res/layout/module_ext_layout_entrance.xml | 1 + .../src/main/res/values/colors.xml | 2 +- .../src/main/res/values/dimens.xml | 4 +- .../com/zhidao/mogo/module/obu/MockUtil.kt | 89 ++++++++++---- .../src/main/res/layout/mock_obu.xml | 87 ++++++++++--- 13 files changed, 265 insertions(+), 86 deletions(-) create mode 100644 modules/mogo-module-extensions/src/main/res/drawable-xhdpi/module_ext_traffic_light_green.png create mode 100644 modules/mogo-module-extensions/src/main/res/drawable-xhdpi/module_ext_traffic_light_red.png create mode 100644 modules/mogo-module-extensions/src/main/res/drawable-xhdpi/module_ext_traffic_light_yellow.png create mode 100644 modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_speed_green_bg.xml create mode 100644 modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_red_bg.xml create mode 100644 modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_yellow_bg.xml diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/utils/AdasNoticeHelper.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/utils/AdasNoticeHelper.java index 4a0a1cba9c..0d2eb539ee 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/utils/AdasNoticeHelper.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/utils/AdasNoticeHelper.java @@ -52,7 +52,7 @@ public class AdasNoticeHelper implements IMogoAdasWarnMessageCallback, IMogoLoca private TextView tvSelfSpeed, tvTrafficLight, tvLimitSpeed; - private int limitSpeed; + private int limitSpeed = -1; private int currentSpeed = 0; private String lightStatus = "G"; private String surplusTime; @@ -87,6 +87,7 @@ public class AdasNoticeHelper implements IMogoAdasWarnMessageCallback, IMogoLoca if (!isVrMode) { isVrMode = true; IntentFilter filter = new IntentFilter("com.mogo.launcher.adas.app.biz"); + filter.addAction("com.mogo.launcher.adas"); context.registerReceiver(adasReceiver, filter); MogoApisHandler.getInstance().getApis().getAdasControllerApi().addAdasWarnMessageCallback(this); MogoApisHandler.getInstance().getApis().getRegisterCenterApi().registerMogoLocationListener(TAG, this); @@ -111,6 +112,7 @@ public class AdasNoticeHelper implements IMogoAdasWarnMessageCallback, IMogoLoca tvLimitSpeed.setVisibility(View.GONE); MogoApisHandler.getInstance().getApis().getAdasControllerApi().removeAdasWarnMessageCallback(this); MogoApisHandler.getInstance().getApis().getRegisterCenterApi().unregisterMogoLocationListener(TAG); + MogoApisHandler.getInstance().getApis().getWebSocketManagerApi(context).unregisterOnWebSocketMessageListener(this); context.unregisterReceiver(adasReceiver); } @@ -125,19 +127,22 @@ public class AdasNoticeHelper implements IMogoAdasWarnMessageCallback, IMogoLoca if (msg.type == MogoADASWarnType.ADAS_WARNING_LIMIT_SPEED) { // 收到限速信息,更新界面 - if (tvLimitSpeed != null) { - tvLimitSpeed.post(() -> { - handler.removeMessages(MSG_HIDE_LIMIT_SPEED); + limitSpeed = Integer.parseInt(msg.value); + drawLimitSpeed(); + } + } - if (tvLimitSpeed.getVisibility() == View.GONE) { - tvLimitSpeed.setVisibility(View.VISIBLE); - } - tvLimitSpeed.setText(msg.value); - limitSpeed = Integer.parseInt(msg.value); + private void drawLimitSpeed(){ + if (tvLimitSpeed != null) { + tvLimitSpeed.post(() -> { + handler.removeMessages(MSG_HIDE_LIMIT_SPEED); - handler.sendEmptyMessageDelayed(MSG_HIDE_LIMIT_SPEED, HIDE_LIMIT_SPEED_DELAY); - }); - } + if (tvLimitSpeed.getVisibility() == View.GONE) { + tvLimitSpeed.setVisibility(View.VISIBLE); + } + tvLimitSpeed.setText(limitSpeed+""); + handler.sendEmptyMessageDelayed(MSG_HIDE_LIMIT_SPEED, HIDE_LIMIT_SPEED_DELAY); + }); } } @@ -153,6 +158,15 @@ public class AdasNoticeHelper implements IMogoAdasWarnMessageCallback, IMogoLoca if (tvSelfSpeed.getVisibility() == View.GONE) { tvSelfSpeed.setVisibility(View.VISIBLE); } + if (limitSpeed != -1 && currentSpeed > limitSpeed) { + // 显示红色 + tvSelfSpeed.setTextColor(context.getResources().getColor(R.color.module_ext_vr_mode_left_traffic_light_red)); + tvSelfSpeed.setBackgroundResource(R.drawable.module_ext_vr_mode_speed_red_bg); + }else{ + // 显示白 + tvSelfSpeed.setTextColor(context.getResources().getColor(R.color.module_ext_vr_mode_left_traffic_light_white)); + tvSelfSpeed.setBackgroundResource(R.drawable.module_ext_vr_mode_speed_white_bg); + } tvSelfSpeed.setText("" + currentSpeed); Logger.d(TAG, "onLocationChange: " + currentSpeed); }); @@ -164,6 +178,7 @@ public class AdasNoticeHelper implements IMogoAdasWarnMessageCallback, IMogoLoca public boolean handleMessage(Message msg) { switch (msg.what) { case MSG_REFRESH_CAR_STRATEGY: + // todo 暂时不采用此种渲染方式 // 自车速度 tvSelfSpeed.setText("" + currentSpeed); // 红绿灯 @@ -190,6 +205,7 @@ public class AdasNoticeHelper implements IMogoAdasWarnMessageCallback, IMogoLoca } return true; case MSG_HIDE_LIMIT_SPEED: + limitSpeed = -1; tvLimitSpeed.setVisibility(View.GONE); return true; case MSG_HIDE_TRAFFIC_LIGHT_BY_CLOUD: @@ -218,24 +234,30 @@ public class AdasNoticeHelper implements IMogoAdasWarnMessageCallback, IMogoLoca if (!isVrMode) { return; } - - int type = intent.getIntExtra("type", -1); - if (type == 2) { - // 红绿灯处理 - String data = intent.getStringExtra("data"); - if (data != null && !data.isEmpty()) { - try { - JSONObject jsonObject = new JSONObject(data); - String lightStatus = jsonObject.optString("lightStatus"); - String surplusTime = jsonObject.optString("surplusTime"); - if (!lightStatus.isEmpty() && !surplusTime.isEmpty()) { - handleObuTrafficLightInfo(lightStatus, surplusTime); - } else { - Logger.d(TAG, "红绿灯必要信息都为空,不做展示"); + String action = intent.getAction(); + if("com.mogo.launcher.adas".equals(action)){ + // 收到限速信息 + limitSpeed = intent.getIntExtra("adas_speed_limit", -1); + drawLimitSpeed(); + }else { + int type = intent.getIntExtra("type", -1); + if (type == 2) { + // 红绿灯处理 + String data = intent.getStringExtra("data"); + if (data != null && !data.isEmpty()) { + try { + JSONObject jsonObject = new JSONObject(data); + String lightStatus = jsonObject.optString("lightStatus"); + String surplusTime = jsonObject.optString("surplusTime"); + if (!lightStatus.isEmpty() && !surplusTime.isEmpty()) { + handleObuTrafficLightInfo(lightStatus, surplusTime); + } else { + Logger.d(TAG, "红绿灯必要信息都为空,不做展示"); + } + } catch (Exception e) { + Logger.e(TAG, e, "解析adas数据异常"); + e.printStackTrace(); } - } catch (Exception e) { - Logger.e(TAG, e, "解析adas数据异常"); - e.printStackTrace(); } } } @@ -256,26 +278,35 @@ public class AdasNoticeHelper implements IMogoAdasWarnMessageCallback, IMogoLoca if (tvTrafficLight != null && !handler.hasMessages(MSG_HIDE_TRAFFIC_LIGHT_BY_OBU)) { handler.removeMessages(MSG_HIDE_TRAFFIC_LIGHT_BY_CLOUD); // todo drawTrafficLight - String lightStatus; + String lightStatus = null; switch (roadData.getLightStatus()) { case 1: // 红灯 lightStatus = "R"; break; + case 2: + // 绿灯 + lightStatus = "G"; + break; case 3: // 黄灯 lightStatus = "Y"; break; default: - // 默认绿灯 - lightStatus = "G"; break; } - int diff = (int) ((System.currentTimeMillis() - roadData.getSystemTime()) / 1000); - int leftTime = roadData.getLightLeftTime() - diff; - drawTrafficLight(lightStatus, "" + leftTime); - handler.sendEmptyMessageDelayed(MSG_HIDE_TRAFFIC_LIGHT_BY_CLOUD, - HIDE_TRAFFIC_LIGHT_DELAY); + if(lightStatus == null){ + handler.sendEmptyMessage(MSG_HIDE_TRAFFIC_LIGHT_BY_CLOUD); + }else { + int diff = (int) ((System.currentTimeMillis() - roadData.getSystemTime()) / 1000); + int leftTime = roadData.getLightLeftTime() - diff; + if (leftTime < 0) { + leftTime = 0; + } + drawTrafficLight(lightStatus, "" + leftTime); + handler.sendEmptyMessageDelayed(MSG_HIDE_TRAFFIC_LIGHT_BY_CLOUD, + HIDE_TRAFFIC_LIGHT_DELAY); + } } } @@ -291,12 +322,21 @@ public class AdasNoticeHelper implements IMogoAdasWarnMessageCallback, IMogoLoca switch (lightStatus) { case "Y": // 黄灯 + tvTrafficLight.setTextColor(context.getResources().getColor(R.color.module_ext_vr_mode_left_traffic_light_yellow)); + tvTrafficLight.setBackgroundResource(R.drawable.module_ext_vr_mode_traffic_light_yellow_bg); + tvTrafficLight.setCompoundDrawablesWithIntrinsicBounds(R.drawable.module_ext_traffic_light_yellow, 0, 0, 0); break; case "R": // 红灯 + tvTrafficLight.setTextColor(context.getResources().getColor(R.color.module_ext_vr_mode_left_traffic_light_red)); + tvTrafficLight.setBackgroundResource(R.drawable.module_ext_vr_mode_traffic_light_red_bg); + tvTrafficLight.setCompoundDrawablesWithIntrinsicBounds(R.drawable.module_ext_traffic_light_red, 0, 0, 0); break; default: // 默认绿灯 + tvTrafficLight.setTextColor(context.getResources().getColor(R.color.module_ext_vr_mode_left_traffic_light_green)); + tvTrafficLight.setBackgroundResource(R.drawable.module_ext_vr_mode_traffic_light_green_bg); + tvTrafficLight.setCompoundDrawablesWithIntrinsicBounds(R.drawable.module_ext_traffic_light_green, 0, 0, 0); break; } tvTrafficLight.setText(surplusTime + "S"); diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/module_ext_traffic_light_green.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/module_ext_traffic_light_green.png new file mode 100644 index 0000000000000000000000000000000000000000..7d7ddedd8a493aaec0c672e5353d5d59e6532fcf GIT binary patch literal 7596 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 literal 0 HcmV?d00001 diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/module_ext_traffic_light_red.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/module_ext_traffic_light_red.png new file mode 100644 index 0000000000000000000000000000000000000000..694cfd072585b4fc65820428a2435466206267ec GIT binary patch literal 5212 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 B6p{b{ literal 0 HcmV?d00001 diff --git a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_speed_green_bg.xml b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_speed_green_bg.xml new file mode 100644 index 0000000000..d13f3fc8a1 --- /dev/null +++ b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_speed_green_bg.xml @@ -0,0 +1,14 @@ + + + + + + + + + \ No newline at end of file diff --git a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_green_bg.xml b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_green_bg.xml index 478755d48b..0f824c43c0 100644 --- a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_green_bg.xml +++ b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_green_bg.xml @@ -5,7 +5,7 @@ diff --git a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_red_bg.xml b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_red_bg.xml new file mode 100644 index 0000000000..10a256f8cc --- /dev/null +++ b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_red_bg.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_yellow_bg.xml b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_yellow_bg.xml new file mode 100644 index 0000000000..2edd68c52b --- /dev/null +++ b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_vr_mode_traffic_light_yellow_bg.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/mogo-module-extensions/src/main/res/layout/module_ext_layout_entrance.xml b/modules/mogo-module-extensions/src/main/res/layout/module_ext_layout_entrance.xml index e1c8837aa8..fb3ee3ce1c 100644 --- a/modules/mogo-module-extensions/src/main/res/layout/module_ext_layout_entrance.xml +++ b/modules/mogo-module-extensions/src/main/res/layout/module_ext_layout_entrance.xml @@ -254,6 +254,7 @@ android:background="@drawable/module_ext_vr_mode_traffic_light_green_bg" android:gravity="center" android:text="26S" + android:drawableLeft="@drawable/module_ext_traffic_light_green" android:textColor="@color/module_ext_vr_mode_left_traffic_light_green" android:textSize="@dimen/module_ext_vr_mode_traffic_light_text_size" android:visibility="gone" diff --git a/modules/mogo-module-extensions/src/main/res/values/colors.xml b/modules/mogo-module-extensions/src/main/res/values/colors.xml index 24016f710c..943bde9777 100644 --- a/modules/mogo-module-extensions/src/main/res/values/colors.xml +++ b/modules/mogo-module-extensions/src/main/res/values/colors.xml @@ -7,7 +7,7 @@ #7DE261 #FF2B2B - #FFF + #E3BC59 #FFF diff --git a/modules/mogo-module-extensions/src/main/res/values/dimens.xml b/modules/mogo-module-extensions/src/main/res/values/dimens.xml index e23521fa36..8637aff811 100644 --- a/modules/mogo-module-extensions/src/main/res/values/dimens.xml +++ b/modules/mogo-module-extensions/src/main/res/values/dimens.xml @@ -179,6 +179,8 @@ 32px 15px - 100px + 30px + 689px + 86px \ No newline at end of file diff --git a/modules/mogo-module-obu/src/main/java/com/zhidao/mogo/module/obu/MockUtil.kt b/modules/mogo-module-obu/src/main/java/com/zhidao/mogo/module/obu/MockUtil.kt index ab9f7348b8..68e61eb3c7 100644 --- a/modules/mogo-module-obu/src/main/java/com/zhidao/mogo/module/obu/MockUtil.kt +++ b/modules/mogo-module-obu/src/main/java/com/zhidao/mogo/module/obu/MockUtil.kt @@ -1,28 +1,22 @@ package com.zhidao.mogo.module.obu import android.content.Context +import android.content.Intent import android.os.Handler import android.os.Message import android.view.LayoutInflater import android.view.View import android.widget.Button import com.alibaba.android.arouter.launcher.ARouter -import com.mogo.commons.debug.DebugConfig import com.mogo.service.IMogoServiceApis import com.mogo.service.MogoServicePaths import com.mogo.utils.logger.Logger -import com.zhidao.mogo.module.obu.obu.* +import com.zhidao.mogo.module.obu.obu.BaseObu +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.MogoObuTrafficLightInfo -import com.zhidao.mogo.module.obu.socket.IUdpSocketCallback -import com.zhidao.smartv2x.listener.OnMessageReceiveListener -import com.zhidao.smartv2x.model.obu.CarEventInfo -import com.zhidao.smartv2x.model.obu.TrafficLightInfo import io.reactivex.Observable -import io.reactivex.Scheduler -import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.disposables.Disposable -import io.reactivex.schedulers.Schedulers import io.reactivex.schedulers.Schedulers.io import java.util.concurrent.TimeUnit import kotlin.random.Random @@ -56,22 +50,25 @@ class MockUtil:Handler.Callback { return false } + private var cLightStatus: String = "G" + private var cSurplusTime: String = "10" + fun init(context: Context,obu:BaseObu){ Logger.d(TAG, "使用模拟obu数据===") this.context = context dataCallback = obu.callback view = LayoutInflater.from(context).inflate(R.layout.mock_obu, null) - view.findViewById