From b93bf36bf5ed298c7cc6350867100860fc97d53e Mon Sep 17 00:00:00 2001 From: yangyakun Date: Fri, 15 Jul 2022 19:03:03 +0800 Subject: [PATCH] =?UTF-8?q?=E6=AF=8F=E6=AC=A1=E4=BB=8E=E6=A1=8C=E9=9D=A2?= =?UTF-8?q?=E8=BF=9B=E5=85=A5=E9=83=BD=E4=BC=9A=E5=88=B0=E9=A6=96=E9=A1=B5?= =?UTF-8?q?=E7=9A=84=E9=85=8D=E7=BD=AE=E4=BF=AE=E6=94=B9=20=E5=85=B3?= =?UTF-8?q?=E9=97=AD=E8=A7=86=E9=A2=91=E6=92=AD=E6=94=BE=E9=A1=B5=E4=B8=8D?= =?UTF-8?q?=E5=86=8D=E9=80=9A=E8=BF=87startActivity=E4=BC=A0=E9=80=92?= =?UTF-8?q?=EF=BC=88=E9=98=B2=E6=AD=A2=E4=B8=AD=E9=97=B4=E9=BB=91=E5=B1=8F?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../taxi/passenger/mulprocess/ICallback.aidl | 2 + .../ui/TaxiPassengerBaseFragment.java | 4 +- .../passenger/ui/leftmenu/LeftMenuOpen.kt | 12 +++++ .../taxi/passenger/ui/leftmenu/ListAdapter.kt | 6 +-- .../ui/leftmenu/OverlayLeftViewUtils.kt | 52 +++++++++++++------ .../taxi/passenger/ui/video/VideoActivity.kt | 33 +++++++++--- .../ui/video/event/FinishActivity.java | 4 ++ .../src/main/res/values/styles.xml | 1 + app/productFlavors/fPadLenovoOchBus.gradle | 2 +- .../fPadLenovoOchBusPassenger.gradle | 2 +- app/productFlavors/fPadLenovoOchTaxi.gradle | 2 +- .../fPadLenovoOchTaxiPassenger.gradle | 2 +- .../src/main/AndroidManifest.xml | 6 ++- 13 files changed, 94 insertions(+), 34 deletions(-) create mode 100644 OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/event/FinishActivity.java diff --git a/OCH/mogo-och-taxi-passenger/src/main/aidl/com/mogo/och/taxi/passenger/mulprocess/ICallback.aidl b/OCH/mogo-och-taxi-passenger/src/main/aidl/com/mogo/och/taxi/passenger/mulprocess/ICallback.aidl index 2c06bf8907..a3a46acde7 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/aidl/com/mogo/och/taxi/passenger/mulprocess/ICallback.aidl +++ b/OCH/mogo-och-taxi-passenger/src/main/aidl/com/mogo/och/taxi/passenger/mulprocess/ICallback.aidl @@ -7,4 +7,6 @@ interface ICallback { void onResult(long meters, long timeInSecond,float speed); + void postEvent(int type); + } \ No newline at end of file diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.java b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.java index 79db51c922..a2ba985563 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.java +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerBaseFragment.java @@ -130,7 +130,7 @@ public class TaxiPassengerBaseFragment extends MvpFragment { - OverlayLeftViewUtils.INSTANCE.showOverlayView(getActivity()); + OverlayLeftViewUtils.INSTANCE.showOverlayView(getActivity(),0,true,-1,true); OverlayLeftViewUtils.INSTANCE.addDragTarget(vOpenLeft); //showOrHideArrivedEndLayout(true, "北京北京北京", "1527481606997577728"); //showOrHidePressengerCheckPager(true, "开始站点开", "开始站点开始站点开始", "2", "京A888888", "18811539480"); @@ -258,7 +258,7 @@ public class TaxiPassengerBaseFragment extends MvpFragment() val liveSelected = object :ListAdapter.OnTabSelectListener{ - override fun onSelect() { - close(view, windowManager) - VideoActivity.startActivity(context,VideoActivity.VIDEOTYPE_CLOSE) + override fun onSelect(isCurrentProcess:Boolean) { + if(isCurrentProcess) { + close(view, windowManager) + EventBus.getDefault().post(FinishActivity()) + }else { + LeftMenuOpen.invoKeyByEventType(VideoActivity.EVENT_FINISH) + } + if(isMainProcess){ + //主进程 建议Eventbus实现 + } } } val overViewSelected = object :ListAdapter.OnTabSelectListener{ - override fun onSelect() { - close(view, windowManager) - ToastUtils.showShort("全程概览") - VideoActivity.startActivity(context,VideoActivity.VIDEOTYPE_CLOSE) - // TODO: 添加全程概览的代码 + override fun onSelect(isCurrentProcess:Boolean) { + if(isCurrentProcess) { + close(view, windowManager) + ToastUtils.showShort("全程概览") + EventBus.getDefault().post(FinishActivity()) + }else { + LeftMenuOpen.invoKeyByEventType(VideoActivity.EVENT_FINISH) + } + if(isMainProcess){ + //主进程 建议Eventbus实现 + // TODO: 需要在主进程中 添加全程概览的代码 + } } } val consultSelect = object :ListAdapter.OnTabSelectListener{ - override fun onSelect() { - close(view, windowManager) - VideoActivity.startActivity(context,VideoActivity.VIDEOTYPE_CONSULT) + override fun onSelect(isCurrentProcess:Boolean) { + if(isCurrentProcess) { + close(view, windowManager) + VideoActivity.startActivity(context, VideoActivity.VIDEOTYPE_CONSULT) + } } } val entertainmentSelect = object :ListAdapter.OnTabSelectListener{ - override fun onSelect() { - close(view, windowManager) - VideoActivity.startActivity(context,VideoActivity.VIDEOTYPE_MOIES) + override fun onSelect(isCurrentProcess:Boolean) { + if(isCurrentProcess) { + close(view, windowManager) + VideoActivity.startActivity(context, VideoActivity.VIDEOTYPE_MOIES) + } } } @@ -322,7 +342,7 @@ object OverlayLeftViewUtils { } // 管理的要关闭都得关闭 if(isMain) { - VideoActivity.startActivity(overlayView!!.context, VideoActivity.VIDEOTYPE_CLOSE) + LeftMenuOpen.invoKeyByEventType(VideoActivity.EVENT_FINISH) } subscribe = null LeftMenuOpen.clearValue() diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/VideoActivity.kt b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/VideoActivity.kt index 2f764925ca..c4dcabe510 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/VideoActivity.kt +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/VideoActivity.kt @@ -24,6 +24,7 @@ import com.mogo.och.taxi.passenger.bean.TaxiPassengerVideoPlay import com.mogo.och.taxi.passenger.mulprocess.ICallback import com.mogo.och.taxi.passenger.ui.leftmenu.LeftMenuOpen import com.mogo.och.taxi.passenger.ui.leftmenu.OverlayLeftViewUtils +import com.mogo.och.taxi.passenger.ui.video.event.FinishActivity import com.mogo.och.taxi.passenger.ui.video.layoutmanage.CarouselLayoutManager import com.mogo.och.taxi.passenger.ui.video.layoutmanage.CarouselZoomPostLayoutListener import com.mogo.och.taxi.passenger.ui.video.layoutmanage.CenterScrollListener @@ -35,6 +36,9 @@ import com.mogo.och.taxi.passenger.widget.indicator.enums.IndicatorOrientation import com.mogo.och.taxi.passenger.widget.indicator.enums.IndicatorSlideMode import com.mogo.och.taxi.passenger.widget.indicator.enums.IndicatorStyle import com.shuyu.gsyvideoplayer.video.base.GSYVideoView +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode import java.util.* import kotlin.math.floor @@ -57,6 +61,8 @@ class VideoActivity : AppCompatActivity() { const val VIDEOTYPE_MOIES = 1 const val VIDEOTYPE_CLOSE = 2 + const val EVENT_FINISH = 0 + fun startActivity(context:Context,videoType:Int){ val intent = Intent(context, VideoActivity::class.java) intent.putExtra(VIDEOTYPE, videoType) @@ -97,10 +103,20 @@ class VideoActivity : AppCompatActivity() { FloatingDistanceInfoUtils.setSpeed(speed) } } + + override fun postEvent(type: Int) { + when (type) { + EVENT_FINISH -> { + finish() + } + else -> {} + } + } } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + EventBus.getDefault().register(this) configPage() } @@ -128,10 +144,6 @@ class VideoActivity : AppCompatActivity() { tvTitle.text = "影视娱乐" initMoviesData() } - VIDEOTYPE_CLOSE ->{ - finish() - return - } } initListener() initData() @@ -294,6 +306,9 @@ class VideoActivity : AppCompatActivity() { vOpenLeft = findViewById(R.id.v_open_left) acivTitleIcon = findViewById(R.id.aciv_title_icon) tvTitle = findViewById(R.id.tv_mogo_consult) + acivTitleIcon.setOnClickListener { + finish() + } } @@ -372,11 +387,15 @@ class VideoActivity : AppCompatActivity() { } } + @Subscribe(threadMode = ThreadMode.MAIN) + fun finishActivity(event: FinishActivity){ + finish() + } + override fun onDestroy() { super.onDestroy() - if(videotype!=VIDEOTYPE_CLOSE){ - LeftMenuOpen.unregisterCallback(callBack) - } + EventBus.getDefault().unregister(this) + LeftMenuOpen.unregisterCallback(callBack) releaseOnNewInstance() OverlayLeftViewUtils.dismissOverlayView(false) FloatingDistanceInfoUtils.dismissOverlayView() diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/event/FinishActivity.java b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/event/FinishActivity.java new file mode 100644 index 0000000000..c82425bb67 --- /dev/null +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/video/event/FinishActivity.java @@ -0,0 +1,4 @@ +package com.mogo.och.taxi.passenger.ui.video.event; + +public class FinishActivity { +} diff --git a/OCH/mogo-och-taxi-passenger/src/main/res/values/styles.xml b/OCH/mogo-och-taxi-passenger/src/main/res/values/styles.xml index 7e394c29f3..e50749e0fd 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/res/values/styles.xml +++ b/OCH/mogo-och-taxi-passenger/src/main/res/values/styles.xml @@ -48,6 +48,7 @@ @android:color/transparent true + true @null @null @null diff --git a/app/productFlavors/fPadLenovoOchBus.gradle b/app/productFlavors/fPadLenovoOchBus.gradle index fee00431e4..4f251e6744 100644 --- a/app/productFlavors/fPadLenovoOchBus.gradle +++ b/app/productFlavors/fPadLenovoOchBus.gradle @@ -18,7 +18,7 @@ project.android.productFlavors { // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' //高德地图鉴权信息 - manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchBus"] + manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchBus",ACTIVITY_ROOT:true] // 是否基于地图 buildConfigField 'boolean', 'IS_MAP_BASED', 'true' diff --git a/app/productFlavors/fPadLenovoOchBusPassenger.gradle b/app/productFlavors/fPadLenovoOchBusPassenger.gradle index 241ba1770b..4d739711e0 100644 --- a/app/productFlavors/fPadLenovoOchBusPassenger.gradle +++ b/app/productFlavors/fPadLenovoOchBusPassenger.gradle @@ -16,7 +16,7 @@ project.android.productFlavors { // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' //高德地图鉴权信息 - manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchBusPassenger"] + manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchBusPassenger",ACTIVITY_ROOT:true] // 是否基于地图 buildConfigField 'boolean', 'IS_MAP_BASED', 'true' diff --git a/app/productFlavors/fPadLenovoOchTaxi.gradle b/app/productFlavors/fPadLenovoOchTaxi.gradle index 5111983e45..5bd034f8f5 100644 --- a/app/productFlavors/fPadLenovoOchTaxi.gradle +++ b/app/productFlavors/fPadLenovoOchTaxi.gradle @@ -19,7 +19,7 @@ project.android.productFlavors { // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' //高德地图鉴权信息 - manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchTaxi"] + manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchTaxi",ACTIVITY_ROOT:true] // 是否基于地图 buildConfigField 'boolean', 'IS_MAP_BASED', 'true' diff --git a/app/productFlavors/fPadLenovoOchTaxiPassenger.gradle b/app/productFlavors/fPadLenovoOchTaxiPassenger.gradle index 4a4e2ac167..3145ae7d5d 100644 --- a/app/productFlavors/fPadLenovoOchTaxiPassenger.gradle +++ b/app/productFlavors/fPadLenovoOchTaxiPassenger.gradle @@ -18,7 +18,7 @@ project.android.productFlavors { // 车机类型,主要用于区分自研车机还是别人家的车机,自研车机类型为0 buildConfigField 'int', 'CAR_MACHINE_TYPE', '2' //高德地图鉴权信息 - manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchTaxiPassenger"] + manifestPlaceholders = [AMAP_API_VALUE: rootProject.ext.android.fLauncherAmapApiValue, CHANNEL_VALUE: "fPadLenovoOchTaxiPassenger",ACTIVITY_ROOT:false] // 是否基于地图 buildConfigField 'boolean', 'IS_MAP_BASED', 'true' diff --git a/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml b/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml index 0bea840bea..d9654fcfe8 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml @@ -34,7 +34,7 @@ --> + +