全部替换adas sdk方法

This commit is contained in:
suyong
2021-06-15 17:55:10 +08:00
committed by lianglihui
parent a46ac67f57
commit 48eb5b827e
3 changed files with 73 additions and 13 deletions

View File

@@ -1,5 +1,7 @@
package com.mogo.module.adas;
import android.os.RemoteException;
import com.google.gson.Gson;
import com.mogo.cloud.passport.MoGoAiCloudClientConfig;
import com.mogo.commons.data.BaseData;
@@ -52,6 +54,8 @@ public class AdasEventManager implements OnAdasListener, OnAdasMsgConnectStatusL
//自动驾驶车速度
private float mCurrentAutopilotSpeed = 0;
private Disposable mdDisposable;
//自动驾驶状态
private AutopilotStatus.ValuesBean mAutopilotStatus = null;
public AdasEventManager() {
gson = GsonUtil.getGson();
@@ -88,6 +92,11 @@ public class AdasEventManager implements OnAdasListener, OnAdasMsgConnectStatusL
}
}
public void removeStatusListener() {
Logger.d(TAG,"注销adas状态事件监听");
iAdasStatusListeners.clear();
}
@Override
public void onWarnMessage(WarnMessageInfo warnMessageInfo) {
Logger.d(TAG,"onWarnMessage " + warnMessageInfo);
@@ -298,4 +307,14 @@ public class AdasEventManager implements OnAdasListener, OnAdasMsgConnectStatusL
}
});
}
public AdasAIDLAutopilotStateModel autopilotStateCall() {
AdasAIDLAutopilotStateModel adasAIDLAutopilotStateModel=new AdasAIDLAutopilotStateModel();
if (mAutopilotStatus != null) {
adasAIDLAutopilotStateModel.setSpeed(mAutopilotStatus.getSpeed());
adasAIDLAutopilotStateModel.setState(mAutopilotStatus.getState());
adasAIDLAutopilotStateModel.setReason(mAutopilotStatus.getReason());
}
return adasAIDLAutopilotStateModel;
}
}

View File

@@ -6,6 +6,8 @@ import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.facade.template.IProvider;
import com.mogo.service.MogoServicePaths;
import com.mogo.utils.logger.Logger;
import com.zhidao.autopilot.support.api.AutopilotServiceManage;
import com.zhidao.autopilotservice.model.AdasAIDLAutopilotStateModel;
import com.zhidao.support.adas.high.AdasManager;
@@ -51,6 +53,10 @@ public class AdasProvider implements IProvider {
adasEventManager.removeStatusListener(listener);
}
public void removeAdasStatusListener() {
adasEventManager.removeStatusListener();
}
public void sendWsMessage(String msg) {
AdasManager.getInstance().aiCloudToAdasData(msg);
}
@@ -60,4 +66,33 @@ public class AdasProvider implements IProvider {
AdasManager.getInstance().controlAutopilotCarHead();
}
}
public void hideAdas() {
}
public void showAdas() {
}
public void killAdas() {
}
//原ADAS sdk中为空实现
public void settingCarModelListInfo(String msg) {
}
//原ADAS sdk中为空实现
public void setSettingStatus(boolean show) {
}
//原ADAS sdk中为空实现
public void setUseAlgorithm(boolean open) {
}
public AdasAIDLAutopilotStateModel autopilotStateCall() {
return adasEventManager.autopilotStateCall();
}
}

View File

