From 9e758765305744ed98028ee720755e5a94917dde Mon Sep 17 00:00:00 2001 From: wangmingjun Date: Wed, 3 Aug 2022 12:53:22 +0800 Subject: [PATCH] =?UTF-8?q?[290=20bus/taxi]=20=E4=BC=98=E5=8C=96=E8=B7=AF?= =?UTF-8?q?=E7=BA=BF=E8=AE=A1=E7=AE=97=E5=AE=9A=E6=97=B6=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../network/BusPassengerModelLoopManager.java | 12 +++++++++--- .../bus/passenger/ui/BusPassengerBaseFragment.java | 3 +++ .../passenger/ui/BusPassengerMapDirectionView.java | 1 + .../model/TaxiPassengerModelLoopManager.java | 6 ++++-- 4 files changed, 17 insertions(+), 5 deletions(-) diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/network/BusPassengerModelLoopManager.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/network/BusPassengerModelLoopManager.java index 044f2e3f72..c37b463947 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/network/BusPassengerModelLoopManager.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/network/BusPassengerModelLoopManager.java @@ -37,11 +37,12 @@ public class BusPassengerModelLoopManager { } private Disposable mHeartbeatDisposable; //心跳轮询 - private CompositeDisposable mRouteWipeDisposable = new CompositeDisposable(); - private CompositeDisposable mCalculateRouteDisposable = new CompositeDisposable(); //每隔2s计算一次剩余里程和时间 + private CompositeDisposable mRouteWipeDisposable; + private CompositeDisposable mCalculateRouteDisposable; //每隔2s计算一次剩余里程和时间 public void startOrStopRouteAndWipe() { CallerLogger.INSTANCE.i(M_BUS_P + TAG, "startOrStopRouteWipe()"); + if (mRouteWipeDisposable != null) return; if (mRouteWipeDisposable == null){ mRouteWipeDisposable = new CompositeDisposable(); } @@ -70,7 +71,10 @@ public class BusPassengerModelLoopManager { } public void stopOrStopRouteAndWipe() { - if (mRouteWipeDisposable != null) mRouteWipeDisposable.dispose(); + if (mRouteWipeDisposable != null) { + mRouteWipeDisposable.dispose(); + mRouteWipeDisposable = null; + } } public void startQueryDriverLineLoop() { @@ -96,6 +100,7 @@ public class BusPassengerModelLoopManager { public void startCalculateRouteInfoLoop() { CallerLogger.INSTANCE.i(M_BUS_P + TAG, "startCalculateRouteInfoLoop()"); + if (mCalculateRouteDisposable != null) return; if (mCalculateRouteDisposable == null){ mCalculateRouteDisposable = new CompositeDisposable(); } @@ -127,6 +132,7 @@ public class BusPassengerModelLoopManager { if (mCalculateRouteDisposable != null) { CallerLogger.INSTANCE.i(M_BUS_P + TAG, "stopCalculateRouteInfLoop()"); mCalculateRouteDisposable.dispose(); + mCalculateRouteDisposable = null; } } diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java index 076e55c281..b509bc789d 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerBaseFragment.java @@ -107,13 +107,16 @@ public abstract class BusPassengerBaseFragment() { @Override @@ -102,6 +103,7 @@ public class TaxiPassengerModelLoopManager { if (mRouteWipeDisposable != null) { CallerLogger.INSTANCE.i(M_TAXI_P + TAG, "stopRouteAndWipe()"); mRouteWipeDisposable.dispose(); + mRouteWipeDisposable = null; } }