[2.12.0] taxi-d/-p /bus-d 增加启动自驾失败埋点上传,

This commit is contained in:
wangmingjun
2022-11-09 20:00:08 +08:00
parent 3035d2ba86
commit 26da04fc37
6 changed files with 58 additions and 7 deletions

View File

@@ -53,6 +53,7 @@ import com.mogo.och.bus.util.BusTrajectoryManager;
import com.mogo.och.common.module.biz.constant.OchCommonConst;
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback;
import com.mogo.och.common.module.biz.provider.LoginService;
import com.mogo.och.common.module.callback.OchAdasStartFailureCallback;
import com.mogo.och.common.module.manager.OCHAdasAbilityManager;
import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil;
import com.mogo.och.common.module.utils.DateTimeUtil;
@@ -159,6 +160,9 @@ public class BusOrderModel {
//自动驾驶路线规划接口
CallerAutopilotPlanningListenerManager.INSTANCE.addListener(TAG, moGoAutopilotPlanningListener);
//开启自驾后 异常信息返回
OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(mAdasStartFailureListener);
}
//2022.1.28
@@ -296,6 +300,8 @@ public class BusOrderModel {
//自动驾驶路线规划接口
CallerAutopilotPlanningListenerManager.INSTANCE.removeListener(moGoAutopilotPlanningListener);
loginService = null;
OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null);
}
private Object readResolve() {
@@ -315,6 +321,13 @@ public class BusOrderModel {
}
};
private final OchAdasStartFailureCallback mAdasStartFailureListener = new OchAdasStartFailureCallback() {
@Override
public void onStartAutopilotFailure(@NonNull String startFailedMessage) {
BusAnalyticsManager.getInstance().triggerStartAutopilotFailureEvent(startFailedMessage);
}
};
// 自车定位
private final IMogoCarLocationChangedListener2 mCarLocationChangedListener2 = new IMogoCarLocationChangedListener2() {

View File

@@ -30,20 +30,22 @@ public class BusAnalyticsManager {
return BusAnalyticsManager.SingletonHolder.INSTANCE;
}
private String mStartAutopilotKey;
private HashMap<String, Object> mStartAutopilotParams = new HashMap<>();
private Runnable startAutopilotRunnable = () -> {
// 15s内未开启上报失败埋点
triggerStartAutopilotFailureEvent("15s后app等待超时");
};
public void triggerStartAutopilotFailureEvent(String failMsg){
mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_RESULT
, CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState() ==
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING);
mStartAutopilotParams.put(BusConst.EVENT_PARAM_START_FAILURE_MSG,
OCHAdasAbilityManager.getInstance().getStartFailedMessage());
failMsg);
AnalyticsManager.INSTANCE.track(mStartAutopilotKey, mStartAutopilotParams);
};
}
/**
* 触发'开启自动驾驶'埋点流程

View File

@@ -0,0 +1,9 @@
package com.mogo.och.common.module.callback
/**
* @author: wangmingjun
* @date: 2022/11/9
*/
interface OchAdasStartFailureCallback {
fun onStartAutopilotFailure(startFailedMessage : String)
}

View File

@@ -10,6 +10,7 @@ import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatisticsListen
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotActionsListenerManager;
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotStatisticsListenerManager;
import com.mogo.eagle.core.utilcode.mogo.logger.Logger;
import com.mogo.och.common.module.callback.OchAdasStartFailureCallback;
import com.zhidao.support.adas.high.bean.AutopilotAbility;
import com.zhidao.support.adas.high.bean.AutopilotStatistics;
@@ -29,6 +30,8 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
private String autopilotAbilityReason = "";
private String startFailedMessage = "";
private OchAdasStartFailureCallback failureCallback = null;
private static final class SingletonHolder {
private static final OCHAdasAbilityManager INSTANCE = new OCHAdasAbilityManager();
}
@@ -41,6 +44,10 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
initListeners();
}
public void setAdasStartFailureCallback(OchAdasStartFailureCallback callback){
failureCallback = callback;
}
public boolean getAutopilotAbilityStatus(){
return isAutopilotAbility;
}
@@ -101,8 +108,12 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
@Override
public void onAutopilotStatistics(@Nullable AutopilotStatistics statistics) {
if (1 == statistics.status || 3 == statistics.status){ //失败、超时
if (statistics == null || statistics.failedMessage == null) return;
Logger.d(TAG, "failedMessage= " + statistics.failedMessage.getMsg());
if (failureCallback != null && 1 == statistics.status){
startFailedMessage = statistics.failedMessage.getMsg();
failureCallback.onStartAutopilotFailure(startFailedMessage);
Logger.d(TAG, "startFailedMessage= " + startFailedMessage);
}
}

View File

@@ -38,6 +38,7 @@ import com.mogo.och.common.module.biz.constant.LoginStatusManager;
import com.mogo.och.common.module.biz.constant.OchCommonConst;
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback;
import com.mogo.och.common.module.biz.provider.LoginService;
import com.mogo.och.common.module.callback.OchAdasStartFailureCallback;
import com.mogo.och.common.module.manager.OCHAdasAbilityManager;
import com.mogo.och.common.module.map.AmapNaviToDestinationModel;
import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil;
@@ -232,6 +233,9 @@ public class TaxiModel {
//2021.11.1 自动驾驶路线规划接口
CallerAutopilotPlanningListenerManager.INSTANCE.addListener(TAG, moGoAutopilotPlanningListener);
//开启自驾后 异常信息返回
OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(mAdasStartFailureListener);
}
private void releaseListeners() {
@@ -251,6 +255,7 @@ public class TaxiModel {
CallerAutoPilotStatusListenerManager.INSTANCE.removeListener(mGoAutopilotStatusListener);
CallerAutopilotPlanningListenerManager.INSTANCE.removeListener(moGoAutopilotPlanningListener);
OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null);
}
public void startOrStopOrderLoop(boolean start) {
@@ -1008,6 +1013,13 @@ public class TaxiModel {
}
};
private final OchAdasStartFailureCallback mAdasStartFailureListener = new OchAdasStartFailureCallback() {
@Override
public void onStartAutopilotFailure(@NonNull String startFailedMessage) {
TaxiAnalyticsManager.getInstance().triggerStartAutopilotFailureEvent(startFailedMessage);
}
};
private final IMogoStatusChangedListener mMogoStatusChangedListener = new IMogoStatusChangedListener() {
// VR mode变更回调
@Override

View File

@@ -35,11 +35,15 @@ public class TaxiAnalyticsManager {
private Runnable startAutopilotRunnable = () -> {
// 15s内未开启上报失败埋点
triggerStartAutopilotFailureEvent("15s后app等待超时");
};
public void triggerStartAutopilotFailureEvent(String failMsg){
mStartAutopilotParams.put(TaxiConst.EVENT_PARAM_START_RESULT, false);
mStartAutopilotParams.put(TaxiConst.EVENT_PARAM_START_FAILURE_MSG,
OCHAdasAbilityManager.getInstance().getStartFailedMessage());
failMsg);
AnalyticsManager.INSTANCE.track(mStartAutopilotKey, mStartAutopilotParams);
};
}
/**
* 触发'开启自动驾驶'埋点流程