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 @@ --> + +