[6.10.0]硬件初始化时机更改

This commit is contained in:
xuxinchao
2025-02-14 16:44:02 +08:00
parent 58c5d8a049
commit d179624eed
7 changed files with 58 additions and 7 deletions

View File

@@ -4,7 +4,9 @@ import android.content.Context
import com.alibaba.android.arouter.facade.annotation.Route
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.data.constants.MogoServicePaths
import com.mogo.eagle.core.function.api.datacenter.IDataCenterBizListener
import com.mogo.eagle.core.function.api.datacenter.IDataCenterProvider
import com.mogo.eagle.core.function.call.datacenter.CallerDataCenterBizListener
import com.mogo.eagle.core.function.call.datacenter.CallerDataCenterBizManager
import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager
import com.mogo.eagle.core.function.datacenter.iot.IotManager
@@ -14,31 +16,38 @@ import com.mogo.eagle.core.function.datacenter.v2x.TrafficLightDispatcher
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
@Route(path = MogoServicePaths.PATH_DATA_CENTER_MODULE)
class DataCenterProvider : IDataCenterProvider {
class DataCenterProvider : IDataCenterProvider, IDataCenterBizListener {
override val functionName: String
get() = "DataCenterProvider"
private var mContext: Context? = null
private val TAG = "DataCenterProvider"
override fun init(context: Context?) {
MoGoLocationDispatcher.initListener()
CallerDataCenterBizListener.addListener(TAG,this)
mContext = context
mContext?.let {
CallerDataCenterBizManager.init()
CallerMsgBoxManager.queryAllMessages(it)
TrafficLightDispatcher.INSTANCE.initServer(it)
SpeedLimitDispatcher.INSTANCE.initLimit(it)
IotManager.init(
AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode),
AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)
)
}
}
override fun invokeVehicleChange() {
super.invokeVehicleChange()
IotManager.init(
AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode),
AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)
)
}
override fun onDestroy() {
TrafficLightDispatcher.INSTANCE.destroy()
SpeedLimitDispatcher.INSTANCE.destroy()
IotManager.destroy()
CallerDataCenterBizListener.removeListener(TAG)
}
}

View File

@@ -49,6 +49,14 @@ class DataCenterBizProvider:IDataCenterBizProvider {
CallerDataCenterBizListener.invokeLoginStatus(isLogin)
}
override fun onProductChange() {
CallerDataCenterBizListener.invokeProductChange()
}
override fun onVehicleChange() {
CallerDataCenterBizListener.invokeVehicleChange()
}
override fun onDestroy() {
}

View File

@@ -21,6 +21,10 @@ interface IDataCenterBizListener {
fun invokeLoginStatus(isLogin: Boolean){}
fun invokeProductChange(){}
fun invokeVehicleChange(){}
fun isLoginStatus(): Boolean{
return false
}

View File

@@ -35,4 +35,10 @@ interface IOchFunctionCallNotify {
// 登录状态变化
fun notifyLoginStatus(isLogin: Boolean)
//业务模式发生变化
fun onProductChange()
//车型发生变化
fun onVehicleChange()
}

View File

@@ -88,6 +88,18 @@ object CallerDataCenterBizListener : CallerBase<IDataCenterBizListener>() {
}
}
fun invokeProductChange(){
M_LISTENERS.forEach{
it.value.invokeProductChange()
}
}
fun invokeVehicleChange(){
M_LISTENERS.forEach{
it.value.invokeVehicleChange()
}
}
fun isLoginStatus(): Boolean {
return isLoginStatus.get()
}

View File

@@ -48,4 +48,14 @@ object CallerDataCenterBizManager: IOchFunctionCallNotify {
dataCenterBizProviderApi?.notifyLoginStatus(isLogin)
}
//业务模式发生变化
override fun onProductChange() {
dataCenterBizProviderApi?.onProductChange()
}
//车型发生变化
override fun onVehicleChange() {
dataCenterBizProviderApi?.onVehicleChange()
}
}

View File

@@ -131,11 +131,13 @@ object CallerEagleBaseFunctionCall4OchManager : IEagleBaseFunctionCall4Och {
CallerDataCenterBizManager.notifyOrderRemoval()
}
//业务模式发生变化
override fun onOchProductChange() {
CallerDataCenterBizManager.onProductChange()
}
//车型发生变化
override fun onOchVehicleChange() {
CallerDataCenterBizManager.onVehicleChange()
}
}