[8.2.8][i18n] adas-data LaunchConditionData.java 中文抽取

This commit is contained in:
xinfengkun
2025-11-06 19:01:32 +08:00
parent aa702564c1
commit 990de2c254
4 changed files with 41 additions and 31 deletions

View File

@@ -1,9 +1,10 @@
package com.mogo.och.bridge.autopilot;
import android.content.Context;
import android.app.Application;
import androidx.annotation.Nullable;
import com.mogo.eagle.core.data.config.FunctionBuildConfig;
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotActionsListener;
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatisticsListener;
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager;
@@ -11,7 +12,6 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotActionsListene
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotStatisticsListenerManager;
import com.mogo.eagle.core.function.call.autopilot.CallerParallelDrivingActionsListenerManager;
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils;
import com.mogo.eagle.core.data.config.FunctionBuildConfig;
import com.mogo.eagle.core.utilcode.mogo.logger.Logger;
import com.mogo.eagle.core.utilcode.util.ParseVersionUtils;
import com.mogo.och.bridge.autopilot.callback.OchAdasStartFailureCallback;
@@ -40,6 +40,7 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
private String startFailedMessage = "";
private OchAdasStartFailureCallback failureCallback = null;
private Application context;
private static final class SingletonHolder {
private static final OCHAdasAbilityManager INSTANCE = new OCHAdasAbilityManager();
@@ -49,18 +50,19 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
return SingletonHolder.INSTANCE;
}
public void init(Context context) {
public void init(Application context) {
this.context = context;
this.isAutopilotAbility = CallerAutopilotActionsListenerManager.INSTANCE.isAutopilotAbility();
this.launchConditionData = CallerAutopilotActionsListenerManager.INSTANCE.getLaunchConditionData();
this.unableAutopilotReasons = CallerAutopilotActionsListenerManager.INSTANCE.getUnableAutopilotReasons();
initListeners();
}
public void setAdasStartFailureCallback(OchAdasStartFailureCallback callback){
public void setAdasStartFailureCallback(OchAdasStartFailureCallback callback) {
failureCallback = callback;
}
public boolean getAutopilotAbilityStatus(){
public boolean getAutopilotAbilityStatus() {
return isAutopilotAbility;
}
@@ -69,28 +71,28 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
}
public String getOriginalData() {
return launchConditionData == null ? "" : launchConditionData.getJson();
return launchConditionData == null ? "" : launchConditionData.getJson(context);
}
public ArrayList<UnableLaunchReason> getUnableAutopilotReasons() {
return unableAutopilotReasons;
}
public String getAutopilotUnAbilityReason(){
public String getAutopilotUnAbilityReason() {
try {
if(unableAutopilotReasons==null||unableAutopilotReasons.isEmpty()){
if (unableAutopilotReasons == null || unableAutopilotReasons.isEmpty()) {
return "未知异常";
}else {
} else {
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < unableAutopilotReasons.size(); i++) {
stringBuilder.append(unableAutopilotReasons.get(i));
if(i<unableAutopilotReasons.size()-1){
if (i < unableAutopilotReasons.size() - 1) {
stringBuilder.append("\n");
}
}
return stringBuilder.toString();
}
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
return "未知异常";
}
@@ -107,7 +109,7 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
private void initListeners() {
//2022.10.9 工控机状态信息回调(判断是否能否启动自动驾驶的回调), 目前定的是3秒回调一次
CallerAutopilotActionsListenerManager.INSTANCE.addListener(TAG, this);
CallerAutopilotStatisticsListenerManager.INSTANCE.addListener(TAG,this);
CallerAutopilotStatisticsListenerManager.INSTANCE.addListener(TAG, this);
}
private void releaseListeners() {
@@ -121,11 +123,11 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
this.isAutopilotAbility = isAutopilotAbility;
this.launchConditionData = launchConditionData;
this.unableAutopilotReasons = unableAutopilotReasons;
Logger.d(TAG, "是否可以启动自动驾驶=" + isAutopilotAbility + " 原因=" + (unableAutopilotReasons == null ? null : unableAutopilotReasons.toString()) + " 原始数据=" + (launchConditionData == null ? null : launchConditionData.getJson()));
Logger.d(TAG, "是否可以启动自动驾驶=" + isAutopilotAbility + " 原因=" + (unableAutopilotReasons == null ? null : unableAutopilotReasons.toString()) + " 原始数据=" + (launchConditionData == null ? null : launchConditionData.getJson(context)));
if (unableAutopilotReasons != null && getMapVersion() < 30600) {
//刹车变化回调
Logger.d(TAG,"onAutopilotAbility = " + isAutopilotAbility +
" onAutopilotAbility =" + unableAutopilotReasons.toString());
Logger.d(TAG, "onAutopilotAbility = " + isAutopilotAbility +
" onAutopilotAbility =" + unableAutopilotReasons.toString());
if (unableAutopilotReasons.toString().contains(UnableLaunchReason.SourceType.CHASSIS.name())
&& unableAutopilotReasons.toString().contains(UnableLaunchReason.UnableType.CHASSIS_BRAKE.name())) {
//failureCallback.brakeStatusChanged(isAutopilotAbility);
@@ -133,12 +135,13 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
}
}
@Override
public void onAutopilotStatistics(@Nullable AutopilotStatistics statistics) {
if (statistics == null) return;
Logger.d(TAG, "AutopilotStatistics= " + statistics.status);
if (failureCallback != null) {
if(statistics.status==1) {
if (statistics.status == 1) {
if (statistics.fsmState != null) {
startFailedCode = "";
if (statistics.fsmState.hasSession()) {
@@ -157,17 +160,18 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
}
Logger.d(TAG, String.format("statistics-startFailedCode = s%; startFailedMessage = s%",
startFailedCode, startFailedMessage));
}else if(statistics.status==0) {
} else if (statistics.status == 0) {
//启动自驾成功
failureCallback.onStartAutopilotSuccess(statistics.source.toString());
LineManager.INSTANCE.triggerStartServiceEvent(true, 2,statistics.source.toString());
LineManager.INSTANCE.triggerStartServiceEvent(true, 2, statistics.source.toString());
}
}
}
private int getMapVersion(){
private int getMapVersion() {
return ParseVersionUtils.parseVersion(true, CallerAutoPilotStatusListenerManager.INSTANCE.getDockerVersion());
}
public void release() {
releaseListeners();
}

View File

@@ -3,6 +3,7 @@ package com.mogo.eagle.core.function.call.autopilot
import chassis.ChassisStatesOuterClass
import chassis.VehicleStateOuterClass
import com.google.protobuf.TextFormat
import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotActionsListener
import com.mogo.eagle.core.function.call.base.CallerBase
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
@@ -74,7 +75,7 @@ object CallerAutopilotActionsListenerManager : CallerBase<IMoGoAutopilotActionsL
//获取域控发的原始数据目前包括新老SSM和FM数据
fun getLaunchConditionOriginalData(): String {
return launchConditionData?.json ?: ""
return launchConditionData?.getJson(AbsMogoApplication.getApp()) ?: ""
}
fun getLaunchConditionData(): LaunchConditionData? {
@@ -198,7 +199,7 @@ object CallerAutopilotActionsListenerManager : CallerBase<IMoGoAutopilotActionsL
e.printStackTrace()
}
try {
jsonObject.put("launch_condition_data", launchConditionData?.json ?: "")
jsonObject.put("launch_condition_data", launchConditionData?.getJson(AbsMogoApplication.getApp()) ?: "")
} catch (e: JSONException) {
e.printStackTrace()
}
@@ -254,7 +255,7 @@ object CallerAutopilotActionsListenerManager : CallerBase<IMoGoAutopilotActionsL
private fun notification() {
CallerLogger.d(
"$M_D_C CallerAutopilotActionsListenerManager",
"是否可以启动自动驾驶=" + isAutopilotAbility + " 原因=" + (unableAutopilotReasons?.toString()) + " 原始数据=" + launchConditionData?.json
"是否可以启动自动驾驶=" + isAutopilotAbility + " 原因=" + (unableAutopilotReasons?.toString()) + " 原始数据=" + launchConditionData?.getJson(AbsMogoApplication.getApp())
)
M_LISTENERS.forEach {
val listener = it.value

View File

@@ -1,9 +1,14 @@
package com.zhjt.mogo.adas.data.bean;
import android.content.Context;
import androidx.annotation.NonNull;
import com.google.protobuf.GeneratedMessageV3;
import com.google.protobuf.InvalidProtocolBufferException;
import com.google.protobuf.TextFormat;
import com.google.protobuf.util.JsonFormat;
import com.zhjt.mogo.adas.data.R;
import org.json.JSONArray;
import org.json.JSONException;
@@ -92,7 +97,7 @@ public class LaunchConditionData {
createTime = System.currentTimeMillis();
}
public String getJson() {
public String getJson(@NonNull Context context) {
JSONObject jsonObject = new JSONObject();
try {
jsonObject.put("ability_version", abilityVersion);
@@ -106,21 +111,21 @@ public class LaunchConditionData {
chassisStatesObject.put("data_header", TextFormat.printer().escapingNonAscii(false).printToString(chassisStates.getHeader()));
}
//制动踏板
String temp = "未知";
String temp = context.getString(R.string.adas_data_unknown);
if (chassisStates.hasBrakeSystemStates()) {
float brake = chassisStates.getBrakeSystemStates().getBrakePedalResponsePosition();
temp = String.valueOf(brake);
}
chassisStatesObject.put("brake", temp);
//油门踏板
temp = "未知";
temp = context.getString(R.string.adas_data_unknown);
if (chassisStates.hasDrivingSystemStates()) {
float throttle = chassisStates.getDrivingSystemStates().getThrottleResponsePosition();
temp = String.valueOf(throttle);
}
chassisStatesObject.put("throttle", temp);
//档位
temp = "未知";
temp = context.getString(R.string.adas_data_unknown);
if (chassisStates.hasGearSystemStates()) {
Chassis.GearPosition gear = chassisStates.getGearSystemStates().getGearPosition();
temp = gear.name();
@@ -128,7 +133,7 @@ public class LaunchConditionData {
chassisStatesObject.put("gear", temp);
//方向盘
temp = "未知";
temp = context.getString(R.string.adas_data_unknown);
if (chassisStates.hasSteerSystemStates()) {
ChassisStatesOuterClass.SteerSystemStates steerSystemStates = chassisStates.getSteerSystemStates();
if (steerSystemStates.hasSteeringWheelAngle()) {
@@ -136,7 +141,7 @@ public class LaunchConditionData {
temp = String.valueOf(steering);
}
}
chassisStatesObject.put("old_steering", oldSteering == Float.MAX_VALUE ? "未知" : oldSteering);
chassisStatesObject.put("old_steering", oldSteering == Float.MAX_VALUE ? context.getString(R.string.adas_data_unknown) : oldSteering);
chassisStatesObject.put("steering", temp);
}
//车灯
@@ -195,7 +200,7 @@ public class LaunchConditionData {
arr.put(TextFormat.printer().escapingNonAscii(false).printToString(inf));
}
objectParse.put("auto_pilot_unready_list", arr);
}else {
} else {
objectParse.put("auto_pilot_unready_list", "null");
}

View File

@@ -103,6 +103,6 @@
<string name="adas_data_MsgTypeCameraCalibCheckData120Right">相机标定检查视频120右</string>
<string name="adas_data_MsgTypeCaptureFrontImgOnTakeOver">人工接管时给PAD发前摄像头数据响应</string>
<string name="adas_data_MsgTypeCaptureBackImgOnTakeOver">人工接管时给PAD发后摄像头数据响应</string>
<string name="adas_data_"></string>
<string name="adas_data_unknown">未知</string>
</resources>