@@ -5,10 +5,8 @@ import android.content.Context;
import android.content.Intent;
import android.os.Handler;
import android.os.Message;
import android.os.RemoteException;
import android.text.TextUtils;
import android.util.Log;
import android.widget.Toast;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.launcher.ARouter;
@@ -48,7 +46,6 @@ import com.zhidao.adasconfig.api.AdasConfigApiController;
import com.zhidao.adasconfig.common.config.EnumCarChatIncognitoMode;
import com.zhidao.adasconfig.common.config.EnumCarHeading;
import com.zhidao.adasconfig.common.config.EnumSkinStyle;
import com.zhidao.autopilot.support.api.AutopilotServiceManage;
import com.zhidao.autopilotservice.model.AdasAIDLAutopilotArriveModel;
import com.zhidao.autopilotservice.model.AdasAIDLAutopilotStateModel;
import com.zhidao.autopilotservice.model.AdasAIDLOwnerCarRectModel;
@@ -302,7 +299,8 @@ public class MogoADASController implements IMogoADASController {
@Override
public void killADAS() {
try {
AutopilotServiceManage.getInstance().kill();
//AutopilotServiceManage.getInstance().kill();
adasProvider.killAdas();
} catch (Exception e) {
}
@@ -403,7 +401,8 @@ public class MogoADASController implements IMogoADASController {
// 向adas发送车模list
String carModelList = SharedPrefsMgr.getInstance(context).getString("CAR_MODEL_LIST", "");
if (carModelList != null && !carModelList.isEmpty()) {
AutopilotServiceManage.getInstance().settingCarModelListInfo(carModelList);
//AutopilotServiceManage.getInstance().settingCarModelListInfo(carModelList);
adasProvider.settingCarModelListInfo(carModelList);
}
// 此处进行网络请求请求成功后再通知一次adas
requestCarModelList();
@@ -547,7 +546,8 @@ public class MogoADASController implements IMogoADASController {
}
try {
AutopilotServiceManage.getInstance().showAdas();
//AutopilotServiceManage.getInstance().showAdas();
adasProvider.showAdas();
} catch (Exception e) {
Intent intent = new Intent(ACTION);
intent.putExtra(PARAM_COMMAND, VAL_COMMAND);
@@ -570,7 +570,8 @@ public class MogoADASController implements IMogoADASController {
Logger.d(TAG, "close adas");
try {
AutopilotServiceManage.getInstance().hideAdas();
//AutopilotServiceManage.getInstance().hideAdas();
adasProvider.hideAdas();
} catch (Exception e) {
Intent intent = new Intent(ACTION);
intent.putExtra(PARAM_COMMAND, VAL_COMMAND);
@@ -599,7 +600,7 @@ public class MogoADASController implements IMogoADASController {
@Override
public void init(Context context) {
AutopilotServiceManage.getInstance().init(context);
//AutopilotServiceManage.getInstance().init(context);
mIsReleased = false;
mAdasMessageFactory = new MyMessageFactory();
adasProvider = ARouter.getInstance().navigation(AdasProvider.class);
@@ -608,12 +609,14 @@ public class MogoADASController implements IMogoADASController {
@Override
public void setSettingStatus(boolean show) {
AutopilotServiceManage.getInstance().setSettingStatus(show);
//AutopilotServiceManage.getInstance().setSettingStatus(show);
adasProvider.setSettingStatus(show);
}
@Override
public void setUseAlgorithm(boolean open) {
AutopilotServiceManage.getInstance().setUseAlgorithm(open);
//AutopilotServiceManage.getInstance().setUseAlgorithm(open);
adasProvider.setUseAlgorithm(open);
}
@Override
@@ -707,7 +710,8 @@ public class MogoADASController implements IMogoADASController {
String value = GsonUtil.jsonFromObject(o.getResult());
SharedPrefsMgr.getInstance(context).putString("CAR_MODEL_LIST", value);
if (value != null && !value.isEmpty()) {
AutopilotServiceManage.getInstance().settingCarModelListInfo(value);
//AutopilotServiceManage.getInstance().settingCarModelListInfo(value);
adasProvider.settingCarModelListInfo(value);
}
}
@@ -731,7 +735,8 @@ public class MogoADASController implements IMogoADASController {
mIsReleased = true;
//AutopilotServiceManage.getInstance().unRegisterAutopilotDataListener( mAutopolitDataCallBack );
adasProvider.removeAdasEventListener(mAdasDataListener);
AutopilotServiceManage.getInstance().release();
adasProvider.removeAdasStatusListener();
//AutopilotServiceManage.getInstance().release();
}
@Override
@@ -841,7 +846,8 @@ public class MogoADASController implements IMogoADASController {
}
int status = IMogoAdasOCHCallback.STATUS_AUTOPILOT_DISABLE;
try {
status = AutopilotServiceManage.getInstance().autopilotStateCall().getState();
//status = AutopilotServiceManage.getInstance().autopilotStateCall().getState();
status = adasProvider.autopilotStateCall().getState();
} catch (Exception e) {
e.printStackTrace();
}