diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseOchBusTabFragment.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseOchBusTabFragment.java index 1ff52a0d9c..5423cd0db1 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseOchBusTabFragment.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseOchBusTabFragment.java @@ -204,8 +204,7 @@ public abstract class BaseOchBusTabFragment { // onShow() - CallerHmiManager.INSTANCE.showBadCaseEntrance(mBadcaseBtn); - return null; }, + return mBadcaseBtn; }, () -> { // onHide() return null; }); } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseOchTaxiTabFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseOchTaxiTabFragment.java index 76097c420e..74d909f48f 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseOchTaxiTabFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseOchTaxiTabFragment.java @@ -137,8 +137,7 @@ public abstract class BaseOchTaxiTabFragment { // onShow() - CallerHmiManager.INSTANCE.showBadCaseEntrance(mBadcaseBtn); - return null; }, + return mBadcaseBtn; }, () -> { // onHide() return null; }); diff --git a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt index 8c90db8c76..1c5b82d607 100644 --- a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt +++ b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/MoGoAutopilotProvider.kt @@ -61,6 +61,7 @@ class MoGoAutopilotProvider : when (FunctionBuildConfig.appIdentityMode) { 0 -> // 司机 { + CallerMapDataCollectorManager.registerOnMapCollectTaskListener(this) // "192.168.1.102" val options = AdasOptions.Builder().setClient(false).build() AdasManager.getInstance().create(context, options) @@ -160,7 +161,6 @@ class MoGoAutopilotProvider : } // 同步数据给工控机的服务 AsyncDataToAutopilotServer.INSTANCE.initServer() - CallerMapDataCollectorManager.registerOnMapCollectTaskListener(this) } /** diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt index d9db97096e..624f268187 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt @@ -95,7 +95,7 @@ class MoGoHmiFragment : MvpFragment private var autoPilotBadCaseView: AutoPilotBadCaseView? = null - private var onBadCaseShow: (() -> Unit)? = null + private var onBadCaseShow: (() -> View)? = null private var onBadCaseHide: (() -> Unit)? = null companion object { @@ -324,19 +324,12 @@ class MoGoHmiFragment : MvpFragment } dismissBadCaseEntryAfterSomeTime() } else { - onBadCaseShow?.invoke() - } - } - } - - override fun showBadCaseEntrance(entrance: View) { - entrance.lifecycleOwner.lifecycle.addObserver(badCaseEntranceObserver) - autoPilotBadCaseEntrance = entrance - lifecycleScope.launch { - withContext(Dispatchers.IO) { - val dao = Repository.dao() - dao.getAllUnConsumedRecords()?.first()?.let { - showBadCaseEntrance(it) + val view = onBadCaseShow?.invoke() + if (view != null) { + view.lifecycleOwner.lifecycle.addObserver(badCaseEntranceObserver) + view.visibility = View.GONE + autoPilotBadCaseEntrance = view + showBadCaseEntrance(record) } } } @@ -350,7 +343,7 @@ class MoGoHmiFragment : MvpFragment } } - override fun registerBadCaseCallback(onShow: () -> Unit, onHide: (() -> Unit)?) { + override fun registerBadCaseCallback(onShow: () -> View, onHide: (() -> Unit)?) { onBadCaseShow = onShow onBadCaseHide = onHide } diff --git a/core/function-impl/mogo-core-function-main/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java b/core/function-impl/mogo-core-function-main/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java index 1cc069f33e..b31fee555f 100644 --- a/core/function-impl/mogo-core-function-main/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java +++ b/core/function-impl/mogo-core-function-main/src/main/java/com/mogo/eagle/core/function/main/MainMoGoApplication.java @@ -15,6 +15,7 @@ import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.constants.SharedPrefsConstants; import com.mogo.commons.debug.DebugConfig; import com.mogo.commons.network.Utils; +import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.constants.MoGoConfig; import com.mogo.eagle.core.data.constants.MogoServicePaths; import com.mogo.eagle.core.data.map.MogoLocation; @@ -155,10 +156,6 @@ public abstract class MainMoGoApplication extends AbsMogoApplication { clientConfig.setAnchor(false); // 设置从蘑菇AI开放平台获取的APPKey switch (DebugConfig.getCarMachineType()) { - // 自研车机 - case DebugConfig.CAR_MACHINE_TYPE_SELF_INNOVATE: - clientConfig.setThirdPartyAppKey("wbvpzgar"); - break; // 比亚迪 case DebugConfig.CAR_MACHINE_TYPE_BYD: clientConfig.setThirdPartyAppKey("bydauto"); @@ -167,6 +164,10 @@ public abstract class MainMoGoApplication extends AbsMogoApplication { case DebugConfig.CAR_MACHINE_TYPE_LENOVO: clientConfig.setThirdPartyAppKey("pfieouqg"); break; + // 自研车机 + default: + clientConfig.setThirdPartyAppKey("wbvpzgar"); + break; } // 设置应用服务AppId 长链、鉴权 if (DebugConfig.getNetMode() == DebugConfig.NET_MODE_RELEASE) { @@ -266,26 +267,26 @@ public abstract class MainMoGoApplication extends AbsMogoApplication { } private void startSocketService() { - Logger.d(TAG,"startSocketService"); + Logger.d(TAG, "startSocketService"); IMogoServiceApis apis = MogoApisHandler.getInstance().getApis(); // 关闭长链服务 apis.getSocketManagerApi(getApplicationContext()).destroy(); apis.getSocketManagerApi(this).registerLifecycleListener(10020, new IMogoLifecycleListener() { @Override public void onConnectFailure() { - Logger.d(TAG,"socket-onConnectFailure"); + Logger.d(TAG, "socket-onConnectFailure"); DebugConfig.setDownloadSnapshot(false); } @Override public void onConnectSuccess() { - Logger.d(TAG,"socket-onConnectSuccess"); + Logger.d(TAG, "socket-onConnectSuccess"); DebugConfig.setDownloadSnapshot(true); } @Override public void onConnectLost() { - Logger.d(TAG,"socket-onConnectLost"); + Logger.d(TAG, "socket-onConnectLost"); DebugConfig.setDownloadSnapshot(false); } }); @@ -311,7 +312,7 @@ public abstract class MainMoGoApplication extends AbsMogoApplication { MogoModulePaths.addBaseModule(new MogoModule(MapApiPath.PATH, "CustomMapApiBuilder")); MogoModulePaths.addBaseModule(new MogoModule(ServiceConst.PATH_REFRESH_STRATEGY, ServiceConst.PATH_REFRESH_STRATEGY)); - // MogoModulePaths.addBaseModule(new MogoModule(V2XConst.PATH_V2X_UI, V2XConst.MODULE_NAME)); + // MogoModulePaths.addBaseModule(new MogoModule(V2XConst.PATH_V2X_UI, V2XConst.MODULE_NAME)); //mogo deva tools MogoModulePaths.addModuleFunctionServer(new MogoModule(MogoServicePaths.PATH_DEVA_TOOLS, "IMoGoDevaToolsProvider")); // 域控制器模块(新) @@ -329,8 +330,22 @@ public abstract class MainMoGoApplication extends AbsMogoApplication { // 推送模块 MogoModulePaths.addModule(new MogoModule(PushUIConstants.PATH, "PUSH_UI")); - // 地图数据收集模块 - MogoModulePaths.addModuleFunctionServer(new MogoModule(MogoServicePaths.PATH_MAP_DATA_COLLECT_PROVIDER, "MoGoMapDataCollector")); + + /* + * 不同身份加载的特殊模块 + */ + switch (FunctionBuildConfig.appIdentityMode) { + // 司机身份专属模块 + case 0: + // 地图数据收集模块 + MogoModulePaths.addModuleFunctionServer(new MogoModule(MogoServicePaths.PATH_MAP_DATA_COLLECT_PROVIDER, "MoGoMapDataCollector")); + break; + case 1: + + break; + default: + break; + } if (!DebugConfig.isLauncher()) { PersistentManager @@ -343,7 +358,7 @@ public abstract class MainMoGoApplication extends AbsMogoApplication { @Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); - /**如果是主进程**/ + /*如果是主进程**/ if (ProcessUtils.isMainProcess(this)) { AppLaunchTimeUtils.beginTimeCalculate(AppLaunchTimeUtils.COLD_START); } diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoWaringProvider.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoWaringProvider.kt index 50ded93312..bf8cad29ac 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoWaringProvider.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoWaringProvider.kt @@ -181,16 +181,10 @@ interface IMoGoWaringProvider { fun showAdUpgradeStatus(upgradeMode : Int,downloadStatus : Int,currentProgress : Int,totalProgress : Int ,downloadVersion : String,upgradeStatus : Int) - - /** - * 显示BadCase入口 - */ - fun showBadCaseEntrance(entrance: View) - /** * 注册badcase入口展示和隐藏的回调 * 当[onShow]被调用时,调用[showBadCaseEntrance] * [onHide]回调不用关心,可以不注册 */ - fun registerBadCaseCallback(onShow:() -> Unit, onHide: (() -> Unit)?) + fun registerBadCaseCallback(onShow:() -> View, onHide: (() -> Unit)?) } \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt index 04ffc50d4e..15f74ffd6e 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt @@ -257,19 +257,12 @@ object CallerHmiManager : CallerBase() { waringProviderApi?.showAdUpgradeStatus(upgradeMode,downloadStatus, currentProgress, totalProgress, downloadVersion, upgradeStatus) } - /** - * 显示BadCase入口 - */ - fun showBadCaseEntrance(entrance: View) { - waringProviderApi?.showBadCaseEntrance(entrance) - } - /** * 注册badcase入口展示和隐藏的回调 - * 当[onShow]被调用时,调用[showBadCaseEntrance] + * 当[onShow]被调用时, 表示达到展示条件,返回展示的入口控件 * [onHide]回调不用关心,可以不注册 */ - fun registerBadCaseCallback(onShow:() -> Unit, onHide: (() -> Unit)?) { + fun registerBadCaseCallback(onShow:() -> View, onHide: (() -> Unit)?) { waringProviderApi?.registerBadCaseCallback(onShow, onHide) }