[Change]
[完成多物理设备和单设备多屏幕的工程适配;
待解决,需要处理两个身份通讯问题适配]

Signed-off-by: donghongyu <donghongyu@zhidaoauto.com>
This commit is contained in:
donghongyu
2022-11-28 22:35:19 +08:00
parent 5f1ecdd51f
commit 47161b4648
20 changed files with 249 additions and 162 deletions

View File

@@ -168,6 +168,7 @@ class AutoPilotAndCheckView @JvmOverloads constructor(
actvLoginout.visibility = View.VISIBLE
CallerHmiManager.setBusOperationView(toolBusOperationView)
// TODO 这里判断方式可以替换为使用 AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)等进行替换
when (DebugConfig.getProductFlavor()) {
"fPadLenovoOchTaxi" -> {
//出租车司机

View File

@@ -99,7 +99,7 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis
if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) &&
AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
FrameLayout frameLayout = findViewById(R.id.module_main_id_map_fragment_container);
frameLayout.setPadding(0, 0, AutoSizeUtils.dp2px(getContext(),700), 0);
frameLayout.setPadding(0, 0, AutoSizeUtils.dp2px(getContext(), 700), 0);
}
}
@@ -144,20 +144,39 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis
* 加载网约车模块
*/
private void loadOCHModule() {
IMoGoFunctionProvider ochProvider = (IMoGoFunctionProvider) ARouter.getInstance()
.build("/driver/api")
.navigation(getContext());
IMoGoFunctionProvider ochProvider;
// 兼容处理之前联想PAD及小巴车多个设备部署不同APP方案
if (!DebugConfig.isMultiDisplay()) {
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
ochProvider = (IMoGoFunctionProvider) ARouter.getInstance()
.build("/driver/api")
.navigation(getContext());
} else {
ochProvider = (IMoGoFunctionProvider) ARouter.getInstance()
.build("/passenger/api")
.navigation(getContext());
}
}
// 处理一个机器多个屏幕方案
else {
// 这里先加载司机端
ochProvider = (IMoGoFunctionProvider) ARouter.getInstance()
.build("/driver/api")
.navigation(getContext());
// 启动乘客端Act
if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) ||
AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)) {
MultiDisplayUtils.INSTANCE.startActWithProcess(
this,
2,
PassengerLauncherActivity.class);
}
}
if (ochProvider != null) {
ochProvider.createCoverage(this, R.id.module_main_id_och_fragment);
}
// TODO这里只针对目前有的 Bus、Taxi业务进行异屏幕启动这里需要考虑现有方案如何兼容
if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode) ||
AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)) {
MultiDisplayUtils.INSTANCE.startActWithProcess(
this,
2,
PassengerLauncherActivity.class);
}
}
@Subscribe(sticky = true)
@@ -225,6 +244,7 @@ public class MainLauncherActivity extends MainActivity implements IMogoIntentLis
/**
* 魔方按键分发 提测前注释 ToastUtils TODO
*
* @param event
* @return
*/