[dev_arch_opt_3.0]

[Change]
[
1、增加清扫车多屏幕支持
]

Signed-off-by: donghongyu <donghongyu@zhidaoauto.com>
This commit is contained in:
donghongyu
2023-03-02 14:36:50 +08:00
parent ae38de2b46
commit d94e0c405b
5 changed files with 79 additions and 20 deletions

View File

@@ -259,8 +259,10 @@ android {
apply from: "./productFlavors/fPadLenovoOchBusPassenger.gradle"
apply from: "./productFlavors/fPadLenovoOchTaxiPassenger.gradle"
apply from: "./productFlavors/fPadLenovoOchSweeper.gradle"
apply from: "./productFlavors/fMultiDisplayOchBus.gradle"
apply from: "./productFlavors/fMultiDisplayOchTaxi.gradle"
apply from: "./productFlavors/fMultiDisplaySweeper.gradle"
variantFilter { variant ->
def names = variant.flavors*.name
@@ -272,7 +274,7 @@ android {
}
// endregion
// region 过滤sweper 的flavors
if (names.contains("sweeper") && !names.contains("fPadLenovoOchSweeper")) {
if (names.contains("sweeper") && !names.contains("fPadLenovoOchSweeper")&& !names.contains("fMultiDisplaySweeper")) {
//Gradle会忽略满足上述条件的所有变体
setIgnore(true)
}

View File

@@ -39,15 +39,18 @@ project.dependencies {
// taxi乘客端
fPadLenovoOchTaxiPassengerImplementation (project(':OCH:mogo-och-taxi-passenger'))
// Bus司机端
// 多屏幕-Bus司机端
fMultiDisplayOchBusImplementation (project(':OCH:mogo-och-bus'))
// Bus乘客端
// 多屏幕-Bus乘客端
fMultiDisplayOchBusImplementation (project(':OCH:mogo-och-bus-passenger'))
// taxi司机端
// 多屏幕-taxi司机端
fMultiDisplayOchTaxiImplementation (project(':OCH:mogo-och-taxi'))
// taxi乘客端
// 多屏幕-taxi乘客端
fMultiDisplayOchTaxiImplementation (project(':OCH:mogo-och-taxi-passenger'))
// 清扫车-多屏幕
fMultiDisplaySweeperImplementation (project(':OCH:mogo-och-sweeper'))
}
}

View File

@@ -0,0 +1,54 @@
project.android.productFlavors {
// 支持多个屏幕异显示的终端,即一个终端包含司机端、乘客端
fMultiDisplaySweeper {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
minSdkVersion rootProject.ext.android.minSdkVersionPadLenovo
targetSdkVersion rootProject.ext.android.targetSdkVersionPadLenovo
versionCode rootProject.versionCode as int
versionName rootProject.versionName
// 应用包名
applicationId rootProject.ext.android.fLauncherApplicationId
dimension "product"
// 车机类型主要用于区分自研车机还是别人家的车机自研车机类型为0
buildConfigField 'int', 'CAR_MACHINE_TYPE', '2'
// 配置AndroidManifest.xml中用到的参数
manifestPlaceholders = [
// 高德地图鉴权信息
AMAP_API_VALUE : rootProject.ext.android.fLauncherAmapApiValue,
// BUGLY_APP_CHANNEL
CHANNEL_VALUE : "fMultiDisplaySweeper",
// 在启动的时候把Task给清空
ACTIVITY_ROOT : true,
// Activity的朝向
SCREEN_ORIENTATION: "landscape"
]
// 是否需要实时上报坐标
buildConfigField 'boolean', 'IS_NEED_UPLOAD_COORDINATES_IN_TIME', 'true'
// GPS数据提供源 0-Android系统1-工控机2-OBU
buildConfigField 'int', 'GPS_PROVIDER', "1"
// 构建的应用身份类型,具体查看 README.md APP_IDENTITY_MODE规则
buildConfigField 'String', 'APP_IDENTITY_MODE', "\"Taxi_Driver_Base\""
// 连接的工控机IP地址
buildConfigField 'String', 'ADAS_CONNECT_IP', "\"192.168.1.102\""
// 构建的是否是演示(美化)模式
buildConfigField 'boolean', 'IS_DEMO_MODE', 'false'
// 构建的是否要动态更换模型
buildConfigField 'boolean', 'IS_CAR_MODEL_CHANGE', 'true'
// 构建 是否支持多屏异显异交互
buildConfigField 'boolean', 'IS_MULTI_DISPLAY', 'true'
//不能启动自驾的档位
buildConfigField 'java.util.Set<chassis.Chassis.GearPosition>', 'UNABLE_LAUNCH_AUTOPILOT_GEAR', 'null'
}
}

View File

@@ -124,27 +124,26 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis
.navigation(getContext());
}
}
// 处理一个机器多个屏幕方案
// TODO 董宏宇 目前处于测试阶段,处理一个机器多个屏幕方案
else {
ochProvider = (IMoGoFunctionProvider) ARouter.getInstance()
.build("/passenger/api")
.build("/driver/api")
.navigation(getContext());
//
// // 启动乘客端Act
// if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) ||
// AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)) {
// MultiDisplayUtils.INSTANCE.startActWithSecond(
// this,
// PassengerLauncherActivity.class);
// }
// 启动广告视频Atc
// 启动乘客端Act
if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) ||
AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)) {
MultiDisplayUtils.INSTANCE.startActWithSecond(
this,
VideoAdAtc.class);
PassengerLauncherActivity.class);
}
// // 启动广告视频Atc
// if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) ||
// AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)) {
// MultiDisplayUtils.INSTANCE.startActWithSecond(
// this,
// VideoAdAtc.class);
// }
}
if (ochProvider != null) {

View File

@@ -129,8 +129,8 @@ public class PassengerLauncherActivity extends MainActivity implements IMogoInte
* 加载网约车模块
*/
private void loadOCHModule() {
IMoGoFunctionProvider ochProvider = (IMoGoFunctionProvider) ARouter.getInstance()
.build("/passenger/api")
IMoGoFunctionProvider ochProvider = (IMoGoFunctionProvider) ARouter.getInstance()
.build("/driver/api")
.navigation(getContext());
if (ochProvider != null) {
ochProvider.createCoverage(this, R.id.module_main_id_och_fragment);
@@ -202,6 +202,7 @@ public class PassengerLauncherActivity extends MainActivity implements IMogoInte
/**
* 魔方按键分发 提测前注释 ToastUtils TODO
*
* @param event
* @return
*/