给220
0.0.58.5
2.1.16.5
1、修复应用杀进程后快速重启异常crash
2、针对模型加载失败增加了重试机制

Signed-off-by: donghongyu <donghongyu@zhidaoauto.com>
This commit is contained in:
donghongyu
2022-01-14 13:11:04 +08:00
parent 3e808c1940
commit 05141a40bd
10 changed files with 135 additions and 149 deletions

View File

@@ -9,7 +9,7 @@
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<application>
<!--保活用-->
<!-- &lt;!&ndash;保活用&ndash;&gt;
<service
android:name="com.zhidao.boot.persistent.lib.PersistentAliveService"
android:enabled="true"
@@ -24,7 +24,7 @@
android:resizeableActivity="false"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
-->
<activity
android:name=".MainLauncherActivity"
android:clearTaskOnLaunch="true"

View File

@@ -37,7 +37,7 @@ kapt.include.compile.classpath=false
android.useAndroidX=true
# Automatically convert third-party libraries to use AndroidX
android.enableJetifier=true
android.jetifier.blacklist=module-service-2.1.16.4.aar
android.jetifier.blacklist=module-service-2.1.16.5.aar
## maven 配置
RELEASE_REPOSITORY_URL=http://nexus.zhidaoauto.com/repository/maven-releases/
SNAPSHOT_REPOSITORY_URL=http://nexus.zhidaoauto.com/repository/maven-snapshots/
@@ -89,102 +89,102 @@ applicationName=IntelligentPilot
versionCode=80007
versionName=8.0.15
################# 新架构模块Maven版本管理 #################
MOGO_CORE_FUNCTION_AUTOPILOT_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_CHECK_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_HMI_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_MAIN_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_MAP_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_MONITORING_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_NOTICE_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_OBU_MOGO_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_SMP_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_V2X_VERSION=0.0.58.4
MOGO_CORE_DATA_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_API_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_CALL_VERSION=0.0.58.4
MOGO_CORE_RES_VERSION=0.0.58.4
MOGO_CORE_UTILS_VERSION=0.0.58.4
MOGO_CORE_NETWORK_VERSION=0.0.58.4
MOGO_CORE_FUNCTION_AUTOPILOT_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_CHECK_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_HMI_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_MAIN_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_MAP_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_MONITORING_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_NOTICE_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_OBU_MOGO_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_SMP_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_V2X_VERSION=0.0.58.5
MOGO_CORE_DATA_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_API_VERSION=0.0.58.5
MOGO_CORE_FUNCTION_CALL_VERSION=0.0.58.5
MOGO_CORE_RES_VERSION=0.0.58.5
MOGO_CORE_UTILS_VERSION=0.0.58.5
MOGO_CORE_NETWORK_VERSION=0.0.58.5
################# 旧版本架构模块版本 #################
## 工程内模块
MOGO_COMMONS_VERSION=2.1.16.4
MOGO_UTILS_VERSION=2.1.16.4
MAP_AMAP_VERSION=2.1.16.4
MAP_AUTONAVI_VERSION=2.1.16.4
MOGO_MAP_VERSION=2.1.16.4
MOGO_MAP_API_VERSION=2.1.16.4
MOGO_SERVICE_VERSION=2.1.16.4
MOGO_SERVICE_API_VERSION=2.1.16.4
MOGO_CONNECTION_VERSION=2.1.16.4
MOGO_MODULE_APPS_VERSION=2.1.16.4
MOGO_MODULE_NAVI_VERSION=2.1.16.4
MOGO_MODULE_SHARE_VERSION=2.1.16.4
MOGO_MODULE_COMMON_VERSION=2.1.16.4
MOGO_MODULE_MAIN_VERSION=2.1.16.4
MOGO_MODULE_MAP_VERSION=2.1.16.4
MOGO_MODULE_SERVICE_VERSION=2.1.16.4
MOGO_MODULE_EXTENSIONS_VERSION=2.1.16.4
MOGO_MODULE_SEARCH_VERSION=2.1.16.4
MOGO_MODULE_BACK_VERSION=2.1.16.4
MOGO_MODULE_V2X_VERSION=2.1.16.4
MOGO_COMMONS_VERSION=2.1.16.5
MOGO_UTILS_VERSION=2.1.16.5
MAP_AMAP_VERSION=2.1.16.5
MAP_AUTONAVI_VERSION=2.1.16.5
MOGO_MAP_VERSION=2.1.16.5
MOGO_MAP_API_VERSION=2.1.16.5
MOGO_SERVICE_VERSION=2.1.16.5
MOGO_SERVICE_API_VERSION=2.1.16.5
MOGO_CONNECTION_VERSION=2.1.16.5
MOGO_MODULE_APPS_VERSION=2.1.16.5
MOGO_MODULE_NAVI_VERSION=2.1.16.5
MOGO_MODULE_SHARE_VERSION=2.1.16.5
MOGO_MODULE_COMMON_VERSION=2.1.16.5
MOGO_MODULE_MAIN_VERSION=2.1.16.5
MOGO_MODULE_MAP_VERSION=2.1.16.5
MOGO_MODULE_SERVICE_VERSION=2.1.16.5
MOGO_MODULE_EXTENSIONS_VERSION=2.1.16.5
MOGO_MODULE_SEARCH_VERSION=2.1.16.5
MOGO_MODULE_BACK_VERSION=2.1.16.5
MOGO_MODULE_V2X_VERSION=2.1.16.5
# 探路
MOGO_MODULE_TANLU_VERSION=2.1.16.4
MOGO_MODULE_TANLU_VERSION=2.1.16.5
# 推送
MOGO_MODULE_PUSH_VERSION=2.1.16.4
MOGO_MODULE_PUSH_BASE_VERSION=2.1.16.4
MOGO_MODULE_PUSH_NOOP_VERSION=2.1.16.4
MOGO_MODULE_PUSH_VERSION=2.1.16.5
MOGO_MODULE_PUSH_BASE_VERSION=2.1.16.5
MOGO_MODULE_PUSH_NOOP_VERSION=2.1.16.5
# 探路上报和分享模块
TANLULIB_VERSION=2.1.16.4
MOGO_TANLU_API_VERSION=2.1.16.4
TANLULIB_VERSION=2.1.16.5
MOGO_TANLU_API_VERSION=2.1.16.5
#左侧面板模块
MOGO_MODULE_LEFT_PANEL_VERSION=2.1.16.4
MOGO_MODULE_LEFT_PANEL_NOOP_VERSION=2.1.16.4
MOGO_MODULE_LEFT_PANEL_VERSION=2.1.16.5
MOGO_MODULE_LEFT_PANEL_NOOP_VERSION=2.1.16.5
# 小控件
MOGO_MODULE_WIDGETS_VERSION=2.1.16.4
MOGO_MODULE_WIDGETS_VERSION=2.1.16.5
# obu
MOGO_MODULE_OBU_VERSION=2.1.16.4
MOGO_MODULE_OBU_MOGO_VERSION=2.1.16.4
MOGO_MODULE_OBU_VERSION=2.1.16.5
MOGO_MODULE_OBU_MOGO_VERSION=2.1.16.5
# monitor
MOGO_MODULE_MONITOR_VERSION=2.1.16.4
MOGO_MODULE_MONITOR_VERSION=2.1.16.5
# bugly
CRASHREPORT_VERSION=2.1.16.4
CRASHREPORT_BUGLY_VERSION=2.1.16.4
CRASHREPORT_NOOP_VERSION=2.1.16.4
CRASHREPORT_UPGRADE_VERSION=2.1.16.4
CRASHREPORT_VERSION=2.1.16.5
CRASHREPORT_BUGLY_VERSION=2.1.16.5
CRASHREPORT_NOOP_VERSION=2.1.16.5
CRASHREPORT_UPGRADE_VERSION=2.1.16.5
## tts
TTS_BASE_VERSION=2.1.16.4
TTS_DI_VERSION=2.1.16.4
TTS_ZHI_VERSION=2.1.16.4
TTS_PAD_VERSION=2.1.16.4
TTS_NOOP_VERSION=2.1.16.4
TTS_BASE_VERSION=2.1.16.5
TTS_DI_VERSION=2.1.16.5
TTS_ZHI_VERSION=2.1.16.5
TTS_PAD_VERSION=2.1.16.5
TTS_NOOP_VERSION=2.1.16.5
# 自研地图
MAP_CUSTOM_VERSION=2.1.16.4
MOGO_MODULE_ADAS_VERSION=2.1.16.4
MAP_CUSTOM_VERSION=2.1.16.5
MOGO_MODULE_ADAS_VERSION=2.1.16.5
# 基础服务实现passport、socket、location
MOGO_BASE_WEBSOCKET_SDK_VERSION=2.1.16.4
MOGO_BASE_SERVICES_APK_VERSION=2.1.16.4
MOGO_BASE_SERVICES_SDK_VERSION=2.1.16.4
MOGO_MODULE_CHAT_VERSION=2.1.16.4
MOGO_BASE_WEBSOCKET_SDK_VERSION=2.1.16.5
MOGO_BASE_SERVICES_APK_VERSION=2.1.16.5
MOGO_BASE_SERVICES_SDK_VERSION=2.1.16.5
MOGO_MODULE_CHAT_VERSION=2.1.16.5
# 车聊聊
MOGO_MODULE_CARCHATTING_VERSION=2.1.16.4
MOGO_MODULE_CARCHATTING_VERSION=2.1.16.5
# 车聊聊接口
MOGO_MODULE_CARCHATTINGPROVIDER_VERSION=2.1.16.4
MOGO_MODULE_CARCHATTINGPROVIDER_VERSION=2.1.16.5
# 皮肤
MOGO_SKIN_SUPPORT_VERSION=2.1.16.4
MOGO_SKIN_LIGHT_VERSION=2.1.16.4
MOGO_SKIN_SUPPORT_IMPL_VERSION=2.1.16.4
MOGO_SKIN_SUPPORT_NOOP_VERSION=2.1.16.4
SKIN_SUPPORT_VERSION=2.1.16.4
SKIN_SUPPORT_APPCOMPAT_VERSION=2.1.16.4
SKIN_SUPPORT_CARDVIEW_VERSION=2.1.16.4
SKIN_SUPPORT_CONSTRAINT_LAYOUT_VERSION=2.1.16.4
SKIN_SUPPORT_DESIGN_VERSION=2.1.16.4
MOGO_SKIN_SUPPORT_VERSION=2.1.16.5
MOGO_SKIN_LIGHT_VERSION=2.1.16.5
MOGO_SKIN_SUPPORT_IMPL_VERSION=2.1.16.5
MOGO_SKIN_SUPPORT_NOOP_VERSION=2.1.16.5
SKIN_SUPPORT_VERSION=2.1.16.5
SKIN_SUPPORT_APPCOMPAT_VERSION=2.1.16.5
SKIN_SUPPORT_CARDVIEW_VERSION=2.1.16.5
SKIN_SUPPORT_CONSTRAINT_LAYOUT_VERSION=2.1.16.5
SKIN_SUPPORT_DESIGN_VERSION=2.1.16.5
# OCH
MOGO_OCH_VERSION=2.1.16.4-test
MOGO_OCH_VERSION=2.1.16.5-test
MOGO_OCH_BUS_VERSION=2.0.66
MOGO_OCH_NOOP_VERSION=2.0.66
MOGO_OCH_TAXI_VERSION=2.0.66
# mogoAiCloud sdk services
MOGO_AICLOUD_SERVICES_SDK_VERSION=2.1.16.4
MOGO_AICLOUD_SERVICES_SDK_VERSION=2.1.16.5
################# 旧版本架构模块版本 #################

