From e9f4da738915e51fa9e6a7d02a1927aebe0b41e1 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Fri, 26 Apr 2024 19:21:23 +0800 Subject: [PATCH] =?UTF-8?q?[6.4.0]=20[fragment=20=E5=86=85=E5=AD=98?= =?UTF-8?q?=E6=B3=84=E6=BC=8F]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mogo/och/bus/BusDriverProvider.kt | 12 +++-- .../och/bus/passenger/BusPassengerProvider.kt | 25 +++++++---- .../passenger/ui/widget/M2TurnLightView.kt | 1 + .../mogo/och/charter/CharterDriverProvider.kt | 13 ++++-- .../passenger/CharterPassengerProvider.kt | 14 ++++-- .../och/charter/passenger/ui/MainFragment.kt | 1 + .../ui/bottom/impl/MusicCheckView.kt | 7 ++- .../ui/lockview/LockAndUnlockView.kt | 27 +++++++----- .../ui/lockview/LockViewConstrainLayout.kt | 3 ++ .../passenger/ui/lockview/UnlockView.kt | 5 +++ .../module/manager/light/TurnLightManager.kt | 6 +++ .../wigets/media/MediaPlayerFragment.kt | 4 +- OCH/facade/script/utils.gradle | 11 +++++ .../mogo/och/facade/route/FacadeProvider.kt | 2 +- .../passenger/ShuttlePassengerProvider.kt | 25 +++++++---- .../presenter/BaseBusPassengerPresenter.java | 44 +++++++++++++------ .../passenger/ui/widget/BusPTurnLightView.kt | 1 + .../passenger/ui/PM2DrivingInfoFragment.kt | 8 ++-- .../passenger/ui/widget/M2TurnLightView.kt | 1 + .../layout/shuttle_p_jl_view_status_bar.xml | 1 + .../com/mogo/och/taxi/TaxiDriverProvider.kt | 14 ++++-- .../taxi/passenger/TaxiPassengerProvider.kt | 13 ++++-- .../och/taxi/TaxiUnmannedDriverProvider.kt | 14 ++++-- .../TaxiUnmannedPassengerProvider.kt | 13 ++++-- 24 files changed, 193 insertions(+), 72 deletions(-) diff --git a/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusDriverProvider.kt b/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusDriverProvider.kt index dd8204e4d6..f2f6608ef9 100644 --- a/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusDriverProvider.kt +++ b/OCH/bus/driver/src/main/java/com/mogo/och/bus/BusDriverProvider.kt @@ -18,14 +18,20 @@ import com.mogo.och.common.module.biz.provider.CommonServiceImpl class BusDriverProvider : CommonServiceImpl() { private val tag = BusDriverProvider::class.java.simpleName - private lateinit var busFragment: BusFragment + private var busFragment: BusFragment?=null override fun getFragment(): Fragment { - return busFragment + if(busFragment==null){ + busFragment = BusFragment() + } + return busFragment!! + } + + override fun resetFragment() { + busFragment = null } override fun init(context: Context) { CallerLogger.d(tag, "准备show fragment") - busFragment = BusFragment() } } diff --git a/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/BusPassengerProvider.kt b/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/BusPassengerProvider.kt index 8c0806e5f5..e44553a75d 100644 --- a/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/BusPassengerProvider.kt +++ b/OCH/bus/passenger/src/main/java/com/mogo/och/bus/passenger/BusPassengerProvider.kt @@ -29,13 +29,27 @@ class BusPassengerProvider : CommonServiceImpl() { private val tag = BusPassengerProvider::class.java.simpleName - private lateinit var mPM2Fragment: Fragment + private var mPM2Fragment: Fragment?=null override fun getFragment(): Fragment { if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { MultiDisplayUtils.startActWithSecond(ActivityUtils.getTopActivity(), MediaPlayerActivity::class.java) } - return mPM2Fragment + if(mPM2Fragment==null){ + mPM2Fragment = if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + PM2BaseFragment() + } else if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + BusPassengerRouteFragment() + } else { + BusPassengerRouteFragment() + } + } + return mPM2Fragment!! + } + + override fun resetFragment() { + super.resetFragment() + mPM2Fragment = null } override fun getStatusBarView(context: Context): View { @@ -53,13 +67,6 @@ class BusPassengerProvider : CommonServiceImpl() { override fun init(context: Context) { CallerLogger.d(SceneConstant.M_TAXI_P + tag, "init") - mPM2Fragment = if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { - PM2BaseFragment() - } else if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { - BusPassengerRouteFragment() - } else { - BusPassengerRouteFragment() - } } } \ No newline at end of file diff --git a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/widget/M2TurnLightView.kt b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/widget/M2TurnLightView.kt index 7084e5012d..20bc37169f 100644 --- a/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/widget/M2TurnLightView.kt +++ b/OCH/bus/passenger/src/main/java/m2/com/mogo/och/bus/passenger/passenger/ui/widget/M2TurnLightView.kt @@ -58,6 +58,7 @@ class M2TurnLightView @JvmOverloads constructor( super.onDetachedFromWindow() CallerChassisLamplightListenerManager.removeListener(TAG) CallerTurnLightListenerManager.removeListener(TAG) + TurnLightManager.removeTurnLightStatusChangeListener(TAG) } override fun hideTurnLightView() { diff --git a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/CharterDriverProvider.kt b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/CharterDriverProvider.kt index 1077fc808e..909d8521eb 100644 --- a/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/CharterDriverProvider.kt +++ b/OCH/charter/driver/src/main/java/com/magic/mogo/och/charter/CharterDriverProvider.kt @@ -19,15 +19,22 @@ import com.mogo.och.common.module.biz.provider.CommonServiceImpl class CharterDriverProvider : CommonServiceImpl() { private val tag = CharterDriverProvider::class.java.simpleName - private lateinit var fragment: Fragment + private var fragment: Fragment?=null override fun getFragment(): Fragment { - return fragment + CallerLogger.d(SceneConstant.M_TAXI + tag, "getFragment") + if(fragment==null){ + fragment = DriverM1Fragment() + } + return fragment!! + } + + override fun resetFragment() { + fragment = null } override fun init(context: Context) { CallerLogger.d(SceneConstant.M_TAXI + tag, "init") - fragment = DriverM1Fragment() } } \ No newline at end of file diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/CharterPassengerProvider.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/CharterPassengerProvider.kt index 5ab206a822..133cca95b2 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/CharterPassengerProvider.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/CharterPassengerProvider.kt @@ -21,10 +21,19 @@ import com.mogo.och.common.module.biz.provider.CommonServiceImpl class CharterPassengerProvider : CommonServiceImpl() { private val tag = CharterPassengerProvider::class.java.simpleName - private lateinit var fragment: MainFragment + private var fragment: MainFragment?=null override fun getFragment(): Fragment { - return fragment + CallerLogger.d(SceneConstant.M_TAXI_P + tag, "getFragment") + if(fragment==null){ + fragment = MainFragment() + } + return fragment!! + } + + override fun resetFragment() { + CallerLogger.d(SceneConstant.M_TAXI_P + tag, "resetFragment") + fragment = null } override fun getStatusBarView(context: Context): View { @@ -36,7 +45,6 @@ class CharterPassengerProvider : CommonServiceImpl() { override fun init(context: Context) { CallerLogger.d(SceneConstant.M_TAXI_P + tag, "init") - fragment = MainFragment() } } \ No newline at end of file diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/MainFragment.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/MainFragment.kt index fd6d4475d8..263ae11877 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/MainFragment.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/MainFragment.kt @@ -272,6 +272,7 @@ class MainFragment : MvpFragment(), IMogo override fun onDestroyView() { mapBizView.onDestroy() omvOverMap.onDestroy() + MogoMapListenerHandler.mogoMapListenerHandler.unregisterHostMapListener(TAG) super.onDestroyView() EventBus.getDefault().unregister(this) } diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/bottom/impl/MusicCheckView.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/bottom/impl/MusicCheckView.kt index 6157dd61cb..5b88a42404 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/bottom/impl/MusicCheckView.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/bottom/impl/MusicCheckView.kt @@ -45,7 +45,6 @@ open class MusicCheckView @JvmOverloads constructor( init { LayoutInflater.from(context).inflate(R.layout.charter_p_bottom_music, this, true) - AuditionManager.addDataChangeListener(TAG,this) try { val typedArray = context.obtainStyledAttributes(attrs, R.styleable.CharterPBottomSelectView) backageViewId = typedArray.getResourceId(R.styleable.CharterPBottomSelectView_charterPBackageViewId, -1) @@ -141,6 +140,7 @@ open class MusicCheckView @JvmOverloads constructor( override fun onAttachedToWindow() { super.onAttachedToWindow() + AuditionManager.addDataChangeListener(TAG,this) parent?.let { if (parent is ConstraintLayout) { if (backageViewId > 0) { @@ -153,6 +153,11 @@ open class MusicCheckView @JvmOverloads constructor( } } + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + AuditionManager.removeDataChangeListener(TAG) + } + override fun updateState(oldData: MusicData?, musicData: MusicData) { if(musicData.state== PlayState.Playing){ Glide.with(context) diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/LockAndUnlockView.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/LockAndUnlockView.kt index bf4eae809c..f8e32bbe53 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/LockAndUnlockView.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/LockAndUnlockView.kt @@ -37,18 +37,6 @@ class LockAndUnlockView : ConstraintLayout, LockManager.LockStatusCallback { private fun initView() { LayoutInflater.from(context).inflate(R.layout.charter_p_devices_lock_unlock, this, true) - handler = object : Handler(Looper.myLooper()!!) { - override fun handleMessage(msg: Message) { - super.handleMessage(msg) - when (msg.what) { - 2 -> {// 解锁 - LockManager.setLock(LockManager.LockStatus.UNLOCK) - animations?.stop() - } - else -> {} - } - } - } } override fun onAttachedToWindow() { @@ -63,10 +51,25 @@ class LockAndUnlockView : ConstraintLayout, LockManager.LockStatusCallback { } }) } + + handler = object : Handler(Looper.myLooper()!!) { + override fun handleMessage(msg: Message) { + super.handleMessage(msg) + when (msg.what) { + 2 -> {// 解锁 + LockManager.setLock(LockManager.LockStatus.UNLOCK) + animations?.stop() + } + else -> {} + } + } + } } override fun onDetachedFromWindow() { super.onDetachedFromWindow() + handler?.removeCallbacksAndMessages(null) + handler = null LockManager.setAutoStatusCallback(TAG, null) } diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/LockViewConstrainLayout.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/LockViewConstrainLayout.kt index e32003b66b..963113a3ad 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/LockViewConstrainLayout.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/LockViewConstrainLayout.kt @@ -33,6 +33,9 @@ class LockViewConstrainLayout : ConstraintLayout { } override fun onDetachedFromWindow() { + acivScreenLock = null + uvOnlyUnlock = null + uv_only_unlock = null super.onDetachedFromWindow() LockManager.stopLoop4Lock() } diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/UnlockView.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/UnlockView.kt index 8b1b06e02e..e36d40e5a7 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/UnlockView.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/lockview/UnlockView.kt @@ -55,6 +55,11 @@ class UnlockView : ConstraintLayout, LockManager.LockStatusCallback { LockManager.setAutoStatusCallback(TAG,this) } + override fun onDetachedFromWindow() { + super.onDetachedFromWindow() + LockManager.setAutoStatusCallback(TAG,null) + } + override fun setVisibility(visibility: Int) { super.setVisibility(visibility) LockManager.setStatusView(visibility) diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/light/TurnLightManager.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/light/TurnLightManager.kt index 89e9dfaa85..e4c69bd8f4 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/light/TurnLightManager.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/manager/light/TurnLightManager.kt @@ -34,6 +34,12 @@ object TurnLightManager : IMoGoChassisLamplightListener { listener.statusChange(turnLightStatus) } + fun removeTurnLightStatusChangeListener(tag:String){ + if (lightStatusChange.containsKey(tag)){ + lightStatusChange.remove(tag) + } + } + // 转向灯 override fun onAutopilotLightSwitchData(lightSwitch: Chassis.LightSwitch?) { diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerFragment.kt b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerFragment.kt index bd51e3d55f..4489566f02 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerFragment.kt +++ b/OCH/common/common/src/main/java/com/mogo/och/common/module/wigets/media/MediaPlayerFragment.kt @@ -7,6 +7,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.util.GsonUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.mogo.och.common.module.R +import com.shuyu.gsyvideoplayer.GSYVideoManager import kotlinx.android.synthetic.main.fragment_video_player.imageVideoRotationView /** @@ -57,7 +58,7 @@ class MediaPlayerFragment : override fun onPause() { super.onPause() - //imageVideoRotationView.setPause() + imageVideoRotationView.setPause() } override fun onResume() { @@ -67,6 +68,7 @@ class MediaPlayerFragment : override fun onDestroy() { MediaDataSourceManager.unInit(TAG) + GSYVideoManager.releaseAllVideos() super.onDestroy() } } diff --git a/OCH/facade/script/utils.gradle b/OCH/facade/script/utils.gradle index 8876c6736e..0e854c72c6 100644 --- a/OCH/facade/script/utils.gradle +++ b/OCH/facade/script/utils.gradle @@ -59,9 +59,20 @@ boolean isCurrentFlavors(String flavors){ return false } +boolean isBaiLing() { + for (String s : gradle.startParameter.taskNames) { + println "----------isPassenger------${s}" + if (s.contains("Bailing") | s.contains("bailing")) { + return true + } + } + return false +} + ext { isPassenger = this.&isPassenger isDriver = this.&isDriver + isBaiLing = this.&isBaiLing isCurrentFlavors = this.&isCurrentFlavors isCurrentDriver = this.&isCurrentDriver isCurrentPassenger = this.&isCurrentPassenger diff --git a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt index 79e8a446d3..0d64c3a8e6 100644 --- a/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt +++ b/OCH/facade/src/main/java/com/mogo/och/facade/route/FacadeProvider.kt @@ -160,7 +160,7 @@ abstract class FacadeProvider : IMoGoFunctionProvider, ILoginCallback { val fragment = getFragment() injectStatusBar() d(TAG, "切换 fragment:${fragment}") - + LoginStatusManager.resetFragment() if (supportFragmentManager != null) { val back = supportFragmentManager.beginTransaction() back.replace(containerId, fragment, fragment.tag) diff --git a/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/ShuttlePassengerProvider.kt b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/ShuttlePassengerProvider.kt index f7e6ebf3c1..7a1a159cb6 100644 --- a/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/ShuttlePassengerProvider.kt +++ b/OCH/shuttle/passenger/src/main/java/com/mogo/och/shuttle/passenger/ShuttlePassengerProvider.kt @@ -26,17 +26,10 @@ import com.mogo.och.shuttle.passenger.ui.widget.M2StatusBarView class ShuttlePassengerProvider : CommonServiceImpl() { private val tag = ShuttlePassengerProvider::class.java.simpleName - private lateinit var mPM2Fragment: Fragment + private var mPM2Fragment: Fragment?=null override fun init(context: Context) { TicketModel.load() - mPM2Fragment = if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { - PM2BaseFragment() - }else if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { - BusPassengerRouteFragment() - }else{ - BusPassengerRouteFragment() - } } override fun getStatusBarView(context: Context): View { @@ -56,7 +49,21 @@ class ShuttlePassengerProvider : CommonServiceImpl() { if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { MultiDisplayUtils.startActWithSecond(ActivityUtils.getTopActivity(), MediaPlayerActivity::class.java) } - return mPM2Fragment + if(mPM2Fragment==null){ + mPM2Fragment = if (AppIdentityModeUtils.isB2(FunctionBuildConfig.appIdentityMode)) { + PM2BaseFragment() + }else if (AppIdentityModeUtils.isB1(FunctionBuildConfig.appIdentityMode)) { + BusPassengerRouteFragment() + }else{ + BusPassengerRouteFragment() + } + } + return mPM2Fragment!! + } + + override fun resetFragment() { + super.resetFragment() + mPM2Fragment = null } } \ No newline at end of file diff --git a/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/presenter/BaseBusPassengerPresenter.java b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/presenter/BaseBusPassengerPresenter.java index 8a7abbaa49..67c7a3036a 100644 --- a/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/presenter/BaseBusPassengerPresenter.java +++ b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/presenter/BaseBusPassengerPresenter.java @@ -86,20 +86,26 @@ public class BaseBusPassengerPresenter extends Presenter mView.onAutopilotStatusChanged( - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE)); + if(mView != null) { + runOnUIThread(() -> mView.onAutopilotStatusChanged( + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE)); + } } @Override public void onAutopilotDisable() { - runOnUIThread(() -> mView.onAutopilotStatusChanged( - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE)); + if(mView != null) { + runOnUIThread(() -> mView.onAutopilotStatusChanged( + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE)); + } } @Override public void onAutopilotRunning() { - runOnUIThread(() -> mView.onAutopilotStatusChanged( - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING)); + if(mView != null) { + runOnUIThread(() -> mView.onAutopilotStatusChanged( + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING)); + } } @Override @@ -109,14 +115,16 @@ public class BaseBusPassengerPresenter extends Presenter mView.onCarLocationChanged(location)); } } @Override public void changeOperationStatus(boolean changeStatus) { - runOnUIThread(() -> mView.changeOperationStatus(changeStatus)); + if(mView != null) { + runOnUIThread(() -> mView.changeOperationStatus(changeStatus)); + } } @Override @@ -126,27 +134,37 @@ public class BaseBusPassengerPresenter extends Presenter mView.updateLineInfo(lineName)); + if(mView != null) { + runOnUIThread(() -> mView.updateLineInfo(lineName)); + } } @Override public void updateStationsInfo(List stations, int currentStationIndex, boolean isArrived) { - runOnUIThread(() -> mView.updateStationsInfo(stations,currentStationIndex, isArrived)); + if(mView != null) { + runOnUIThread(() -> mView.updateStationsInfo(stations, currentStationIndex, isArrived)); + } } @Override public void showNoTaskView() { - runOnUIThread(() -> mView.showNoTaskView()); + if(mView != null) { + runOnUIThread(() -> mView.showNoTaskView()); + } } @Override public void hideNoTaskView() { - runOnUIThread(() -> mView.hideNoTaskView()); + if(mView != null) { + runOnUIThread(() -> mView.hideNoTaskView()); + } } @Override public void routePlanningToNextStationChanged(long meters, long timeInSecond) { - runOnUIThread(() -> mView.updateRoutePlanningToNextStation(meters, timeInSecond)); + if(mView != null) { + runOnUIThread(() -> mView.updateRoutePlanningToNextStation(meters, timeInSecond)); + } } @Override diff --git a/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/widget/BusPTurnLightView.kt b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/widget/BusPTurnLightView.kt index 8d8ff58885..0016086878 100644 --- a/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/widget/BusPTurnLightView.kt +++ b/OCH/shuttle/passenger/src/main/java/jinlv/com/mogo/och/shuttle/passenger/ui/widget/BusPTurnLightView.kt @@ -58,6 +58,7 @@ class BusPTurnLightView @JvmOverloads constructor( super.onDetachedFromWindow() CallerChassisLamplightListenerManager.removeListener(TAG) CallerTurnLightListenerManager.removeListener(TAG) + TurnLightManager.removeTurnLightStatusChangeListener(TAG) } override fun hideTurnLightView() { diff --git a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2DrivingInfoFragment.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2DrivingInfoFragment.kt index 4872a904f3..6fdd0e0cc2 100644 --- a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2DrivingInfoFragment.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/PM2DrivingInfoFragment.kt @@ -124,11 +124,9 @@ class PM2DrivingInfoFragment : } } - override fun onDestroy() { - super.onDestroy() - overMapView?.let{ - it.onDestroy() - } + override fun onDestroyView() { + overMapView?.onDestroy() + super.onDestroyView() } fun updateSpeed(speed: Int){ diff --git a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2TurnLightView.kt b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2TurnLightView.kt index da9942750a..6b2b1e8e5d 100644 --- a/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2TurnLightView.kt +++ b/OCH/shuttle/passenger/src/main/java/m2/com/mogo/och/shuttle/passenger/ui/widget/M2TurnLightView.kt @@ -58,6 +58,7 @@ class M2TurnLightView @JvmOverloads constructor( super.onDetachedFromWindow() CallerChassisLamplightListenerManager.removeListener(TAG) CallerTurnLightListenerManager.removeListener(TAG) + TurnLightManager.removeTurnLightStatusChangeListener(TAG) } override fun hideTurnLightView() { diff --git a/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_view_status_bar.xml b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_view_status_bar.xml index 0ccfb4364a..cc89490991 100644 --- a/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_view_status_bar.xml +++ b/OCH/shuttle/passenger/src/main/res/jinlv/layout/shuttle_p_jl_view_status_bar.xml @@ -24,6 +24,7 @@ android:id="@+id/wifiStateView" android:layout_width="wrap_content" android:layout_height="@dimen/dp_28" + app:wifi_size="@dimen/dp_18" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toEndOf="@+id/status_bar_logo" diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiDriverProvider.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiDriverProvider.kt index 0a199335a1..1a7f04683c 100644 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiDriverProvider.kt +++ b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiDriverProvider.kt @@ -21,14 +21,22 @@ import com.mogo.och.taxi.ui.TaxiFragment class TaxiDriverProvider : CommonServiceImpl() { private val tag = TaxiDriverProvider::class.java.simpleName - private lateinit var ochTaxiFragment: TaxiFragment + private var ochTaxiFragment: TaxiFragment? = null override fun init(context: Context) { d(SceneConstant.M_TAXI + tag, "init") - ochTaxiFragment = TaxiFragment() + } override fun getFragment(): Fragment { - return ochTaxiFragment + if (ochTaxiFragment == null) { + ochTaxiFragment = TaxiFragment() + } + return ochTaxiFragment!! + } + + override fun resetFragment() { + super.resetFragment() + ochTaxiFragment = null } } diff --git a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiPassengerProvider.kt b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiPassengerProvider.kt index 708f66ffe1..e82decc20d 100644 --- a/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiPassengerProvider.kt +++ b/OCH/taxi/passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiPassengerProvider.kt @@ -23,10 +23,9 @@ import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView class TaxiPassengerProvider : CommonServiceImpl() { private val tag = TaxiPassengerProvider::class.java.simpleName - private lateinit var ochTaxiPassengerFragment: TaxiPassengerBaseFragment + private var ochTaxiPassengerFragment: TaxiPassengerBaseFragment?=null override fun init(context: Context) { d(SceneConstant.M_TAXI_P + tag, "init") - ochTaxiPassengerFragment = TaxiPassengerBaseFragment() } override fun getStatusBarView(context: Context): View { @@ -37,7 +36,15 @@ class TaxiPassengerProvider : CommonServiceImpl() { } override fun getFragment(): Fragment { - return ochTaxiPassengerFragment + if(ochTaxiPassengerFragment==null){ + ochTaxiPassengerFragment = TaxiPassengerBaseFragment() + } + return ochTaxiPassengerFragment!! + } + + override fun resetFragment() { + super.resetFragment() + ochTaxiPassengerFragment = null } } diff --git a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/TaxiUnmannedDriverProvider.kt b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/TaxiUnmannedDriverProvider.kt index 1486ff68d9..a08deb4262 100644 --- a/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/TaxiUnmannedDriverProvider.kt +++ b/OCH/taxi/unmanned-driver/src/main/java/com/mogo/och/taxi/TaxiUnmannedDriverProvider.kt @@ -21,14 +21,22 @@ import com.mogo.och.taxi.ui.base.TaxiFragment class TaxiUnmannedDriverProvider : CommonServiceImpl() { private val tag = TaxiUnmannedDriverProvider::class.java.simpleName - private lateinit var ochTaxiFragment: TaxiFragment + private var ochTaxiFragment: TaxiFragment?=null override fun init(context: Context) { CallerLogger.d(SceneConstant.M_TAXI + tag, "init") - ochTaxiFragment = TaxiFragment() } override fun getFragment(): Fragment { - return ochTaxiFragment + CallerLogger.d(SceneConstant.M_TAXI + tag, "getFragment") + if(ochTaxiFragment==null){ + ochTaxiFragment = TaxiFragment() + } + return ochTaxiFragment!! + } + + override fun resetFragment() { + CallerLogger.d(SceneConstant.M_TAXI + tag, "resetFragment") + ochTaxiFragment = null } } \ No newline at end of file diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiUnmannedPassengerProvider.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiUnmannedPassengerProvider.kt index d4e550a2e4..2666692b1c 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiUnmannedPassengerProvider.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/TaxiUnmannedPassengerProvider.kt @@ -23,10 +23,9 @@ import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView class TaxiUnmannedPassengerProvider : CommonServiceImpl() { private val tag = TaxiUnmannedPassengerProvider::class.java.simpleName - private lateinit var ochTaxiPassengerFragment: TaxiPassengerBaseFragment + private var ochTaxiPassengerFragment: TaxiPassengerBaseFragment? = null override fun init(context: Context) { d(SceneConstant.M_TAXI_P + tag, "init") - ochTaxiPassengerFragment = TaxiPassengerBaseFragment() statusBarView = StatusBarView(context) } @@ -38,7 +37,15 @@ class TaxiUnmannedPassengerProvider : CommonServiceImpl() { } override fun getFragment(): Fragment { - return ochTaxiPassengerFragment + if(ochTaxiPassengerFragment==null){ + ochTaxiPassengerFragment = TaxiPassengerBaseFragment() + } + return ochTaxiPassengerFragment!! + } + + override fun resetFragment() { + super.resetFragment() + ochTaxiPassengerFragment = null } }