This commit is contained in:
lixiaopeng
2021-08-09 12:02:36 +08:00
parent 8efe3f2d5e
commit ea9e3b8f9a
2 changed files with 51 additions and 11 deletions

View File

@@ -79,7 +79,7 @@ public class MogoObuConst {
*/
public static final int TYPE_LIMIT_SPEED_WARN = 110;
public static final String TYPE_LIMIT_SPEED_WARN_TEXT = "用户已超速";
public static final String TYPE_LIMIT_SPEED_WARN_VOICE_TEXT = "前车失控预警";
public static final String TYPE_LIMIT_SPEED_WARN_VOICE_TEXT = "";
/**

View File

@@ -6,6 +6,7 @@ import com.mogo.service.IMogoServiceApis
import com.mogo.service.MogoServicePaths
import com.mogo.service.adas.entity.ADASRecognizedResult
import com.mogo.service.warning.IMoGoWaringProvider
import com.mogo.utils.UiThreadHandler
import com.mogo.utils.logger.Logger
import com.zhidao.support.obu.MogoObuManager
import com.zhidao.support.obu.OnMogoObuListener
@@ -36,6 +37,7 @@ class MogoPrivateObuManager private constructor() {
Logger.d(MogoObuConst.TAG_MOGO_OBU, "obuManager初始化--")
mMogoServiceApis = ARouter.getInstance().build(MogoServicePaths.PATH_SERVICE_APIS)
.navigation(context) as IMogoServiceApis
// 获取预警模块的接口
mIMoGoWaringProvider = mMogoServiceApis!!.waringProviderApi
@@ -47,7 +49,9 @@ class MogoPrivateObuManager private constructor() {
//TODO 测试
// UiThreadHandler.postDelayed({
//// MogoObuManager.getInstance().test(icw_data)
// handleSdkObu(107)
// handleSdkObu(107, 2)
// mMogoServiceApis!!.v2XListenerManager.warningChangedForListenerWithDirection(1, "ACTION_V2X_FRONT_WARNING")
//
// }, 5000L)
}
@@ -116,13 +120,13 @@ class MogoPrivateObuManager private constructor() {
//预警方位
val direction = info.ext_info.target_classification
//显示警告弹框 TODO
// MarkerServiceHandler.getApis().getV2XListenerManager().warningChangedForListenerWithDirection(getMessage(direction), MogoReceiver.ACTION_V2X_FRONT_WARNING);
//显示警告弹框
mMogoServiceApis!!.v2XListenerManager.warningChangedForListenerWithDirection(getMessage(direction), "ACTION_V2X_FRONT_WARNING")
//处理预警类型
val appId = info.threat_info.app_id
Logger.d(MogoObuConst.TAG_MOGO_OBU, "direction = " + direction + "----" + getMessage(direction) + "--appId = " + appId)
handleSdkObu(getEventType(appId))
handleSdkObu(getEventType(appId), info.threat_info.threat_level)
}
//预警数据的组装,车辆实时移动和变色 TODO 这里需要obu提供他车列表 暂时不做
@@ -215,7 +219,7 @@ class MogoPrivateObuManager private constructor() {
*
* @param type TODO
*/
private fun handleSdkObu(type: Int) {
private fun handleSdkObu(type: Int, level: Int) {
var alertContent: String = ""
var ttsContent: String = ""
@@ -225,18 +229,54 @@ class MogoPrivateObuManager private constructor() {
} else if (type == MogoObuConst.TYPE_URGENCY_COLLISION_WARNING) { // 前车紧急制动预警
alertContent = MogoObuConst.TYPE_URGENCY_COLLISION_WARNING_TEXT
ttsContent = MogoObuConst.TYPE_URGENCY_COLLISION_WARNING_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_FRONT_COLLISION_WARNING) { //前车碰撞预警
alertContent = MogoObuConst.TYPE_FRONT_COLLISION_WARNING_TEXT
ttsContent = MogoObuConst.TYPE_FRONT_COLLISION_WARNING_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_TURN_LEFT_WARN) { //左转辅助
alertContent = MogoObuConst.TYPE_TURN_LEFT_WARN_TEXT
ttsContent = MogoObuConst.TYPE_TURN_LEFT_WARN_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_BLIND_ASSIST_WARN) { //盲区预警
alertContent = MogoObuConst.TYPE_BLIND_ASSIST_WARN_TEXT
ttsContent = MogoObuConst.TYPE_BLIND_ASSIST_WARN_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_REVERSE_OVERTAKING_WARN) { //逆向超车预警
alertContent = MogoObuConst.TYPE_REVERSE_OVERTAKING_WARN_TEXT
ttsContent = MogoObuConst.TYPE_REVERSE_OVERTAKING_WARN_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_UNUSUAL_CAR_WARN) { //异常车辆预警
alertContent = MogoObuConst.TYPE_UNUSUAL_CAR_WARN_TEXT
ttsContent = MogoObuConst.TYPE_UNUSUAL_CAR_WARN_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_CAR_OUT_OF_CONTROL_WARN) { //前车失控预警
alertContent = MogoObuConst.TYPE_CAR_OUT_OF_CONTROL_WARN_TEXT
ttsContent = MogoObuConst.TYPE_CAR_OUT_OF_CONTROL_WARN_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_LIMIT_SPEED_WARN) { //限速预警
alertContent = MogoObuConst.TYPE_LIMIT_SPEED_WARN_TEXT
ttsContent = MogoObuConst.TYPE_LIMIT_SPEED_WARN_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_UNUSUAL_ROAD_WARN) { //道路危险情况预警
alertContent = MogoObuConst.TYPE_UNUSUAL_ROAD_WARN_TEXT
ttsContent = MogoObuConst.TYPE_UNUSUAL_ROAD_WARN_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_BLOCK_WARN) { //前方拥堵提醒
alertContent = MogoObuConst.TYPE_BLOCK_WARN_TEXT
ttsContent = MogoObuConst.TYPE_BLOCK_WARN_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_PRESSING_CAR_WARN) { //紧急车辆预警
alertContent = MogoObuConst.TYPE_PRESSING_CAR_WARN_TEXT
ttsContent = MogoObuConst.TYPE_PRESSING_CAR_WARN_VOICE_TEXT
} else if (type == MogoObuConst.TYPE_TRAFFIC_SIGN_INFO) { //交通标牌
} else if (type == MogoObuConst.TYPE_ROAD_USER_COLLISION_WARNING) { //弱势交通群体
} else if (type == MogoObuConst.TYPE_OPTIMAL_SPEED_ADVISORY) { //绿波车速引导
alertContent = ""
ttsContent = ""
} else if (type == MogoObuConst.TYPE_RUSH_RED_LIGHT) { //闯红灯预警
}
//显示弹框
//显示弹框,语音提示
mIMoGoWaringProvider!!.showWarningV2X(
type,
alertContent,
ttsContent,
if (level == 3) ttsContent else "",
type.toString()
)
}
}