From 4bee937f1955fa1d11f898af92faa000a57efbae Mon Sep 17 00:00:00 2001 From: donghongyu Date: Fri, 26 Nov 2021 16:32:00 +0800 Subject: [PATCH] =?UTF-8?q?[Fix]=E4=BF=AE=E5=A4=8D=E9=81=93=E8=B7=AF?= =?UTF-8?q?=E7=BB=93=E5=86=B0=E7=BC=BA=E5=B0=91=E8=B5=84=E6=BA=90=E6=96=87?= =?UTF-8?q?=E4=BB=B6bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: donghongyu --- .../mogo/module/common/enums/EventTypeEnum.kt | 370 +++++++++--------- .../v2x_icon_jiebing_vr.png | Bin 0 -> 6845 bytes 2 files changed, 185 insertions(+), 185 deletions(-) create mode 100644 modules/mogo-module-common/src/main/res/drawable-xhdpi-2560x1440/v2x_icon_jiebing_vr.png diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt b/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt index 987d22a091..84d9a385d8 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/enums/EventTypeEnum.kt @@ -9,24 +9,24 @@ import com.zhidao.support.obu.constants.ObuConstants * OBU、V2N事件类型枚举类 */ enum class EventTypeEnum( - val poiType: String, val poiTypeStr: String = "", - val poiTypeStrVr: String = "", - val poiTypeSrcVr: Int = R.drawable.v2x_icon_live_logo, - val content: String = "", val tts: String = "" + val poiType: String, val poiTypeStr: String = "", + val poiTypeStrVr: String = "", + val poiTypeSrcVr: Int = R.drawable.v2x_icon_live_logo, + val content: String = "", val tts: String = "" ) { //加油站 GAS_STATION("10001", "加油站", content = "加油站附近", tts = "加油站"), //交通检查 TRAFFIC_CHECK( - "10002", "交通检查", "前方交通检查", - R.drawable.v2x_icon_jiaotongjiancha_vr, "前方交通检查", "交通检查" + "10002", "交通检查", "前方交通检查", + R.drawable.v2x_icon_jiaotongjiancha_vr, "前方交通检查", "交通检查" ), //封路 ROAD_CLOSED( - "10003", "封路", "前方封路", R.drawable.v2x_icon_fenglu_vr, - "前方封路", "道路封路" + "10003", "封路", "前方封路", R.drawable.v2x_icon_fenglu_vr, + "前方封路", "道路封路" ), //商场打折 @@ -37,20 +37,20 @@ enum class EventTypeEnum( //施工 FOURS_ROAD_WORK( - "10006", "道路施工", "前方施工", R.drawable.v2x_icon_daolushigong_vr, - "前方施工", "道路施工" + "10006", "道路施工", "前方施工", R.drawable.v2x_icon_daolushigong_vr, + "前方施工", "道路施工" ), //拥堵 FOURS_BLOCK_UP( - "10007", "道路拥堵", "前方拥堵", R.drawable.v2x_icon_yongdu_vr, - "前方道路拥堵", "道路拥堵" + "10007", "道路拥堵", "前方拥堵", R.drawable.v2x_icon_yongdu_vr, + "前方道路拥堵", "道路拥堵" ), //积水 FOURS_PONDING( - "10008", "道路积水", "前方道路积水", R.drawable.v2x_icon_jishui_vr, - "前方道路积水", "道路积水" + "10008", "道路积水", "前方道路积水", R.drawable.v2x_icon_jishui_vr, + "前方道路积水", "道路积水" ), //超市打折 @@ -58,50 +58,50 @@ enum class EventTypeEnum( //浓雾 FOURS_FOG( - "10010", "出现浓雾", "浓雾预警", R.drawable.v2x_icon_nongwu_vr, - "前方出现浓雾", "出现浓雾" + "10010", "出现浓雾", "浓雾预警", R.drawable.v2x_icon_nongwu_vr, + "前方出现浓雾", "出现浓雾" ), //结冰 - FOURS_ICE("10011", "路面结冰", content = "前方路面结冰", tts = "路面结冰"), + FOURS_ICE("10011", "路面结冰", "路面结冰", R.drawable.v2x_icon_jiebing_vr, content = "前方路面结冰", tts = "路面结冰"), //停车场 - FOURS_PARKING("10012", "停车场", content = "停车场附近", tts = "停车场"), + FOURS_PARKING("10012", "停车场", "停车场", content = "停车场附近", tts = "停车场"), //事故 FOURS_ACCIDENT( - "10013", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, - "前方交通事故", "交通事故" + "10013", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, + "前方交通事故", "交通事故" ), //重大事故 FOURS_ACCIDENT_01( - "1001301", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, - "前方交通事故", "交通事故" + "1001301", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, + "前方交通事故", "交通事故" ), //特大事故 FOURS_ACCIDENT_02( - "1001302", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, - "前方交通事故", "交通事故" + "1001302", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, + "前方交通事故", "交通事故" ), //较大事故 FOURS_ACCIDENT_03( - "1001303", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, - "前方交通事故", "交通事故" + "1001303", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, + "前方交通事故", "交通事故" ), //一般事故 FOURS_ACCIDENT_04( - "1001304", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, - "前方交通事故", "交通事故" + "1001304", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, + "前方交通事故", "交通事故" ), //轻微事故 FOURS_ACCIDENT_05( - "1001305", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, - "前方交通事故", "交通事故" + "1001305", "交通事故", "前方交通事故", R.drawable.v2x_icon_jiaotongshigu_vr, + "前方交通事故", "交通事故" ), //身边 @@ -145,221 +145,221 @@ enum class EventTypeEnum( ALERT_TRAFFIC_TAXI("99994"), TYPE_USECASE_ID_EBW( - ObuConstants.USE_CASE_ID.EBW.toString(), - "紧急制动预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_emergency_brake, - content = "前车急刹车", - tts = "前车急刹车" + ObuConstants.USE_CASE_ID.EBW.toString(), + "紧急制动预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_emergency_brake, + content = "前车急刹车", + tts = "前车急刹车" ), TYPE_USECASE_ID_FCW( - ObuConstants.USE_CASE_ID.FCW.toString(), - "前向碰撞预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_collision_warning, - content = "前车碰撞预警", - tts = "小心前车" + ObuConstants.USE_CASE_ID.FCW.toString(), + "前向碰撞预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_collision_warning, + content = "前车碰撞预警", + tts = "小心前车" ), TYPE_USECASE_ID_ICW( - ObuConstants.USE_CASE_ID.ICW.toString(), - "交叉路口碰撞预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_collision_warning, - content = "交叉路口碰撞预警", - tts = "注意交叉路口车辆" + ObuConstants.USE_CASE_ID.ICW.toString(), + "交叉路口碰撞预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_collision_warning, + content = "交叉路口碰撞预警", + tts = "注意交叉路口车辆" ), TYPE_USECASE_ID_CLW( - ObuConstants.USE_CASE_ID.CLW.toString(), - "车辆失控预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_vehicle_control, - content = "前%s失控预警", - tts = "小心%s失控车辆" + ObuConstants.USE_CASE_ID.CLW.toString(), + "车辆失控预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_vehicle_control, + content = "前%s失控预警", + tts = "小心%s失控车辆" ), TYPE_USECASE_ID_DNPW( - ObuConstants.USE_CASE_ID.DNPW.toString(), - "逆向超车预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_reverse_overtaking, - content = "逆向超车预警", - tts = "注意对向来车" + ObuConstants.USE_CASE_ID.DNPW.toString(), + "逆向超车预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_reverse_overtaking, + content = "逆向超车预警", + tts = "注意对向来车" ), TYPE_USECASE_ID_AVW( - ObuConstants.USE_CASE_ID.AVW.toString(), - "异常车辆提醒", - poiTypeSrcVr = R.drawable.icon_warning_v2x_abnormal_vehicle, - content = "%s车异常", - tts = "小心%s异常车辆" + ObuConstants.USE_CASE_ID.AVW.toString(), + "异常车辆提醒", + poiTypeSrcVr = R.drawable.icon_warning_v2x_abnormal_vehicle, + content = "%s车异常", + tts = "小心%s异常车辆" ), TYPE_USECASE_ID_BSW( - ObuConstants.USE_CASE_ID.BSW.toString(), - "盲区预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_blind_area_collision, - content = "%s后盲区预警", - tts = "注意%s后车辆" + ObuConstants.USE_CASE_ID.BSW.toString(), + "盲区预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_blind_area_collision, + content = "%s后盲区预警", + tts = "注意%s后车辆" ), TYPE_USECASE_ID_LCW( - ObuConstants.USE_CASE_ID.LCW.toString(), - "变道预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_reverse_overtaking, - content = "%s向变道预警", - tts = "注意%s后车辆" + ObuConstants.USE_CASE_ID.LCW.toString(), + "变道预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_reverse_overtaking, + content = "%s向变道预警", + tts = "注意%s后车辆" ),//注意左后车辆/注意右后车辆 TYPE_USECASE_ID_EVW( - ObuConstants.USE_CASE_ID.EVW.toString(), - "紧急车辆提醒", - poiTypeSrcVr = R.drawable.icon_warning_v2x_special_vehicle_access, - content = "注意特种车辆通行", - tts = "请避让特种车辆" + ObuConstants.USE_CASE_ID.EVW.toString(), + "紧急车辆提醒", + poiTypeSrcVr = R.drawable.icon_warning_v2x_special_vehicle_access, + content = "注意特种车辆通行", + tts = "请避让特种车辆" ), TYPE_USECASE_ID_VRUCW_PERSON( - 0X2B0201.toString(), - "弱势交通参与者碰撞预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_pedestrian_crossing, - content = "注意行人", - tts = "注意行人" + 0X2B0201.toString(), + "弱势交通参与者碰撞预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_pedestrian_crossing, + content = "注意行人", + tts = "注意行人" ),//行人/摩托车碰撞预警 TYPE_USECASE_ID_VRUCW_MOTORBIKE( - 0X2B0202.toString(), - "弱势交通参与者碰撞预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_motorcycle_collision, - content = "注意摩托车", - tts = "注意摩托车" + 0X2B0202.toString(), + "弱势交通参与者碰撞预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_motorcycle_collision, + content = "注意摩托车", + tts = "注意摩托车" ),//摩托车碰撞预警 TYPE_USECASE_ID_SLW( - ObuConstants.USE_CASE_ID.SLW.toString(), - "限速预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_over_speed, - content = "已超速", - tts = "已超速" + ObuConstants.USE_CASE_ID.SLW.toString(), + "限速预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_over_speed, + content = "已超速", + tts = "已超速" ), TYPE_USECASE_ID_LTA( - ObuConstants.USE_CASE_ID.LTA.toString(), - "左转辅助", - poiTypeSrcVr = R.drawable.icon_warning_v2x_collision_warning, - content = "左转碰撞预警", - tts = "注意路口对向来车" + ObuConstants.USE_CASE_ID.LTA.toString(), + "左转辅助", + poiTypeSrcVr = R.drawable.icon_warning_v2x_collision_warning, + content = "左转碰撞预警", + tts = "注意路口对向来车" ), TYPE_USECASE_ID_HLW( - ObuConstants.USE_CASE_ID.HLW.toString(), - "道路危险情况预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_road_dangerous, - content = "道路危险情况预警", - tts = "前方路况危险,小心行驶" + ObuConstants.USE_CASE_ID.HLW.toString(), + "道路危险情况预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_road_dangerous, + content = "道路危险情况预警", + tts = "前方路况危险,小心行驶" ),//(如果能给出具体的类别,则播报具体危险类别) TYPE_USECASE_ID_IVS( - ObuConstants.USE_CASE_ID.IVS.toString(), - "车内标牌", - poiTypeSrcVr = R.drawable.icon_warning_v2x_road_construction, - content = "车内标牌", - tts = "" + ObuConstants.USE_CASE_ID.IVS.toString(), + "车内标牌", + poiTypeSrcVr = R.drawable.icon_warning_v2x_road_construction, + content = "车内标牌", + tts = "" ), TYPE_USECASE_ID_TJW( - ObuConstants.USE_CASE_ID.TJW.toString(), - "前方拥堵提醒", - poiTypeSrcVr = R.drawable.icon_warning_v2x_congestion, - content = "前方%d米道路拥堵", - tts = "前方拥堵,减速慢行" + ObuConstants.USE_CASE_ID.TJW.toString(), + "前方拥堵提醒", + poiTypeSrcVr = R.drawable.icon_warning_v2x_congestion, + content = "前方%d米道路拥堵", + tts = "前方拥堵,减速慢行" ), TYPE_USECASE_ID_IVP( - ObuConstants.USE_CASE_ID.IVP.toString(), - "闯红灯预警", - poiTypeSrcVr = R.drawable.icon_warning_v2x_traffic_lights_red, - content = "路口红灯,禁止通行", - tts = "路口红灯,禁止通行" + ObuConstants.USE_CASE_ID.IVP.toString(), + "闯红灯预警", + poiTypeSrcVr = R.drawable.icon_warning_v2x_traffic_lights_red, + content = "路口红灯,禁止通行", + tts = "路口红灯,禁止通行" ), TYPE_USECASE_ID_IVP_GREEN( - 0x2B091.toString(), - "绿波通行", - poiTypeSrcVr = R.drawable.icon_warning_v2x_traffic_lights_green, - content = "建议车速 %s KM/H", - tts = "建议车速 %s KM/H" + 0x2B091.toString(), + "绿波通行", + poiTypeSrcVr = R.drawable.icon_warning_v2x_traffic_lights_green, + content = "建议车速 %s KM/H", + tts = "建议车速 %s KM/H" ), TYPE_USECASE_ID_COC( - ObuConstants.USE_CASE_ID.COC.toString(), - "预留", - poiTypeSrcVr = R.drawable.icon_warning_v2x_abnormal_vehicle, - content = "路况预警", - tts = "路况预警" + ObuConstants.USE_CASE_ID.COC.toString(), + "预留", + poiTypeSrcVr = R.drawable.icon_warning_v2x_abnormal_vehicle, + content = "路况预警", + tts = "路况预警" ), TYPE_USECASE_ID_ROAD_TRAMCAR( - 0x2C01.toString(), - "前方有轨电车提醒", - poiTypeSrcVr = R.drawable.icon_warning_v2x_tramcar, - content = "注意前方有轨电车", - tts = "注意前方有轨电车驶过" + 0x2C01.toString(), + "前方有轨电车提醒", + poiTypeSrcVr = R.drawable.icon_warning_v2x_tramcar, + content = "注意前方有轨电车", + tts = "注意前方有轨电车驶过" ), TYPE_USECASE_ID_ROAD_TURN_LEFT_SHARP( - 0x2C02.toString(), - "前方左转急弯", - poiTypeSrcVr = R.drawable.icon_warning_v2x_turn_left_sharp, - content = "注意前方左转急弯", - tts = "前方路口左转急弯,减速慢行", + 0x2C02.toString(), + "前方左转急弯", + poiTypeSrcVr = R.drawable.icon_warning_v2x_turn_left_sharp, + content = "注意前方左转急弯", + tts = "前方路口左转急弯,减速慢行", ), TYPE_USECASE_ID_ROAD_TURN_RIGHT_SHARP( - 0x2C03.toString(), - "前方右转急弯", - poiTypeSrcVr = R.drawable.icon_warning_v2x_turn_right_sharp, - content = "注意前方右转急弯", - tts = "前方路口右转急弯,减速慢行" + 0x2C03.toString(), + "前方右转急弯", + poiTypeSrcVr = R.drawable.icon_warning_v2x_turn_right_sharp, + content = "注意前方右转急弯", + tts = "前方路口右转急弯,减速慢行" ), TYPE_USECASE_ID_ROAD_PEDESTRIAN_CROSSING( - 0x2C04.toString(), - "人行横道", - poiTypeSrcVr = R.drawable.icon_warning_v2x_pedestrian_crossing, - content = "注意前方人行横道", - tts = "前方人行横道,减速慢行" + 0x2C04.toString(), + "人行横道", + poiTypeSrcVr = R.drawable.icon_warning_v2x_pedestrian_crossing, + content = "注意前方人行横道", + tts = "前方人行横道,减速慢行" ), TYPE_USECASE_ID_ROAD_PEDESTRIAN_SCHOOL( - 0x2C05.toString(), - "学校", - poiTypeSrcVr = R.drawable.icon_warning_v2x_school, - content = "注意前方学校", - tts = "前方学校,减速慢行" + 0x2C05.toString(), + "学校", + poiTypeSrcVr = R.drawable.icon_warning_v2x_school, + content = "注意前方学校", + tts = "前方学校,减速慢行" ), TYPE_USECASE_ID_ROAD_COLLISION_WARNING( - 0x2C06.toString(), - "事故易发路段", - poiTypeSrcVr = R.drawable.icon_warning_v2x_collision_warning, - content = "注意当前路段事故多发", - tts = "当前路段事故多发,请小心驾驶" + 0x2C06.toString(), + "事故易发路段", + poiTypeSrcVr = R.drawable.icon_warning_v2x_collision_warning, + content = "注意当前路段事故多发", + tts = "当前路段事故多发,请小心驾驶" ), TYPE_USECASE_ID_ROAD_ROUNDABOUTPNG( - 0x2C07.toString(), - "环岛行驶", - poiTypeSrcVr = R.drawable.icon_warning_v2x_roundaboutpng, - content = "注意前方驶入环岛", - tts = "即将驶入环岛,减速慢行" + 0x2C07.toString(), + "环岛行驶", + poiTypeSrcVr = R.drawable.icon_warning_v2x_roundaboutpng, + content = "注意前方驶入环岛", + tts = "即将驶入环岛,减速慢行" ), TYPE_USECASE_ID_ROAD_TEST_SECTION( - 0x2C08.toString(), - "驾校考试路段", - poiTypeSrcVr = R.drawable.icon_warning_v2x_test_section, - content = "注意前方驾校考试路段", - tts = "驾校考试路段,请小心驾驶" + 0x2C08.toString(), + "驾校考试路段", + poiTypeSrcVr = R.drawable.icon_warning_v2x_test_section, + content = "注意前方驾校考试路段", + tts = "驾校考试路段,请小心驾驶" ), TYPE_USECASE_ID_ROAD_HUMP_BRIDGE( - 0x2C09.toString(), - "驼峰桥", - poiTypeSrcVr = R.drawable.icon_warning_v2x_hump_bridge, - content = "注意前方驼峰桥", - tts = "注意即将驶入驼峰桥,请小心驾驶" + 0x2C09.toString(), + "驼峰桥", + poiTypeSrcVr = R.drawable.icon_warning_v2x_hump_bridge, + content = "注意前方驼峰桥", + tts = "注意即将驶入驼峰桥,请小心驾驶" ), TYPE_USECASE_ID_ROAD_NO_PARKING( - 0x2C10.toString(), - "禁止停车", - poiTypeSrcVr = R.drawable.icon_warning_v2x_no_parking, - content = "注意当前路段禁止停车", - tts = "当前路段,禁止停车" + 0x2C10.toString(), + "禁止停车", + poiTypeSrcVr = R.drawable.icon_warning_v2x_no_parking, + content = "注意当前路段禁止停车", + tts = "当前路段,禁止停车" ), TYPE_USECASE_ID_ROAD_GIVE_WAY( - 0x2C11.toString(), - "减速慢行", - poiTypeSrcVr = R.drawable.icon_warning_v2x_give_way, - content = "注意路况复杂,减速慢行", - tts = "路况复杂,减速慢行" + 0x2C11.toString(), + "减速慢行", + poiTypeSrcVr = R.drawable.icon_warning_v2x_give_way, + content = "注意路况复杂,减速慢行", + tts = "路况复杂,减速慢行" ), TYPE_ERROR( - ObuConstants.USE_CASE_ID.ERROR.toString(), - "未知/错误/异常", - poiTypeSrcVr = R.drawable.icon_warning_v2x_abnormal_vehicle, - content = "", - tts = "" + ObuConstants.USE_CASE_ID.ERROR.toString(), + "未知/错误/异常", + poiTypeSrcVr = R.drawable.icon_warning_v2x_abnormal_vehicle, + content = "", + tts = "" ), TYPE_VIP_IDENTIFICATION("10022", "", "", R.drawable.icon_warning_v2x_vip_turn_light, "VIP车辆优先通行", "已为您变灯,请优先通行"); diff --git a/modules/mogo-module-common/src/main/res/drawable-xhdpi-2560x1440/v2x_icon_jiebing_vr.png b/modules/mogo-module-common/src/main/res/drawable-xhdpi-2560x1440/v2x_icon_jiebing_vr.png new file mode 100644 index 0000000000000000000000000000000000000000..530e7a7c50f6d57a45cc8f423ed4a446abdc68e2 GIT binary patch literal 6845 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