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">