diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanDriverSocket.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanDriverSocket.kt index 334130cf98..7fa2623b27 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanDriverSocket.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanDriverSocket.kt @@ -59,10 +59,10 @@ object LoginLanDriverSocket : ILoginCallback { // 司机端发送业务模式更改和环境校验 override fun onStatusChange(currentStatus: LoginStatusEnum?) { + FlavorUtils.getEnvCheck() if (FlavorUtils.vehicleType != null && FlavorUtils.projectType != null && FlavorUtils.envType != null) { when (currentStatus) { LoginStatusEnum.Login -> { - FlavorUtils.getEnvCheck() val msg = ChangeBusinessType( FlavorUtils.vehicleType!!, @@ -77,7 +77,6 @@ object LoginLanDriverSocket : ILoginCallback { BizLoopManager.setLoopFunction(TAG, LoopInfo(60*10, ::loopCheck)) } } - else -> { BizLoopManager.removeLoopFunction(TAG) val msg = diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanPassengerSocket.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanPassengerSocket.kt index c305ec6afe..f126372eea 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanPassengerSocket.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/lansocket/LoginLanPassengerSocket.kt @@ -2,12 +2,16 @@ package com.mogo.och.common.module.biz.lansocket import com.mogo.eagle.core.function.api.telematic.IReceivedMsgListener import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager +import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.Logger import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.common.module.biz.login.BusinessEnum import com.mogo.och.common.module.biz.login.LoginStatusEnum import com.mogo.och.common.module.biz.login.LoginStatusManager import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager +import com.mogo.och.common.module.manager.loop.BizLoopManager +import com.mogo.och.common.module.manager.loop.LoopInfo import com.mogo.och.common.module.manager.socket.lan.ILanMessageListener import com.mogo.och.common.module.manager.socket.lan.LanSocketManager import com.mogo.och.common.module.manager.socket.lan.bean.BaseDPMsg @@ -36,6 +40,24 @@ object LoginLanPassengerSocket : IReceivedMsgListener { } } + var isConnected:Boolean by Delegates.observable(false) { _, oldV, newV -> + if (oldV != newV) { + if(newV){// 已连接 + if(driverSn.isEmpty()){ + LoginStatusManager.changeStatus("连接成功 未收到司机屏sn") + }else{ + LoginStatusManager.changeStatus("连接成功 司机SN:${driverSn}") + } + }else{// 未连接 + if(driverSn.isEmpty()){ + LoginStatusManager.changeStatus("当前状态:连接司机屏中") + }else{ + LoginStatusManager.changeStatus("连接断开 司机SN:${driverSn}") + } + } + } + } + // 环境监测 private val checkListener = object : ILanMessageListener { override fun target(): Class { @@ -94,7 +116,7 @@ object LoginLanPassengerSocket : IReceivedMsgListener { BusinessType.taxi -> LoginStatusManager.setBusinessType(BusinessEnum.Taxi.code) BusinessType.taxiunmanned ->LoginStatusManager.setBusinessType(BusinessEnum.Taxi.code) } - status.append(", 后台配置:${LoginStatusManager.getBusInessType().name}>") + status.append(", 切换后:${LoginStatusManager.getBusInessType().name}>") LoginStatusManager.changeStatus(status.toString()) UiThreadHandler.postDelayed({ LoginStatusManager.setLoginStatus(LoginStatusEnum.Login) @@ -113,6 +135,7 @@ object LoginLanPassengerSocket : IReceivedMsgListener { init { //监听司机端消息 CallerTelematicListenerManager.addListener(TAG, this) + BizLoopManager.setLoopFunction(TAG, LoopInfo(3, ::showConnectStatusWithDriver)) // 乘客屏 LanSocketManager.registerSocketMessageListener( DPMsgType.TYPE_ENV_CHECK.type, @@ -130,6 +153,11 @@ object LoginLanPassengerSocket : IReceivedMsgListener { } + private fun showConnectStatusWithDriver(){ + CallerLogger.d(TAG,"司机屏连接状态:${CallerTelematicManager.getClientConnStatus()}") + isConnected = CallerTelematicManager.getClientConnStatus() + } + override fun onReceivedServerSn(sn: String?) { Logger.d(TAG, "司机屏sn:$sn") driverSn = sn ?: "" diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/navi/amap/TaxiAmapNaviFragment.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/navi/amap/TaxiAmapNaviFragment.kt index d3768cf887..65090b8871 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/navi/amap/TaxiAmapNaviFragment.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/navi/amap/TaxiAmapNaviFragment.kt @@ -1,12 +1,10 @@ package com.mogo.och.taxi.ui.navi.amap import android.os.Bundle -import com.amap.api.navi.AMapNaviViewListener import com.mogo.commons.mvp.BaseFragment -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.och.common.module.map.AmapNaviToDestinationModel -import com.mogo.och.common.module.map.ICommonNaviChangedCallback import com.mogo.och.taxi.R import kotlinx.android.synthetic.main.taxi_amap_navi_view.navi_view @@ -15,6 +13,8 @@ import kotlinx.android.synthetic.main.taxi_amap_navi_view.navi_view * @date: 2023/7/24 */ class TaxiAmapNaviFragment : BaseFragment(){ + + private val TAG = "TaxiAmapNaviFragment" companion object { fun newInstance(): TaxiAmapNaviFragment { val args = Bundle() @@ -36,25 +36,34 @@ class TaxiAmapNaviFragment : BaseFragment(){ } override fun initViews(savedInstanceState: Bundle?) { + CallerLogger.e(SceneConstant.M_TAXI + TAG, "initViews") super.initViews(savedInstanceState) if (navi_view != null) navi_view.onCreate(savedInstanceState) } override fun onResume() { + CallerLogger.e(SceneConstant.M_TAXI + TAG, "onResume") super.onResume() if (navi_view != null) navi_view.onResume() } override fun onPause() { + CallerLogger.e(SceneConstant.M_TAXI + TAG, "onPause") super.onPause() if (navi_view != null) navi_view.onPause() } - override fun onDestroy() { - super.onDestroy() + override fun onDestroyView() { + CallerLogger.e(SceneConstant.M_TAXI + TAG, "onDestroyView") AmapNaviToDestinationModel.getInstance(context).setVoiceIsMute(false) if (navi_view != null) { navi_view.onDestroy() } + super.onDestroyView() + } + + override fun onDestroy() { + super.onDestroy() + } }