View File

@@ -120,12 +120,13 @@ public class AMapWrapper implements IMogoMap {
}
@Override
public void addPreVehicleModel(int type, int modelRes) {
public String addPreVehicleModel(int type, int modelRes) {
try {
MarkerHelper.INSTANCE.addPreVehicleModel(type, modelRes);
return MarkerHelper.INSTANCE.addPreVehicleModel(type, modelRes);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override

View File

@@ -78,7 +78,7 @@ public class CustomMapApiBuilder implements IMogoMapApiBuilder {
mapParams.setDebugMode(false)
//.setDataFileSource(1) //todo 1-使用本地地图数据0-使用在线地图数据
.setCoordinateType(MapParams.COORDINATETYPE_GCJ02)
.setPerspectiveMode(MapParams.MAP_PERSPECTIVE_2D)
.setPerspectiveMode(MapParams.MAP_PERSPECTIVE_3D)
// .setZoom( 20 )
// .setPointToCenter( 0.734375f, 0.5f )
.setPointToCenter(0.5f, 0.5f) //todo 2D模式下需要注意ADAS部分遮挡

View File

@@ -54,7 +54,7 @@ public interface IMogoMap {
* @param type
* @param modelRes
*/
void addPreVehicleModel(int type, int modelRes);
String addPreVehicleModel(int type, int modelRes);
/**
* 要移除的感知数据uuid

View File

@@ -46,7 +46,7 @@ public interface IMogoMarkerManager {
* @param type
* @param modelRes
*/
void addPreVehicleModel(int type,int modelRes);
String addPreVehicleModel(int type,int modelRes);
/**
* 要移除的感知数据uuid

View File

@@ -77,12 +77,13 @@ public class MogoMarkerManager implements IMogoMarkerManager {
}
@Override
public void addPreVehicleModel(int type, int modelRes) {
public String addPreVehicleModel(int type, int modelRes) {
try {
MogoMap.getInstance().getMogoMap().addPreVehicleModel(type, modelRes);
return MogoMap.getInstance().getMogoMap().addPreVehicleModel(type, modelRes);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override

View File

@@ -45,7 +45,7 @@ public class AdasEventManager implements
OnAdasMsgConnectStatusListener,
IMoGoAutopilotStatusListener,
IMoGoAutopilotPlanningListener,
IMoGoAutopilotIdentifyListener ,
IMoGoAutopilotIdentifyListener,
IMoGoAutopilotCarStateListener {
private final String TAG = "AdasEventManager";
@@ -235,20 +235,13 @@ public class AdasEventManager implements
@Override
public void onAutopilotIdentifyDataUpdate(@Nullable ArrayList<TrafficData> trafficData) {
try {
if (trafficData == null) {
IdentifyDataDrawer.getInstance().clearOldMarker();
} else {
if (FunctionBuildConfig.isDrawIdentifyData) {
ThreadUtils.getSinglePool().execute(() ->
IdentifyDataDrawer.getInstance().renderAdasRecognizedResult(trafficData)
);
} else {
IdentifyDataDrawer.getInstance().clearOldMarker();
}
if (FunctionBuildConfig.isDrawIdentifyData) {
ThreadUtils.getSinglePool().execute(() ->
IdentifyDataDrawer.getInstance().renderAdasRecognizedResult(trafficData)
);
}
} catch (Exception e) {
e.printStackTrace();
IdentifyDataDrawer.getInstance().clearOldMarker();
}
}

View File

@@ -1,13 +1,13 @@
package com.mogo.module.common.drawer;
import android.content.Context;
import android.text.TextUtils;
import com.mogo.commons.AbsMogoApplication;
import com.mogo.commons.debug.DebugConfig;
import com.mogo.eagle.core.data.enums.TrafficTypeEnum;
import com.mogo.eagle.core.data.traffic.TrafficData;
import com.mogo.module.common.MogoApisHandler;
import com.mogo.utils.UiThreadHandler;
import com.mogo.utils.logger.Logger;
import java.util.ArrayList;
@@ -62,6 +62,7 @@ public class IdentifyDataDrawer {
public void renderAdasRecognizedResult(ArrayList<TrafficData> resultList) {
if (resultList == null || resultList.isEmpty() || !DebugConfig.isUseAdasRecognize()) {
clearOldMarker();
Logger.w(TAG, "感知数据为空无需渲染……");
return;
}
@@ -100,19 +101,6 @@ public class IdentifyDataDrawer {
}
/**
* 过滤无用数据
*
* @param recognizedListResult {@link TrafficData}
* @return useless
*/
private boolean isUselessValue(TrafficData recognizedListResult) {
if (recognizedListResult == null) {
return true;
}
String uniqueKey = recognizedListResult.getUuid();
return TextUtils.isEmpty(uniqueKey);
}
/**
* 清除旧的 marker 数据
@@ -124,42 +112,45 @@ public class IdentifyDataDrawer {
}
private void addPreVehicleModel() {
MogoApisHandler.getInstance().getApis()
.getMapServiceApi()
.getMarkerManager(mContext)
.addPreVehicleModel(TrafficTypeEnum.TYPE_TRAFFIC_ID_WEI_ZHI.getType(),
TrafficTypeEnum.TYPE_TRAFFIC_ID_WEI_ZHI.getTraffic3DIconId());
MogoApisHandler.getInstance().getApis()
.getMapServiceApi()
.getMarkerManager(mContext)
.addPreVehicleModel(TrafficTypeEnum.TYPE_TRAFFIC_ID_PEOPLE.getType(),
TrafficTypeEnum.TYPE_TRAFFIC_ID_PEOPLE.getTraffic3DIconId());
MogoApisHandler.getInstance().getApis()
.getMapServiceApi()
.getMarkerManager(mContext)
.addPreVehicleModel(TrafficTypeEnum.TYPE_TRAFFIC_ID_BICYCLE.getType(),
TrafficTypeEnum.TYPE_TRAFFIC_ID_BICYCLE.getTraffic3DIconId());
MogoApisHandler.getInstance().getApis()
.getMapServiceApi()
.getMarkerManager(mContext)
.addPreVehicleModel(TrafficTypeEnum.TYPE_TRAFFIC_ID_TA_CHE.getType(),
TrafficTypeEnum.TYPE_TRAFFIC_ID_TA_CHE.getTraffic3DIconId());
MogoApisHandler.getInstance().getApis()
.getMapServiceApi()
.getMarkerManager(mContext)
.addPreVehicleModel(TrafficTypeEnum.TYPE_TRAFFIC_ID_MOTO.getType(),
TrafficTypeEnum.TYPE_TRAFFIC_ID_MOTO.getTraffic3DIconId());
MogoApisHandler.getInstance().getApis()
.getMapServiceApi()
.getMarkerManager(mContext)
.addPreVehicleModel(TrafficTypeEnum.TYPE_TRAFFIC_ID_BUS.getType(),
TrafficTypeEnum.TYPE_TRAFFIC_ID_BUS.getTraffic3DIconId());
MogoApisHandler.getInstance().getApis()
.getMapServiceApi()
.getMarkerManager(mContext)
.addPreVehicleModel(TrafficTypeEnum.TYPE_TRAFFIC_ID_TRUCK.getType(),
TrafficTypeEnum.TYPE_TRAFFIC_ID_TRUCK.getTraffic3DIconId());
Logger.d(TAG, "添加感知模型到地图中……");
addPreVehicleModelWeiZhi(TrafficTypeEnum.TYPE_TRAFFIC_ID_WEI_ZHI, "添加感知模型到地图中……preVehicleStrWeiZhi=");
addPreVehicleModelWeiZhi(TrafficTypeEnum.TYPE_TRAFFIC_ID_PEOPLE, "添加感知模型到地图中……preVehicleStrPeople=");
addPreVehicleModelWeiZhi(TrafficTypeEnum.TYPE_TRAFFIC_ID_BICYCLE, "添加感知模型到地图中……preVehicleStrBicycle=");
addPreVehicleModelWeiZhi(TrafficTypeEnum.TYPE_TRAFFIC_ID_TA_CHE, "添加感知模型到地图中……preVehicleStrTaChe=");
addPreVehicleModelWeiZhi(TrafficTypeEnum.TYPE_TRAFFIC_ID_MOTO, "添加感知模型到地图中……preVehicleStrMoto=");
addPreVehicleModelWeiZhi(TrafficTypeEnum.TYPE_TRAFFIC_ID_BUS, "添加感知模型到地图中……preVehicleStrBus=");
addPreVehicleModelWeiZhi(TrafficTypeEnum.TYPE_TRAFFIC_ID_TRUCK, "添加感知模型到地图中……preVehicleStrTruck=");
}
/**
* 添加模型到地图中
*
* @param typeTrafficIdWeiZhi
* @param s
*/
private void addPreVehicleModelWeiZhi(TrafficTypeEnum typeTrafficIdWeiZhi, String s) {
String preVehicleStrWeiZhi = MogoApisHandler.getInstance().getApis()
.getMapServiceApi()
.getMarkerManager(mContext)
.addPreVehicleModel(typeTrafficIdWeiZhi.getType(),
typeTrafficIdWeiZhi.getTraffic3DIconId());
Logger.d(TAG, s + preVehicleStrWeiZhi);
if (preVehicleStrWeiZhi == null) {
UiThreadHandler.postDelayed(new Runnable() {
@Override
public void run() {
Logger.w(TAG, "添加感知模型到地图中失败,尝试重复添加……");
addPreVehicleModelWeiZhi(typeTrafficIdWeiZhi, s);
}
}, 1000L);
}
}
}

View File

@@ -45,13 +45,13 @@ class MogoMainService extends Service implements IMogoLocationListener {
mServiceApis = MogoApisHandler.getInstance().getApis();
initAndStartLocation();
UiThreadHandler.postDelayed(() -> {
Logger.d(TAG, "4秒已过,启动基础服务……");
Logger.d(TAG, "5秒已过,启动基础服务……");
loadBaseModules();
startTanluService();
initADAS();
initGpsSimulatorListener();
HdMapBuildConfig.isMapLoaded = true;
}, 4_000L
}, 5_000L
);
// 开启延时检测
DelayCheckUtil delayCheckUtil = new DelayCheckUtil(this);