diff --git a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/map/AmapNaviToDestinationModel.java b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/map/AmapNaviToDestinationModel.java index d49a3f7a34..a5bea903ec 100644 --- a/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/map/AmapNaviToDestinationModel.java +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/map/AmapNaviToDestinationModel.java @@ -78,7 +78,7 @@ public class AmapNaviToDestinationModel implements AMapNaviListener { public void setVoiceIsMute(boolean isPlay) { ThreadUtils.getSinglePool().execute(() -> { if (mAMapNavi == null) return; - CallerLogger.i(TAG, "setVoiceIsMute()--"+isPlay); + CallerLogger.i(TAG, "setVoiceIsMute()--" + isPlay); this.isPlay = isPlay; if (isPlay) { mAMapNavi.startSpeak(); @@ -108,6 +108,7 @@ public class AmapNaviToDestinationModel implements AMapNaviListener { } public void setTaxiNaviChangedCallback(ICommonNaviChangedCallback callback) { + CallerLogger.i(TAG, "setTaxiNaviChangedCallback()"); this.mNaviChangedCallback = callback; } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingFragment.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingFragment.kt index e09caa978c..9b910b80b8 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingFragment.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingFragment.kt @@ -10,6 +10,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02Lis import com.mogo.eagle.core.function.main.MainMoGoApplication import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant +import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.common.module.map.AmapNaviToDestinationModel import com.mogo.och.common.module.map.ICommonNaviChangedCallback @@ -97,7 +98,6 @@ class TaxiRoutingFragment : BaseFragment(), ICommonNaviChangedCallback { when (routingUiState) { is RoutingUIState.Init -> { showChooseTaskView() - AmapNaviToDestinationModel.getInstance(context).destroyAmaNavi() } is RoutingUIState.RoutingTask -> { @@ -181,7 +181,6 @@ class TaxiRoutingFragment : BaseFragment(), ICommonNaviChangedCallback { startStationName.text = data.grayLineBean?.startSite?.siteName endStationName.text = data.grayLineBean?.endSite?.siteName - } private fun showFinishTaskView(routingTask: RoutingUIState.RoutingTask) { @@ -315,7 +314,10 @@ class TaxiRoutingFragment : BaseFragment(), ICommonNaviChangedCallback { val endNaviLatLng = NaviLatLng(stationLat, stationLng) AmapNaviToDestinationModel.getInstance(context).initAMapNavi(startNaviLatLng, endNaviLatLng) AmapNaviToDestinationModel.getInstance(context).setVoiceIsMute(isVoicePlay) - AmapNaviToDestinationModel.getInstance(context).setTaxiNaviChangedCallback(this) + // 怀疑在线程池执行的destroyAmaNavi会比 主线程执行的setTaxiNaviChangedCallback慢,导致setTaxiNaviChangedCallback(this)会被冲掉 + ThreadUtils.getSinglePool().execute { + AmapNaviToDestinationModel.getInstance(context).setTaxiNaviChangedCallback(this) + } } override fun onCurrentNaviDistAndTimeChanged(meters: Int, timeInSecond: Long) { diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingFragmentViewModel.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingFragmentViewModel.kt index 7a105e7096..2d6e900f96 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingFragmentViewModel.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/ui/routing/TaxiRoutingFragmentViewModel.kt @@ -7,6 +7,7 @@ import com.mogo.commons.module.status.MogoStatusManager import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.util.ToastUtils +import com.mogo.och.common.module.map.AmapNaviToDestinationModel import com.mogo.och.taxi.base.BaseViewModel import com.mogo.och.taxi.base.IUiIntent import com.mogo.och.taxi.bean.GrayLineBean @@ -149,6 +150,8 @@ class TaxiRoutingFragmentViewModel : BaseViewModel