Merge remote-tracking branch 'origin/dev2_aiSdk' into dev2_aiSdk

# Conflicts:
#	modules/mogo-module-v2x/src/main/res/values-xhdpi-2560x1440/dimens.xml
This commit is contained in:
wujifei
2021-05-17 17:43:07 +08:00
16 changed files with 260 additions and 10 deletions

View File

@@ -229,7 +229,7 @@ android {
dimension "product"
buildConfigField 'boolean', 'AI_ASSIST_ACTIVE_STAUTS', 'false'
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '2'
buildConfigField 'int', 'CAR_MACHINE_TYPE', '0'
buildConfigField 'boolean', 'ROAD_EVENT_ANIMATED', 'true'
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue,CHANNEL_VALUE: "f8xx"]
// 是否使用高德sdk自定义导航
@@ -251,6 +251,64 @@ android {
// 是否需要使用工控机的rtk定位
buildConfigField 'boolean', 'IS_USE_ADAS_RTK_LOCATION_INFO', 'true'
}
// f系列-网约车-出租车
fPadLenovoOchTaxi {
// 应用包名
applicationId rootProject.ext.android.fLauncherApplicationId
dimension "product"
buildConfigField 'boolean', 'AI_ASSIST_ACTIVE_STAUTS', 'false'
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '0'
buildConfigField 'boolean', 'ROAD_EVENT_ANIMATED', 'true'
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fochtaxi"]
// 是否使用高德sdk自定义导航
buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false'
// 是否支持换肤
buildConfigField 'boolean', 'IS_SKIN_SUPPORTED', 'true'
// 是否支持查询导航目的地车友
buildConfigField 'boolean', 'IS_SUPPORTED_SEARCH_DESTINATION_ONLINE_CAR_LIST', 'true'
// 是否支持桌面卡片刷新
buildConfigField 'boolean', 'IS_SUPPORT_LAUNCHER_CARD_REFRESH_STRATEGY', 'false'
// 是否基于地图
buildConfigField 'boolean', 'IS_MAP_BASED', 'true'
// 是否加载引导模块
buildConfigField 'boolean', 'IS_NEED_LOAD_GUIDE_MODULE', 'false'
// 分享时是否隐藏 adas
buildConfigField 'boolean', 'IS_NEED_HIDE_ADAS_WHEN_SHARE', 'false'
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'
// 是否需要使用工控机的rtk定位
buildConfigField 'boolean', 'IS_USE_ADAS_RTK_LOCATION_INFO', 'true'
}
// f系列-网约车-小巴车
fPadLenovoOchBus {
// 应用包名
applicationId rootProject.ext.android.fLauncherApplicationId
dimension "product"
buildConfigField 'boolean', 'AI_ASSIST_ACTIVE_STAUTS', 'false'
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '0'
buildConfigField 'boolean', 'ROAD_EVENT_ANIMATED', 'true'
manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue,CHANNEL_VALUE: "fochbus"]
// 是否使用高德sdk自定义导航
buildConfigField 'boolean', 'USE_CUSTOM_NAVI', 'false'
// 是否支持换肤
buildConfigField 'boolean', 'IS_SKIN_SUPPORTED', 'true'
// 是否支持查询导航目的地车友
buildConfigField 'boolean', 'IS_SUPPORTED_SEARCH_DESTINATION_ONLINE_CAR_LIST', 'true'
// 是否支持桌面卡片刷新
buildConfigField 'boolean', 'IS_SUPPORT_LAUNCHER_CARD_REFRESH_STRATEGY', 'false'
// 是否基于地图
buildConfigField 'boolean', 'IS_MAP_BASED', 'true'
// 是否加载引导模块
buildConfigField 'boolean', 'IS_NEED_LOAD_GUIDE_MODULE', 'false'
// 分享时是否隐藏 adas
buildConfigField 'boolean', 'IS_NEED_HIDE_ADAS_WHEN_SHARE', 'false'
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'
// 是否需要使用工控机的rtk定位
buildConfigField 'boolean', 'IS_USE_ADAS_RTK_LOCATION_INFO', 'true'
}
// f系列-分体机
phone {
// 应用包名

View File

@@ -37,6 +37,24 @@ project.android.productFlavors {
}
}
}
// 联想Pad
fPadLenovoOchTaxi {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "arm64-v8a"
}
}
}
// 联想Pad
fPadLenovoOchBus {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "arm64-v8a"
}
}
}
// f系列-分体机
f80x {
externalNativeBuild {

View File

@@ -18,6 +18,8 @@ project.dependencies {
em3Implementation rootProject.ext.dependencies.mogoaicloudserviceapk
fochtaxiImplementation rootProject.ext.dependencies.mogoaicloudserviceapk
fochbusImplementation rootProject.ext.dependencies.mogoaicloudserviceapk
fPadLenovoOchTaxi rootProject.ext.dependencies.mogoaicloudserviceapk
fPadLenovoOchBus rootProject.ext.dependencies.mogoaicloudserviceapk
} else {
bydautoImplementation project(':foudations:mogo-aicloud-services-sdk')
phoneImplementation project(':foudations:mogo-aicloud-services-sdk')
@@ -36,5 +38,7 @@ project.dependencies {
em3Implementation project(':foudations:mogo-aicloud-services-apk')
fochtaxiImplementation project(':foudations:mogo-aicloud-services-apk')
fochbusImplementation project(':foudations:mogo-aicloud-services-apk')
fPadLenovoOchTaxiImplementation project(':foudations:mogo-aicloud-services-apk')
fPadLenovoOchBusImplementation project(':foudations:mogo-aicloud-services-apk')
}
}

View File

@@ -8,6 +8,8 @@ project.dependencies {
f80xImplementation rootProject.ext.dependencies.mapcustom
fochtaxiImplementation rootProject.ext.dependencies.mapcustom
fochbusImplementation rootProject.ext.dependencies.mapcustom
fPadLenovoOchTaxi rootProject.ext.dependencies.mapcustom
fPadLenovoOchBus rootProject.ext.dependencies.mapcustom
phoneImplementation rootProject.ext.dependencies.mapcustom
f8AmapImplementation rootProject.ext.dependencies.mapamap
@@ -27,6 +29,8 @@ project.dependencies {
f80xImplementation project(':libraries:map-custom')
fochtaxiImplementation project(':libraries:map-custom')
fochbusImplementation project(':libraries:map-custom')
fPadLenovoOchTaxiImplementation project(':libraries:map-custom')
fPadLenovoOchBusImplementation project(':libraries:map-custom')
phoneImplementation project(':libraries:map-custom')
f8AmapImplementation project(':libraries:map-amap')

View File

@@ -19,6 +19,8 @@ project.dependencies {
em3Implementation rootProject.ext.dependencies.mogobaseserviceapk
fochtaxiImplementation rootProject.ext.dependencies.mogobaseserviceapk
fochbusImplementation rootProject.ext.dependencies.mogobaseserviceapk
fPadLenovoOchTaxi rootProject.ext.dependencies.mogobaseserviceapk
fPadLenovoOchBus rootProject.ext.dependencies.mogobaseserviceapk
} else {
bydautoImplementation project(':foudations:mogo-base-services-sdk')
phoneImplementation project(':foudations:mogo-base-services-sdk')
@@ -37,5 +39,7 @@ project.dependencies {
em3Implementation project(':foudations:mogo-base-services-apk')
fochtaxiImplementation project(':foudations:mogo-base-services-apk')
fochbusImplementation project(':foudations:mogo-base-services-apk')
fPadLenovoOchTaxiImplementation project(':foudations:mogo-base-services-apk')
fPadLenovoOchBusImplementation project(':foudations:mogo-base-services-apk')
}
}

View File

@@ -15,6 +15,8 @@ project.dependencies {
em3Implementation rootProject.ext.dependencies.mogomoduleguide
fochtaxiImplementation rootProject.ext.dependencies.mogomoduleguide
fochbusImplementation rootProject.ext.dependencies.mogomoduleguide
fPadLenovoOchTaxi rootProject.ext.dependencies.mogomoduleguide
fPadLenovoOchBus rootProject.ext.dependencies.mogomoduleguide
} else {
bydautoImplementation project(':modules:mogo-module-guide')
phoneImplementation project(':modules:mogo-module-guide')
@@ -29,5 +31,7 @@ project.dependencies {
em3Implementation project(':modules:mogo-module-guide')
fochtaxiImplementation project(':modules:mogo-module-guide')
fochbusImplementation project(':modules:mogo-module-guide')
fPadLenovoOchTaxiImplementation project(':modules:mogo-module-guide')
fPadLenovoOchBusImplementation project(':modules:mogo-module-guide')
}
}

View File

@@ -19,6 +19,8 @@ project.dependencies {
em3Implementation rootProject.ext.dependencies.moduleleftpanelnoop
fochtaxiImplementation rootProject.ext.dependencies.moduleleftpanelnoop
fochbusImplementation rootProject.ext.dependencies.moduleleftpanelnoop
fPadLenovoOchTaxi rootProject.ext.dependencies.moduleleftpanelnoop
fPadLenovoOchBus rootProject.ext.dependencies.moduleleftpanelnoop
phoneImplementation rootProject.ext.dependencies.moduleleftpanelnoop
} else {
bydautoImplementation project(':modules:mogo-module-left-panel')
@@ -37,6 +39,8 @@ project.dependencies {
em3Implementation project(':modules:mogo-module-left-panel-noop')
fochtaxiImplementation project(':modules:mogo-module-left-panel-noop')
fochbusImplementation project(':modules:mogo-module-left-panel-noop')
fPadLenovoOchTaxiImplementation project(':modules:mogo-module-left-panel-noop')
fPadLenovoOchBusImplementation project(':modules:mogo-module-left-panel-noop')
phoneImplementation project(':modules:mogo-module-left-panel-noop')
}
}

View File

@@ -17,6 +17,8 @@ project.dependencies {
e8xxImplementation rootProject.ext.dependencies.mogoochnoop
fochtaxiImplementation rootProject.ext.dependencies.mogoochtaxi
fochbusImplementation rootProject.ext.dependencies.mogoochbus
fPadLenovoOchTaxi rootProject.ext.dependencies.mogoochtaxi
fPadLenovoOchBus rootProject.ext.dependencies.mogoochbus
} else {
bydautoImplementation project(':OCH:mogo-och-noop')
phoneImplementation project(':OCH:mogo-och-noop')
@@ -34,5 +36,7 @@ project.dependencies {
e8xxImplementation project(':OCH:mogo-och-noop')
fochtaxiImplementation project(':OCH:mogo-och-taxi')
fochbusImplementation project(':OCH:mogo-och-bus')
fPadLenovoOchTaxiImplementation project(':OCH:mogo-och-taxi')
fPadLenovoOchBusImplementation project(':OCH:mogo-och-bus')
}
}

View File

@@ -17,6 +17,8 @@ project.dependencies {
e8xxImplementation rootProject.ext.dependencies.skinsupportimpl
fochtaxiImplementation rootProject.ext.dependencies.skinsupportimpl
fochbusImplementation rootProject.ext.dependencies.skinsupportimpl
fPadLenovoOchTaxi rootProject.ext.dependencies.skinsupportimpl
fPadLenovoOchBus rootProject.ext.dependencies.skinsupportimpl
phoneImplementation rootProject.ext.dependencies.skinsupportimpl
f8xxImplementation rootProject.ext.dependencies.skinsupportlight
@@ -30,6 +32,8 @@ project.dependencies {
em3Implementation rootProject.ext.dependencies.skinsupportlight
fochtaxiImplementation rootProject.ext.dependencies.skinsupportlight
fochbusImplementation rootProject.ext.dependencies.skinsupportlight
fPadLenovoOchTaxi rootProject.ext.dependencies.skinsupportlight
fPadLenovoOchBus rootProject.ext.dependencies.skinsupportlight
phoneImplementation rootProject.ext.dependencies.skinsupportlight
} else {
@@ -51,6 +55,8 @@ project.dependencies {
e8xxImplementation project(':skin:mogo-skin-support-impl')
fochtaxiImplementation project(':skin:mogo-skin-support-impl')
fochbusImplementation project(':skin:mogo-skin-support-impl')
fPadLenovoOchTaxiImplementation project(':skin:mogo-skin-support-impl')
fPadLenovoOchBusImplementation project(':skin:mogo-skin-support-impl')
phoneImplementation project(':skin:mogo-skin-support-impl')
f8xxImplementation project(':skin:mogo-skin-light')
@@ -64,6 +70,8 @@ project.dependencies {
em3Implementation project(':skin:mogo-skin-light')
fochtaxiImplementation project(':skin:mogo-skin-light')
fochbusImplementation project(':skin:mogo-skin-light')
fPadLenovoOchTaxiImplementation project(':skin:mogo-skin-light')
fPadLenovoOchBusImplementation project(':skin:mogo-skin-light')
phoneImplementation project(':skin:mogo-skin-light')
}
}

View File

@@ -15,6 +15,8 @@ project.dependencies {
e8xxImplementation rootProject.ext.dependencies.ttszhi
fochtaxiImplementation rootProject.ext.dependencies.ttszhi
fochbusImplementation rootProject.ext.dependencies.ttszhi
fPadLenovoOchTaxi rootProject.ext.dependencies.ttszhi
fPadLenovoOchBus rootProject.ext.dependencies.ttszhi
phoneImplementation rootProject.ext.dependencies.ttszhi
} else {
bydautoImplementation project(':tts:tts-di')
@@ -32,6 +34,8 @@ project.dependencies {
e8xxImplementation project(':tts:tts-zhi')
fochtaxiImplementation project(':tts:tts-zhi')
fochbusImplementation project(':tts:tts-zhi')
fPadLenovoOchTaxiImplementation project(':tts:tts-zhi')
fPadLenovoOchBusImplementation project(':tts:tts-zhi')
phoneImplementation project(':tts:tts-zhi')
}
}

View File

@@ -3,7 +3,7 @@
afterEvaluate {
def independent = ["em3", "em1", "d80x", "d82x", "bydauto", "em2", "phone"]
def launcher = ["f80x", "f8xx", "f8amap", "em4", "e8xx", "fochtaxi", "fochbus", "fPadLenovo"]
def launcher = ["f80x", "f8xx", "f8amap", "em4", "e8xx", "fochtaxi", "fochbus", "fPadLenovo", "fPadLenovoOchTaxi", "fPadLenovoOchBus"]
it.getTasks().iterator().forEachRemaining {
def task = it

View File

@@ -95,7 +95,7 @@ class CustomMapApiBuilder implements IMogoMapApiBuilder {
public IMogoMapView getMapView( Context context ) {
Log.d(TAG,"setDebugMode==true");
NavAutoApi.INSTANCE.init( context, MapParams.Companion.init()
.setDebugMode( true )
.setDebugMode( false )
.setCoordinateType( MapParams.COORDINATETYPE_GCJ02 )
.setPerspectiveMode( MapParams.MAP_PERSPECTIVE_2D )
.setZoom( 20 )

View File

@@ -35,6 +35,7 @@ import com.mogo.module.common.uploadintime.SnapshotLocationController;
import com.mogo.module.service.MarkerServiceHandler;
import com.mogo.module.service.R;
import com.mogo.module.service.status.EnvStatusManager;
import com.mogo.module.service.timedelay.TimeDelayUploadManager;
import com.mogo.realtime.entity.ADASRecognizedResult;
import com.mogo.realtime.entity.CloudRoadData;
import com.mogo.realtime.entity.MogoSnapshotSetData;
@@ -617,6 +618,10 @@ public class MockIntentHandler implements IntentHandler {
case 54:
mTimeTickCarHandler.sendEmptyMessageDelayed(1, 0L);
break;
case 55:
//开启模拟数据Mock用于验证算法准确性
TimeDelayUploadManager.getInstance().init(context);
break;
}
}

View File

@@ -0,0 +1,50 @@
package com.mogo.module.service.network.bean;
public class MockSocketReceiverData {
public static final int MOCK_RECEIVER_STATUS_START = 0;
public static final int MOCK_RECEIVER_STATUS_STOP = 1;
private int status;
private double lat;
private double lon;
private double heading;
private long systemTime;
private long satelliteTime;
public int getStatus() {
return status;
}
public double getLat() {
return lat;
}
public double getLon() {
return lon;
}
public double getHeading() {
return heading;
}
public long getSystemTime() {
return systemTime;
}
public long getSatelliteTime() {
return satelliteTime;
}
@Override
public String toString() {
return "MockSocketReceiverData{" +
"status=" + status +
", lat=" + lat +
", lon=" + lon +
", heading=" + heading +
", systemTime=" + systemTime +
", satelliteTime=" + satelliteTime +
'}';
}
}

View File

@@ -1,23 +1,44 @@
package com.mogo.module.service.timedelay;
import android.content.Context;
import android.os.Handler;
import android.os.Message;
import com.mogo.module.common.MogoApisHandler;
import com.mogo.module.common.uploadintime.SnapshotLocationController;
import com.mogo.module.service.MarkerServiceHandler;
import com.mogo.module.service.network.bean.MockSocketReceiverData;
import com.mogo.realtime.api.MoGoAiCloudRealTime;
import com.mogo.realtime.entity.MogoSnapshotSetData;
import com.mogo.realtime.socket.IMogoCloudOnMsgListener;
import com.mogo.service.connection.IMogoOnMessageListener;
import com.mogo.utils.WorkThreadHandler;
import com.mogo.utils.logger.Logger;
import org.json.JSONException;
import org.json.JSONObject;
import static com.mogo.module.service.network.bean.MockSocketReceiverData.MOCK_RECEIVER_STATUS_START;
/**
* 接收服务端模拟定位数据对下发数据做实时Post上报统计时延
*/
public class TimeDelayUploadManager implements IMogoOnMessageListener {
public class TimeDelayUploadManager implements IMogoOnMessageListener<MockSocketReceiverData>, IMogoCloudOnMsgListener {
private static final String TAG = "TimeDelayUploadManager";
private volatile static TimeDelayUploadManager timeDelayUploadManager;
private static final int MSG_SOCKET_TYPE = 403000;
private static final int MOCK_MSG = 1;
private boolean isMockData = false;
private MockSocketReceiverData mMockData;
private long mRecordSatelliteTime; //todo 后续多点模拟用
private TimeDelayUploadManager() {
}
public TimeDelayUploadManager getInstance() {
public static TimeDelayUploadManager getInstance() {
if (timeDelayUploadManager == null) {
synchronized (TimeDelayUploadManager.class) {
if (timeDelayUploadManager == null) {
@@ -31,16 +52,71 @@ public class TimeDelayUploadManager implements IMogoOnMessageListener {
public void init(Context mContext) {
MogoApisHandler.getInstance()
.getApis()
.getSocketManagerApi(mContext).registerOnMessageListener(MSG_SOCKET_TYPE,this);
.getSocketManagerApi(mContext).registerOnMessageListener(MSG_SOCKET_TYPE, this);
MoGoAiCloudRealTime.registerOnMsgListener(this);
}
private final Handler mockHandler = new Handler(WorkThreadHandler.newInstance("mock-algorithm-work-thread").getLooper()) {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (msg.what == MOCK_MSG) {
//改变地图定位数据,触发自车移动
JSONObject jo = new JSONObject();
try {
jo.put("lon", mMockData.getLon());
jo.put("lat", mMockData.getLat());
jo.put("heading", mMockData.getHeading());
jo.put("systemTime", System.currentTimeMillis());
jo.put("satelliteTime", System.currentTimeMillis());
} catch (JSONException e) {
e.printStackTrace();
}
Logger.d(TAG, "更改自车定位点");
MarkerServiceHandler.getApis().getMapServiceApi().getMapUIController().syncLocation2Map(jo);
Logger.d(TAG, "同步定位信息,用于上报");
SnapshotLocationController.getInstance().syncAdasLocationInfo(jo);
mockHandler.sendEmptyMessageDelayed(MOCK_MSG, 50);
}
}
};
@Override
public Class<MockSocketReceiverData> target() {
return MockSocketReceiverData.class;
}
//接收socket数据
@Override
public void onMsgReceived(MockSocketReceiverData mockData) {
Logger.d(TAG, "onMsgReceived obj : " + mockData.toString());
if (mockData.getStatus() == MOCK_RECEIVER_STATUS_START) {
isMockData = true;
//开启定位模拟
mMockData = mockData;
mRecordSatelliteTime = mockData.getSatelliteTime();
mockHandler.sendEmptyMessage(MOCK_MSG);
} else {
isMockData = false;
//停止定位模拟
if (mockHandler.hasMessages(MOCK_MSG)) {
mockHandler.removeMessages(MOCK_MSG);
mMockData = null;
mRecordSatelliteTime = 0;
}
}
}
@Override
public Class target() {
return null;
public void onMsgSend(long id) {
}
//接收实时数据监听回调,用于给服务端上报时延
@Override
public void onMsgReceived(Object obj) {
public void onMsgReceived(MogoSnapshotSetData mogoSnapshotSetData) {
if (isMockData) {
//接口数据上报
}
}
}

View File

@@ -11,6 +11,13 @@
<dimen name="module_v2x_road_event_icon_play_margin_top">12px</dimen>
<dimen name="module_v2x_road_event_text_play_text_size">40px</dimen>
<dimen name="module_ext_top_view_no_link_width_in_vr_mode">778px</dimen>
<dimen name="module_v2x_event_see_live_window_height_vr">687px</dimen>
<dimen name="module_v2x_event_window_top_margin_vr">200px</dimen>
<dimen name="module_v2x_event_window_close_distance">10px</dimen>
<dimen name="module_v2x_event_window_height_vr_for_item">487px</dimen>
<dimen name="module_v2x_event_window_width_vr">778px</dimen>
<dimen name="module_v2x_fatigue_driving_window_height_ground">234px</dimen>
<dimen name="module_v2x_fault_help_width">1067px</dimen>
<dimen name="module_v2x_fault_help_height">187px</dimen>