diff --git a/.idea/misc.xml b/.idea/misc.xml index 8e04f8cd28..c689fa7f13 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -15,6 +15,7 @@ + diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/enum/WarningTypeEnum.kt b/modules/mogo-module-common/src/main/java/com/mogo/module/common/enum/WarningTypeEnum.kt new file mode 100644 index 0000000000..fbc1f5fc8d --- /dev/null +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/enum/WarningTypeEnum.kt @@ -0,0 +1,46 @@ +package com.mogo.module.common.enum + +/** + * author : donghongyu + * e-mail : 1358506549@qq.com + * date : 2020-01-1514:47 + * desc : 车机启动状态 + * version: 1.0 + */ +interface WarningTypeEnum { + + companion object { + const val WARNING_PRIOR_COLLISION = 20001//前向碰撞 + const val WARNING_INTERSECTION_COLLISION = 20002//交叉路口碰撞 + const val WARNING_LEFT_AUXILIARY = 20003//左转辅助 + const val WARNING_BLIND_AREA_COLLISION = 20004//盲区/变道辅助 + const val WARNING_REVERSE_OVERTAKING = 20005//逆向超车 + const val WARNING_VEHICLE_BRAKES = 20006//紧急制动-前车急刹 + const val WARNING_ABNORMAL_VEHICLE = 20007//异常车辆提醒 + const val WARNING_VEHICLE_CONTROL = 20008//车辆失控预警 + const val WARNING_SPECIAL_VEHICLE_ACCESS = 20009//特种车辆通行 + const val WARNING_SPEED_LIMIT = 20010//限速预警 + const val WARNING_RED_LIGHT = 20011//闯红灯预警 + const val warning_congestion = 20012//前方道路拥堵 + const val WARNING_TRAFFIC_SPEED_GUIDE = 20013//绿波通行车速引导 + const val WARNING_CAR_PLATE = 20014//车内标牌 + + const val WARNING_VULNERABLE_TRANSPORT_PARTICIPANT = 20015//弱势交通参与者预警 + + + const val WARNING_ROAD_HAZARDS = 20016//道路危险情况预警 + + const val WARNING_OVER_SPEED = 20017//超速预警 + const val WARNING_ROUNDABOUT = 20019//环岛 + const val WARNING_GIVE_WAY = 20020//减速让行 + const val WARNING_BAN_ASTERN = 20021//禁止倒车 + const val WARNING_TURN_LEFT_SHARP = 20022//左转急弯 + const val WARNING_TURN_RIGHT_SHARP = 20023//左转急弯 + const val WARNING_TRAMCAR = 20024//有轨电车 + const val WARNING_TEST_SECTION = 20025//考试路段 + const val WARNING_ACCIDENT_PRONE_ROAD_SECTION = 20026//事故易发路段 + const val WARNING_HUMP_BRIDGE = 20027//驼峰桥 + const val WARNING_SCHOOL = 20028// 学校 + + } +} \ No newline at end of file diff --git a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/WaringConst.java b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/WaringConst.java index 4010c176cc..c8e9158853 100644 --- a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/WaringConst.java +++ b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/WaringConst.java @@ -7,6 +7,9 @@ package com.mogo.module.hmi; public class WaringConst { public static String MODULE_NAME = "MODULE_LEFT_PANEL"; - public static String BROADCAST_TEST_CONTROL_TYPE_EXTRA_KEY = "warningType"; + public static String BROADCAST_V2X_TYPE_EXTRA_KEY = "v2xType"; + public static String BROADCAST_V2X_ALERT_CONTENT_EXTRA_KEY = "alertContent"; + public static String BROADCAST_V2X_TTS_CONTENT_EXTRA_KEY = "ttsContent"; + public static String BROADCAST_V2X_TAG_EXTRA_KEY = "tag"; } diff --git a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/enums/WarningTypeEnum.kt b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/enums/WarningTypeEnum.kt deleted file mode 100644 index e16edc6dfb..0000000000 --- a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/enums/WarningTypeEnum.kt +++ /dev/null @@ -1,92 +0,0 @@ -package com.mogo.module.hmi.enums - -/** - * author : donghongyu - * e-mail : 1358506549@qq.com - * date : 2020-01-1514:47 - * desc : 车机启动状态 - * version: 1.0 - */ -interface WarningTypeEnum { - companion object { - /** - * 前向碰撞 - */ - const val WARING_TYPE_PRIOR_COLLISION = 20001 - - /** - * 交叉路口碰撞 - */ - const val WARING_TYPE_INTERSECTION_COLLISION = 20002 - - /** - * 左转辅助 - */ - const val WARING_TYPE_LEFT_AUXILIARY = 20003 - - /** - * 盲区/变道辅助 - */ - const val WARING_TYPE_BLIND_AREA_COLLISION = 20004 - - /** - * 逆向超车 - */ - const val WARING_TYPE_REVERSE_OVERTAKING = 20005 - - /** - * 紧急制动-前车急刹 - */ - const val WARING_TYPE_VEHICLE_BRAKES = 20006 - - /** - * 异常车辆提醒 - */ - const val WARING_TYPE_ABNORMAL_VEHICLE = 20007 - - /** - * 车辆失控预警 - */ - const val WARING_TYPE_VEHICLE_CONTROL = 20008 - - /** - * 道路危险情况预警 - */ - const val WARING_TYPE_ROAD_HAZARDS = 20009 - - /** - * 限速预警 - */ - const val WARING_TYPE_SPEED_LIMIT = 20010 - - /** - * 闯红灯预警 - */ - const val WARING_TYPE_RED_LIGHT = 20011 - - /** - * 弱势交通参与者预警 - */ - const val WARING_TYPE_VULNERABLE_TRANSPORT_PARTICIPANT = 20012 - - /** - * 绿波通行车速引导 - */ - const val WARING_TYPE_TRAFFIC_SPEED_GUIDE = 20013 - - /** - * 车内标牌 - */ - const val WARING_TYPE_CAR_PLATE = 20014 - - /** - * 前方道路拥堵 - */ - const val WARING_TYPE_TRAFFIC_JAM_AHEAD = 20015 - - /** - * 特种车辆通行 - */ - const val WARING_TYPE_SPECIAL_VEHICLE_ACCESS = 20016 - } -} \ No newline at end of file diff --git a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloat.kt b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloat.kt index b0cddce603..1a5cd648ea 100644 --- a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloat.kt +++ b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloat.kt @@ -46,6 +46,11 @@ class WarningFloat { */ fun setSidePattern(sidePattern: SidePattern) = apply { config.sidePattern = sidePattern } + /** + * 设置倒计时关闭 + * @param countDownTime 倒计时时间 + */ + fun setCountDownTime(countDownTime: Long) = apply { config.countDownTime = countDownTime } /** * 设置浮窗的布局文件,以及布局的操作接口 diff --git a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloatWindowHelper.kt b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloatWindowHelper.kt index 0083edb245..6d33cdd2b4 100644 --- a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloatWindowHelper.kt +++ b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloatWindowHelper.kt @@ -34,13 +34,15 @@ internal class WarningFloatWindowHelper( var frameLayout: ParentFrameLayout? = null private var enterAnimator: Animator? = null - fun createWindow() { - if (context is Activity) { + fun createWindow(): Boolean { + return if (context is Activity) { initParams() addView() config.isShow = true + true } else { Logger.e(TAG, "activity 必须是 Activity 的实现") + false } } @@ -174,6 +176,13 @@ internal class WarningFloatWindowHelper( exitAnim() false } + + // 设置倒计时指定秒数后自动关闭Window + if (config.countDownTime > 0) { + frameLayout?.postDelayed({ + exitAnim() + }, config.countDownTime) + } } diff --git a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloatWindowManager.kt b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloatWindowManager.kt index 6de0c254d0..83d78a2a3f 100644 --- a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloatWindowManager.kt +++ b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningFloatWindowManager.kt @@ -1,7 +1,6 @@ package com.mogo.module.hmi.notification import android.content.Context -import android.view.View import java.util.concurrent.ConcurrentHashMap /** @@ -9,18 +8,30 @@ import java.util.concurrent.ConcurrentHashMap * @date 2021/8/5 5:17 下午 */ internal object WarningFloatWindowManager { + private val TAG: String = "WarningFloatWindowManager" private const val DEFAULT_TAG = "default" - val windowMap = ConcurrentHashMap() + private val windowMap = ConcurrentHashMap() - fun create(activity: Context, config: WarningNotificationConfig) { - WarningFloatWindowHelper(activity, config).createWindow() + /** + * 创建浮窗,tag不存在创建,tag存在创建失败 + * 创建结果通过tag添加到相应的map进行管理 + */ + fun create(context: Context, config: WarningNotificationConfig) { + if (!checkTag(config)) { + val helper = WarningFloatWindowHelper(context, config) + if (helper.createWindow()) windowMap[config.floatTag!!] = helper + } else { + // 存在相同的tag,直接创建失败 + config.callbacks?.createdResult(false, "存在相同的tag,直接创建失败", null) + } } - - fun dismiss(tag: String? = null, force: Boolean) { - - } + /** + * 关闭浮窗,执行浮窗的退出动画 + */ + fun dismiss(tag: String? = null, force: Boolean = false) = + getHelper(tag)?.run { if (force) remove(force) else exitAnim() } /** * 移除当条浮窗信息,在退出完成后调用 @@ -32,6 +43,15 @@ internal object WarningFloatWindowManager { */ private fun getTag(tag: String?) = tag ?: DEFAULT_TAG + /** + * 检测浮窗的tag是否有效,不同的浮窗必须设置不同的tag + */ + private fun checkTag(config: WarningNotificationConfig): Boolean { + // 如果未设置tag,设置默认tag + config.floatTag = getTag(config.floatTag) + return windowMap.containsKey(config.floatTag!!) + } + /** * 获取具体的系统浮窗管理类 */ diff --git a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningNotificationConfig.kt b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningNotificationConfig.kt index ddaa97702d..10e0154dfb 100644 --- a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningNotificationConfig.kt +++ b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/notification/WarningNotificationConfig.kt @@ -32,6 +32,9 @@ data class WarningNotificationConfig( // 浮窗显示类型(默认只在当前页显示) var showPattern: ShowPattern = ShowPattern.CURRENT_ACTIVITY, + // 倒计时关闭window,-1 表示不自动关闭, 单位毫秒。1s = 1000ms + var countDownTime: Long = 0, + // 浮窗的摆放方式,使用系统的Gravity属性 var gravity: Int = 0, // 坐标的偏移量 diff --git a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/receiver/WarningBroadcastReceiver.kt b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/receiver/WarningBroadcastReceiver.kt index bf65894e50..d50cffa09e 100644 --- a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/receiver/WarningBroadcastReceiver.kt +++ b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/receiver/WarningBroadcastReceiver.kt @@ -5,7 +5,6 @@ import android.content.Context import android.content.Intent import com.alibaba.android.arouter.launcher.ARouter import com.mogo.module.hmi.WaringConst -import com.mogo.module.hmi.enums.WarningTypeEnum import com.mogo.service.IMogoServiceApis import com.mogo.service.MogoServicePaths import com.mogo.service.warning.IMoGoWaringProvider @@ -25,12 +24,15 @@ class WarningBroadcastReceiver : BroadcastReceiver() { .navigation(context) as IMogoServiceApis mIMoGoWaringProvider = mMogoServiceApis!!.waringProviderApi mContext = context - val warningType = - intent.getIntExtra(WaringConst.BROADCAST_TEST_CONTROL_TYPE_EXTRA_KEY, 0) - Logger.d(TAG, "warningType:$warningType") - + val v2xType = + intent.getIntExtra(WaringConst.BROADCAST_V2X_TYPE_EXTRA_KEY, 0) + val alertContent = + intent.getStringExtra(WaringConst.BROADCAST_V2X_ALERT_CONTENT_EXTRA_KEY) + val ttsContent = + intent.getStringExtra(WaringConst.BROADCAST_V2X_TTS_CONTENT_EXTRA_KEY) + Logger.d(TAG, "v2xType:$v2xType alertContent:$alertContent ttsContent:$ttsContent") // 分发场景 - dispatchWaring(warningType) + dispatchWaring(v2xType, alertContent, ttsContent, Random.nextDouble().toString()) } catch (e: Exception) { e.printStackTrace() } @@ -39,44 +41,24 @@ class WarningBroadcastReceiver : BroadcastReceiver() { /** * 分发处理场景 * - * @param warningType 场景类型 + * @param v2xType V2X类型 + * @param alertContent 提醒文本 + * @param ttsContent tts语音播报消息 + * @param tag tag绑定弹窗的标志 */ - private fun dispatchWaring(warningType: Int) { - mIMoGoWaringProvider!!.showWarningV2X(warningType, "预警消息", Random.nextDouble().toString()) - when (warningType) { - WarningTypeEnum.WARING_TYPE_PRIOR_COLLISION -> { - } - WarningTypeEnum.WARING_TYPE_INTERSECTION_COLLISION -> { - } - WarningTypeEnum.WARING_TYPE_LEFT_AUXILIARY -> { - } - WarningTypeEnum.WARING_TYPE_BLIND_AREA_COLLISION -> { - } - WarningTypeEnum.WARING_TYPE_REVERSE_OVERTAKING -> { - } - WarningTypeEnum.WARING_TYPE_VEHICLE_BRAKES -> { - } - WarningTypeEnum.WARING_TYPE_ABNORMAL_VEHICLE -> { - } - WarningTypeEnum.WARING_TYPE_VEHICLE_CONTROL -> { - } - WarningTypeEnum.WARING_TYPE_ROAD_HAZARDS -> { - } - WarningTypeEnum.WARING_TYPE_SPEED_LIMIT -> { - } - WarningTypeEnum.WARING_TYPE_RED_LIGHT -> { - } - WarningTypeEnum.WARING_TYPE_VULNERABLE_TRANSPORT_PARTICIPANT -> { - } - WarningTypeEnum.WARING_TYPE_TRAFFIC_SPEED_GUIDE -> { - } - WarningTypeEnum.WARING_TYPE_CAR_PLATE -> { - } - WarningTypeEnum.WARING_TYPE_TRAFFIC_JAM_AHEAD -> { - } - WarningTypeEnum.WARING_TYPE_SPECIAL_VEHICLE_ACCESS -> { - } - } + private fun dispatchWaring( + v2xType: Int, + alertContent: String?, + ttsContent: String?, + tag: String? + ) { + mIMoGoWaringProvider!!.showWarningV2X( + v2xType, + alertContent, + ttsContent, + tag + ) + } companion object { diff --git a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/ui/MoGoWarningContract.kt b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/ui/MoGoWarningContract.kt index 7c8253b681..92760a4c3c 100644 --- a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/ui/MoGoWarningContract.kt +++ b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/ui/MoGoWarningContract.kt @@ -19,9 +19,16 @@ interface MoGoWarningContract { * 展示VR下V2X预警 * * @param v2xType V2X类型 - * @param alertMessage 提醒文本 + * @param alertContent 提醒文本 + * @param ttsContent tts语音播报消息 + * @param tag tag绑定弹窗的标志 */ - fun showWarningV2X(v2xType: Int, alertMessage: String, tag: String) + fun showWarningV2X( + v2xType: Int, + alertContent: String? = null, + ttsContent: String? = null, + tag: String? = null + ) /** * 关闭指定floatTag 的 VR下V2X预警弹窗 diff --git a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/ui/MoGoWarningFragment.kt b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/ui/MoGoWarningFragment.kt index 003b33fa9f..b4818245cf 100644 --- a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/ui/MoGoWarningFragment.kt +++ b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/ui/MoGoWarningFragment.kt @@ -10,6 +10,8 @@ import com.mogo.module.hmi.R import com.mogo.module.hmi.notification.WarningFloat import com.mogo.module.hmi.notification.anim.DefaultAnimator import com.mogo.module.hmi.notification.enums.SidePattern +import com.mogo.module.hmi.ui.widget.ViewV2XNotification +import com.mogo.module.hmi.utils.WarningUtils /** * @author xiaoyuzhou @@ -29,13 +31,36 @@ class MoGoWarningFragment : MvpFragment { + var warningIconId = R.drawable.icon_warning_v2x_abnormal_vehicle + var warningContent = "注意周边环境" + var warningTts = "注意周边环境" + + when (v2xType) { + WarningTypeEnum.WARNING_PRIOR_COLLISION -> { + warningIconId = R.drawable.icon_warning_v2x_collision_warning + warningContent = "前车碰撞预警" + warningTts = "前车碰撞预警" + }//前向碰撞 + WarningTypeEnum.WARNING_INTERSECTION_COLLISION -> { + warningIconId = R.drawable.icon_warning_v2x_collision_warning + warningContent = "注意交叉路口车辆" + warningTts = "注意交叉路口车辆" + }//交叉路口碰撞 + WarningTypeEnum.WARNING_LEFT_AUXILIARY -> { + warningIconId = R.drawable.icon_warning_v2x_collision_warning + warningContent = "注意左前车辆" + warningTts = "注意左前车辆" + }//左转辅助 + WarningTypeEnum.WARNING_BLIND_AREA_COLLISION -> { + warningIconId = R.drawable.icon_warning_v2x_blind_area_collision + warningContent = "注意后方来车" + warningTts = "注意后方来车" + }//盲区/变道辅助 + WarningTypeEnum.WARNING_REVERSE_OVERTAKING -> { + warningIconId = R.drawable.icon_warning_v2x_blind_area_collision + warningContent = "注意逆向车道车辆" + warningTts = "注意逆向车道车辆" + }//逆向超车 + WarningTypeEnum.WARNING_VEHICLE_BRAKES -> { + warningIconId = R.drawable.icon_warning_v2x_emergency_brake + warningContent = "前车急刹车" + warningTts = "前车急刹车" + }//紧急制动-前车急刹 + WarningTypeEnum.WARNING_ABNORMAL_VEHICLE -> { + warningIconId = R.drawable.icon_warning_v2x_abnormal_vehicle + warningContent = "前车异常" + warningTts = "前车异常" + }//异常车辆提醒 + WarningTypeEnum.WARNING_VEHICLE_CONTROL -> { + warningIconId = R.drawable.icon_warning_v2x_vehicle_control + warningContent = "前车失控预警" + warningTts = "前车失控预警" + }//车辆失控预警 + WarningTypeEnum.WARNING_SPECIAL_VEHICLE_ACCESS -> { + warningIconId = R.drawable.icon_warning_v2x_special_vehicle_access + warningContent = "请避让特种车辆" + warningTts = "后方存在特殊车辆,请安排避让" + }//特种车辆通行 + WarningTypeEnum.WARNING_SPEED_LIMIT -> { + warningIconId = R.drawable.icon_warning_v2x_traffic_lights_red + warningContent = "路口红灯,禁止通行" + warningTts = "路口红灯,禁止通行" + }//闯红灯预警 + WarningTypeEnum.WARNING_VULNERABLE_TRANSPORT_PARTICIPANT -> { + warningIconId = R.drawable.icon_warning_v2x_pedestrian_crossing + warningContent = "行人碰撞预警" + warningTts = "行人碰撞预警" + }//弱势交通参与者碰撞预警 + WarningTypeEnum.WARNING_TRAFFIC_SPEED_GUIDE -> { + warningIconId = R.drawable.icon_warning_v2x_traffic_lights_green + warningContent = "绿波通行" + warningTts = "绿波通行" + }//绿波通行车速引导 + WarningTypeEnum.WARNING_CAR_PLATE -> { + warningIconId = R.drawable.icon_warning_v2x_road_construction + warningContent = "前方施工" + warningTts = "前方施工" + }//车内标牌 + WarningTypeEnum.warning_congestion -> { + warningIconId = R.drawable.icon_warning_v2x_congestion + warningContent = "前方道路拥堵" + warningTts = "前方道路拥堵" + }//前方道路拥堵 + WarningTypeEnum.WARNING_OVER_SPEED -> { + warningIconId = R.drawable.icon_warning_v2x_over_speed + warningContent = "您已超速" + warningTts = "您已超速" + }//超速预警 + WarningTypeEnum.WARNING_ROAD_HAZARDS -> { + warningIconId = R.drawable.icon_warning_v2x_road_dangerous + warningContent = "道路危险情况预警" + warningTts = "道路危险情况预警" + }//道路危险情况预警 + WarningTypeEnum.WARNING_ROUNDABOUT -> { + warningIconId = R.drawable.icon_warning_v2x_roundaboutpng + warningContent = "前方驶入环岛" + warningTts = "前方驶入环岛" + }//环岛 + WarningTypeEnum.WARNING_GIVE_WAY -> { + warningIconId = R.drawable.icon_warning_v2x_over_speed + warningContent = "有车出入,减速慢行" + warningTts = "有车出入,减速慢行" + }//减速让行 + WarningTypeEnum.WARNING_BAN_ASTERN -> { + warningIconId = R.drawable.icon_warning_v2x_ban_astern + warningContent = "当前路段禁止停车" + warningTts = "当前路段禁止停车" + }//禁止停车 + WarningTypeEnum.WARNING_TURN_LEFT_SHARP -> { + warningIconId = R.drawable.icon_warning_v2x_turn_left_sharp + warningContent = "前方左转急弯" + warningTts = "前方路口左转急弯,请减速慢行" + }//左转急弯 + WarningTypeEnum.WARNING_TURN_RIGHT_SHARP -> { + warningIconId = R.drawable.icon_warning_v2x_turn_left_sharp + warningContent = "前方右转急弯" + warningTts = "前方路口右转急弯,请减速慢行" + }//右转急弯 + WarningTypeEnum.WARNING_TRAMCAR -> { + warningIconId = R.drawable.icon_warning_v2x_tramcar + warningContent = "前方有轨电车提醒" + warningTts = "前方有轨电车经过,请注意行驶安全" + }//有轨电车 + WarningTypeEnum.WARNING_TEST_SECTION -> { + warningIconId = R.drawable.icon_warning_v2x_test_section + warningContent = "前方考试路段" + warningTts = "前方考试路段,减速慢行" + }//考试路段 + WarningTypeEnum.WARNING_ACCIDENT_PRONE_ROAD_SECTION -> { + warningIconId = R.drawable.icon_warning_v2x_accident_prone_road_section + warningContent = "当前路段事故多发" + warningTts = "当前路段事故多发,请谨慎行驶" + }//事故易发路段 + WarningTypeEnum.WARNING_HUMP_BRIDGE -> { + warningIconId = R.drawable.icon_warning_v2x_hump_bridge + warningContent = "前方驼峰桥" + warningTts = "即将驶入桥梁,请减速慢行" + }//驼峰桥 + WarningTypeEnum.WARNING_SCHOOL -> { + warningIconId = R.drawable.icon_warning_v2x_school + warningContent = "前方学校,减速慢行" + warningTts = "前方人行横道,请减速慢" + }// 学校 + } + + return arrayOf(warningIconId, warningContent, warningTts) + } +} \ No newline at end of file diff --git a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/warning/MoGoWarningProvider.java b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/warning/MoGoWarningProvider.java index 75b62ab414..9b33990b59 100644 --- a/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/warning/MoGoWarningProvider.java +++ b/modules/mogo-module-hmi/src/main/java/com/mogo/module/hmi/warning/MoGoWarningProvider.java @@ -4,6 +4,7 @@ import android.content.Context; import android.os.Bundle; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.fragment.app.Fragment; import com.alibaba.android.arouter.facade.annotation.Route; @@ -70,13 +71,13 @@ public class MoGoWarningProvider implements IMoGoWaringProvider { mMoGoWarningFragment.disableLimitingVelocity(); } - @Override - public void showWarningV2X(int v2xType, @NonNull String alertMessage, @NonNull String tag) { - mMoGoWarningFragment.showWarningV2X(v2xType, alertMessage, tag); - } - @Override public void disableWarningV2X(@NonNull String tag) { } + + @Override + public void showWarningV2X(int v2xType, @Nullable String alertContent, @Nullable String ttsContent, @Nullable String tag) { + mMoGoWarningFragment.showWarningV2X(v2xType, alertContent, ttsContent, tag); + } } diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_traffic_light_green.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_traffic_light_green.png deleted file mode 100644 index 02c975ab1b..0000000000 Binary files a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_traffic_light_green.png and /dev/null differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_traffic_light_red.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_traffic_light_red.png deleted file mode 100644 index 61795d696c..0000000000 Binary files a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_traffic_light_red.png and /dev/null differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_traffic_light_yellow.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_traffic_light_yellow.png deleted file mode 100644 index 04ef919a4e..0000000000 Binary files a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_traffic_light_yellow.png and /dev/null differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_pedestrian_collision.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_pedestrian_collision.png deleted file mode 100644 index f54ba8ded9..0000000000 Binary files a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_pedestrian_collision.png and /dev/null differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_abnormal_vehicle.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_abnormal_vehicle.png similarity index 100% rename from modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_abnormal_vehicle.png rename to modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_abnormal_vehicle.png diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_accident_prone_road_section.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_accident_prone_road_section.png new file mode 100644 index 0000000000..ffb5e8600b Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_accident_prone_road_section.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_avoid_special_vehicles.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_avoid_special_vehicles.png similarity index 100% rename from modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_avoid_special_vehicles.png rename to modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_avoid_special_vehicles.png diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_ban_astern.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_ban_astern.png new file mode 100644 index 0000000000..cb8f9396aa Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_ban_astern.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_blind_area_collision.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_blind_area_collision.png similarity index 100% rename from modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_blind_area_collision.png rename to modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_blind_area_collision.png diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_collision_warning.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_collision_warning.png similarity index 100% rename from modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_collision_warning.png rename to modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_collision_warning.png diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_congestion.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_congestion.png new file mode 100644 index 0000000000..7b3bd880ce Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_congestion.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_emergency_brake.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_emergency_brake.png similarity index 100% rename from modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_emergency_brake.png rename to modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_emergency_brake.png diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_give_way.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_give_way.png new file mode 100644 index 0000000000..88ef6ba167 Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_give_way.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_hump_bridge.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_hump_bridge.png new file mode 100644 index 0000000000..1bcf9b328d Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_hump_bridge.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_motorcycle_collision.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_motorcycle_collision.png similarity index 100% rename from modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_motorcycle_collision.png rename to modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_motorcycle_collision.png diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_over_speed.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_over_speed.png new file mode 100644 index 0000000000..ec72d8c38c Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_over_speed.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_pedestrian_crossing.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_pedestrian_crossing.png new file mode 100644 index 0000000000..5ed8f2b24f Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_pedestrian_crossing.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_reverse_overtaking.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_reverse_overtaking.png similarity index 100% rename from modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_reverse_overtaking.png rename to modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_reverse_overtaking.png diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_road_construction.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_road_construction.png similarity index 100% rename from modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_road_construction.png rename to modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_road_construction.png diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_road_dangerous.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_road_dangerous.png similarity index 100% rename from modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_road_dangerous.png rename to modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_road_dangerous.png diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_roundaboutpng.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_roundaboutpng.png new file mode 100644 index 0000000000..c8796c063b Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_roundaboutpng.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_school.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_school.png new file mode 100644 index 0000000000..d5106e2799 Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_school.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_special_vehicle_access.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_special_vehicle_access.png new file mode 100644 index 0000000000..32122e966f Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_special_vehicle_access.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_test_section.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_test_section.png new file mode 100644 index 0000000000..fe9efb68f7 Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_test_section.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_gray.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_gray.png new file mode 100644 index 0000000000..f2cc372be7 Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_gray.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_green.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_green.png new file mode 100644 index 0000000000..0a453deed8 Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_green.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_red.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_red.png new file mode 100644 index 0000000000..d408c50509 Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_red.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_yellow.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_yellow.png new file mode 100644 index 0000000000..d9ca1cfa08 Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_light_yellow.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_lights_green.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_lights_green.png new file mode 100644 index 0000000000..3c37340bc7 Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_lights_green.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_lights_red.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_lights_red.png new file mode 100644 index 0000000000..b849484e66 Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_traffic_lights_red.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_tramcar.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_tramcar.png new file mode 100644 index 0000000000..2edb283650 Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_tramcar.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_turn_left_sharp.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_turn_left_sharp.png new file mode 100644 index 0000000000..2ff8e0b63b Binary files /dev/null and b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_turn_left_sharp.png differ diff --git a/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_vehicle_control.png b/modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_vehicle_control.png similarity index 100% rename from modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_waring_v2x_vehicle_control.png rename to modules/mogo-module-hmi/src/main/res/drawable-xxxhdpi/icon_warning_v2x_vehicle_control.png diff --git a/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_default_vr.xml b/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_default_vr.xml deleted file mode 100644 index 8a3e344668..0000000000 --- a/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_default_vr.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - \ No newline at end of file diff --git a/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_green_vr.xml b/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_green_vr.xml index 342865dd0a..fae3b6d9aa 100644 --- a/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_green_vr.xml +++ b/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_green_vr.xml @@ -1,13 +1,8 @@ - - - - - - + - + \ No newline at end of file diff --git a/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_red_vr.xml b/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_red_vr.xml index ca2a7d964f..bb44fe6482 100644 --- a/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_red_vr.xml +++ b/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_red_vr.xml @@ -1,12 +1,8 @@ - - - - - + - + \ No newline at end of file diff --git a/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_yellow_vr.xml b/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_yellow_vr.xml index 78098aaaca..9f22ccd975 100644 --- a/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_yellow_vr.xml +++ b/modules/mogo-module-hmi/src/main/res/drawable/icon_waring_traffic_light_yellow_vr.xml @@ -1,13 +1,8 @@ - + - - - - - - + diff --git a/modules/mogo-module-hmi/src/main/res/layout/notification_v2x_msg_vr.xml b/modules/mogo-module-hmi/src/main/res/layout/notification_v2x_msg_vr.xml index 1002bae69e..cb979c05f7 100644 --- a/modules/mogo-module-hmi/src/main/res/layout/notification_v2x_msg_vr.xml +++ b/modules/mogo-module-hmi/src/main/res/layout/notification_v2x_msg_vr.xml @@ -13,25 +13,25 @@ android:paddingBottom="27px"> \ No newline at end of file diff --git a/modules/mogo-module-hmi/src/main/res/layout/view_traffic_light_vr.xml b/modules/mogo-module-hmi/src/main/res/layout/view_traffic_light_vr.xml index 193027f234..dd2998cbe1 100644 --- a/modules/mogo-module-hmi/src/main/res/layout/view_traffic_light_vr.xml +++ b/modules/mogo-module-hmi/src/main/res/layout/view_traffic_light_vr.xml @@ -6,15 +6,15 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/bg_waring_traffic_light_vr" - android:paddingStart="38px" - android:paddingTop="30px" - android:paddingEnd="38px" - android:paddingBottom="30px"> + android:paddingStart="18px" + android:paddingTop="10px" + android:paddingEnd="18px" + android:paddingBottom="10px">