diff --git a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt index 0dfdf815ed..a25fb17864 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt +++ b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/model/PM2DrivingModel.kt @@ -14,6 +14,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d +import com.mogo.eagle.core.utilcode.mogo.logger.Logger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr import com.mogo.eagle.core.utilcode.util.GsonUtils @@ -101,6 +102,8 @@ class PM2DrivingModel private constructor() { // 定位监听 CallerChassisLocationGCJ02ListenerManager.removeListener(TAG) + + CallerTelematicListenerManager.removeListener(TAG) } fun setDrivingInfoCallback(drivingInfoCallback : DrivingInfoCallback?){ @@ -115,7 +118,8 @@ class PM2DrivingModel private constructor() { object : IReceivedMsgListener{ override fun onReceivedMsg(type: Int, byteArray: ByteArray) {//接收司机端发来的信息 if (TelematicConstant.BUSINESS_STRING == type){ - val msg = GsonUtils.fromJson(byteArray.toString(),AppConnectMsg::class.java) as AppConnectMsg + val msg = GsonUtils.fromJson(String(byteArray),AppConnectMsg::class.java) as AppConnectMsg + Logger.d(TAG,"onReceivedMsg = "+GsonUtils.toJson(msg)) if (msg.isPlay){ //播报 showNotice(msg.msg) } diff --git a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/network/PM2ServiceApi.java b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/network/PM2ServiceApi.java index 70866f3d48..9a0f63e23e 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/network/PM2ServiceApi.java +++ b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/network/PM2ServiceApi.java @@ -23,7 +23,7 @@ public interface PM2ServiceApi { * @return 接口返回数据 */ @Headers( {"Content-Type:application/json;charset=UTF-8"} ) - @POST( "/autopilot-car-hailing/line/v2/driver/bus/passenger/lineDataWithDriver/query" ) + @POST( "/och-shuttle-cabin/api/business/v1/passenger/lineDataWithDriver/query" ) Observable queryDriverSiteByCoordinate(@Header("appId") String appId, @Header("ticket") String ticket, @Body PM2QueryLineRequest request); /** @@ -33,7 +33,7 @@ public interface PM2ServiceApi { */ @Headers({"Content-type:application/json;charset=UTF-8"}) // @GET("/autopilot-car-hailing/car/v2/driver/bus/passenger/takeOrderStatus/query") - @GET("/autopilot-car-hailing/operation/v1/driver/bus/passenger/loginStatus") + @GET("/och-shuttle-cabin/api/business/v1/passenger/loginStatus") Observable queryDriverOperationStatus(@Header ("appId") String appId, @Header("ticket") String ticket, @Query("sn") String sn); diff --git a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt index 1249e4ae60..71e3fbb026 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt +++ b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/PM2DrivingInfoFragment.kt @@ -6,6 +6,8 @@ import android.view.View import androidx.core.content.ContextCompat import com.amap.api.maps.model.LatLng import com.mogo.commons.mvp.MvpFragment +import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView +import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.util.DateTimeUtils import com.mogo.och.bus.passenger.R import com.mogo.och.bus.passenger.bean.PM2Station @@ -33,6 +35,9 @@ class PM2DrivingInfoFragment : } override fun initViews() { + speed_tv.onClick { + context?.let { it -> ToggleDebugView.toggleDebugView.toggle(it) } + } updateCurrentTime() } diff --git a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/video/AdvancePagerAdapter.kt b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/video/AdvancePagerAdapter.kt index 7c1b08ee27..8ad1126539 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/video/AdvancePagerAdapter.kt +++ b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/video/AdvancePagerAdapter.kt @@ -6,6 +6,7 @@ import android.view.ViewGroup import androidx.viewpager.widget.PagerAdapter import androidx.viewpager.widget.ViewPager import com.mogo.eagle.core.utilcode.mogo.logger.Logger +import com.mogo.eagle.core.utilcode.util.UiThreadHandler import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack /** @@ -48,27 +49,7 @@ class AdvancePagerAdapter(context: Context, viewPager: ViewPager) : PagerAdapter if (viewList[mViewPager.currentItem] is AdvanceVideoView) {//有人反应第一个是视频不播放这边优化了一下 Logger.d("onPageScrollStateChanged", "第一个是视频") val video = viewList[mViewPager.currentItem] as AdvanceVideoView - video.setCacheImageView(dataList[mViewPager.currentItem].cacheImgPath) - video.setVideo( object : GSYSampleCallBack() { - - override fun onPrepared(url: String?, vararg objects: Any?) { - super.onPrepared(url, *objects) - Logger.d("onPageScrollStateChanged", "onPrepared") - video.setCacheImageViewGone() - } - - override fun onAutoComplete(url: String?, vararg objects: Any?) { - Logger.d("onPageScrollStateChanged", "onAutoComplete()") - video.setCacheImageView(dataList[mViewPager.currentItem].cacheImgPath) - mViewPager.setCurrentItem(mViewPager.currentItem + 1, true) - } - - override fun onPlayError(url: String?, vararg objects: Any?) { - Logger.d("onPageScrollStateChanged", "onPlayError()") - video.setCacheImageView(dataList[mViewPager.currentItem].cacheImgPath) - mViewPager.setCurrentItem(mViewPager.currentItem + 1, true) - } - }) + video.setVideo(gsySampleCallBack) } else if (viewList[mViewPager.currentItem] is AdvanceImageView) { Logger.d("onPageScrollStateChanged", "startTimer()_1") @@ -140,42 +121,20 @@ class AdvancePagerAdapter(context: Context, viewPager: ViewPager) : PagerAdapter // 由于viewpager的预加载机制onPageSelected这里面加载videoview 放的跟玩一样 等操作完成后再播放videoview就香了 很丝滑 if (state == 0) { //静止,什么都没做 val currentItem = mViewPager.currentItem - Logger.d( - "onPageScrollStateChanged", - "state = $state currentItem = $currentItem lastPosition = $lastPosition" - ) + Logger.d("onPageScrollStateChanged", + "state = $state currentItem = $currentItem lastPosition = $lastPosition") if (viewList.size > 1) { //多于1,才会循环跳转 - if (lastPosition != -1 && lastPosition != mViewPager.currentItem - && viewList[lastPosition] is AdvanceVideoView - ) { - val videoView: AdvanceVideoView = viewList[lastPosition] as AdvanceVideoView - videoView.setPause() - } +// if (lastPosition != -1 && lastPosition != mViewPager.currentItem +// && viewList[lastPosition] is AdvanceVideoView +// ) { +// val videoView: AdvanceVideoView = viewList[lastPosition] as AdvanceVideoView +// videoView.setPause() +// } if (viewList[mViewPager.currentItem] is AdvanceVideoView) { val videoView = (viewList[mViewPager.currentItem] as AdvanceVideoView) - videoView.setVideo(object : GSYSampleCallBack() { - override fun onPrepared(url: String?, vararg objects: Any?) { - super.onPrepared(url, *objects) - Logger.d("onPageScrollStateChanged", "onPrepared") - videoView.setCacheImageViewGone() - } - - override fun onAutoComplete(url: String?, vararg objects: Any?) { - super.onAutoComplete(url, *objects) - Logger.d("onPageScrollStateChanged", "onAutoComplete()") - videoView.setCacheImageView(dataList[mViewPager.currentItem].cacheImgPath) - mViewPager.setCurrentItem(mViewPager.currentItem + 1, true) - } - - override fun onPlayError(url: String?, vararg objects: Any?) { - super.onPlayError(url, *objects) - Logger.d("onPageScrollStateChanged", "onPlayError()") - videoView.setCacheImageView(dataList[mViewPager.currentItem].cacheImgPath) - mViewPager.setCurrentItem(mViewPager.currentItem + 1, true) - } - }) + videoView.setVideo(gsySampleCallBack) } else if (viewList[mViewPager.currentItem] is AdvanceImageView) { Logger.d("onPageScrollStateChanged", "startTimer()") @@ -187,6 +146,34 @@ class AdvancePagerAdapter(context: Context, viewPager: ViewPager) : PagerAdapter } } + private var gsySampleCallBack = object : GSYSampleCallBack() { + + override fun onPrepared(url: String?, vararg objects: Any?) { + super.onPrepared(url, *objects) + val videoView = (viewList[mViewPager.currentItem] as AdvanceVideoView) + Logger.d("onPageScrollStateChanged", "onPrepared") + UiThreadHandler.postDelayed({ + videoView.setCacheImageViewGone() + },400) + } + + override fun onAutoComplete(url: String?, vararg objects: Any?) { + super.onAutoComplete(url, *objects) + Logger.d("onPageScrollStateChanged", "onAutoComplete()") + val videoView = (viewList[mViewPager.currentItem] as AdvanceVideoView) + videoView.setCacheImageView(dataList[mViewPager.currentItem].cacheImgPath) + goNextItemView() + } + + override fun onPlayError(url: String?, vararg objects: Any?) { + super.onPlayError(url, *objects) + Logger.d("onPageScrollStateChanged", "onPlayError()") + val videoView = (viewList[mViewPager.currentItem] as AdvanceVideoView) + videoView.setCacheImageView(dataList[mViewPager.currentItem].cacheImgPath) + goNextItemView() + } + } + private fun startTimer() { if (null != thread && !thread?.isInterrupted!!) { Logger.d("onPageScrollStateChanged", "thread.interrupt()") diff --git a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/video/AdvanceVideoView.kt b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/video/AdvanceVideoView.kt index 1d29a2a3a2..e45279eb78 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/video/AdvanceVideoView.kt +++ b/OCH/mogo-och-bus-passenger/src/m2/java/com/mogo/och/bus/passenger/ui/widget/video/AdvanceVideoView.kt @@ -8,6 +8,7 @@ import android.widget.ImageView import android.widget.RelativeLayout import com.bumptech.glide.Glide import com.bumptech.glide.request.RequestOptions +import com.mogo.eagle.core.utilcode.util.BitmapHelper import com.mogo.och.bus.passenger.R import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack @@ -68,27 +69,40 @@ class AdvanceVideoView @JvmOverloads constructor( fun setVideoPath(path: String) { this.path = path +// BitmapHelper.getVideoThumbnail(path) /*获取第一帧图*/ +// cacheImage?.let { +// it.setImageBitmap(BitmapHelper.getVideoThumbnail(path)) +// } } @SuppressLint("CheckResult") fun setCacheImageView(imgPath: String) { - cacheImage?.visibility = VISIBLE cacheImage?.let { Glide.with(context) .apply { RequestOptions().placeholder(R.drawable.m2_p_video_holder).centerCrop() } .load(imgPath).into(it) } + cacheImage?.visibility = VISIBLE } fun setVideo(onCompletionListener: GSYSampleCallBack) { - gsyVideoOptionBuilder?.setUrl(path) - ?.setBottomProgressBarDrawable(null) + ?.setCacheWithPlay(false) +// ?.setAutoFullWithSize(true) +// ?.setShowPauseCover(false) +// ?.setFullHideActionBar(true) +// ?.setFullHideStatusBar(true) +// ?.setIsTouchWiget(false) +// ?.setIsTouchWigetFull(false) +// ?.setNeedLockFull(true) +// ?.setLockLand(true) +// ?.setAutoFullWithSize(true) +// ?.setNeedShowWifiTip(false) ?.build(videoViewPlayer) videoViewPlayer?.setVideoAllCallBack(onCompletionListener) - videoViewPlayer?.startPlayLogic() + videoViewPlayer?.startButton?.performClick() } fun setCacheImageViewGone() { diff --git a/OCH/mogo-och-bus-passenger/src/m2/res/drawable-nodpi/m2_map_start_icon.png b/OCH/mogo-och-bus-passenger/src/m2/res/drawable-nodpi/m2_map_start_icon.png new file mode 100644 index 0000000000..d7ab9231d9 Binary files /dev/null and b/OCH/mogo-och-bus-passenger/src/m2/res/drawable-nodpi/m2_map_start_icon.png differ diff --git a/OCH/mogo-och-bus-passenger/src/m2/res/drawable/bg_p_m2_auto.xml b/OCH/mogo-och-bus-passenger/src/m2/res/drawable/bg_p_m2_auto.xml index 321b67dfc3..0497ff212e 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/res/drawable/bg_p_m2_auto.xml +++ b/OCH/mogo-och-bus-passenger/src/m2/res/drawable/bg_p_m2_auto.xml @@ -1,7 +1,7 @@ - + \ No newline at end of file diff --git a/OCH/mogo-och-bus-passenger/src/m2/res/layout/m2_p_traffic_light_view.xml b/OCH/mogo-och-bus-passenger/src/m2/res/layout/m2_p_traffic_light_view.xml index b9dcb334f0..360a67883b 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/res/layout/m2_p_traffic_light_view.xml +++ b/OCH/mogo-och-bus-passenger/src/m2/res/layout/m2_p_traffic_light_view.xml @@ -18,7 +18,6 @@ android:id="@+id/m2_p_traffic_light_iv" android:layout_width="@dimen/dp_40" android:layout_height="@dimen/dp_40" - android:layout_marginTop="@dimen/dp_8" android:scaleType="fitXY" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"/> diff --git a/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml b/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml index 450846493d..bdf419cb37 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml +++ b/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_driving_info_fragment.xml @@ -3,7 +3,7 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" - android:layout_height="@dimen/dp_556"> + android:layout_height="match_parent"> + app:layout_constraintLeft_toLeftOf="parent" + app:layout_constraintHeight_percent="0.290"/> + app:layout_constraintLeft_toLeftOf="parent" + app:layout_constraintHeight_percent="0.418"/> @@ -26,8 +28,9 @@ + app:layout_constraintLeft_toLeftOf="parent" + app:layout_constraintHeight_percent="0.294"/> \ No newline at end of file diff --git a/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_hpmap_fragment.xml b/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_hpmap_fragment.xml index 7639206abb..4848e7f199 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_hpmap_fragment.xml +++ b/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_hpmap_fragment.xml @@ -2,7 +2,7 @@ + android:layout_height="match_parent"> diff --git a/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_video_fragment.xml b/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_video_fragment.xml index 000b849619..6c82b8c9dc 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_video_fragment.xml +++ b/OCH/mogo-och-bus-passenger/src/m2/res/layout/p_m2_video_fragment.xml @@ -1,7 +1,7 @@ + android:layout_height="match_parent"> diff --git a/OCH/mogo-och-bus-passenger/src/m2/res/layout/view_turn_light_status_daytime.xml b/OCH/mogo-och-bus-passenger/src/m2/res/layout/view_turn_light_status_daytime.xml index 6717350f74..2eea682947 100644 --- a/OCH/mogo-och-bus-passenger/src/m2/res/layout/view_turn_light_status_daytime.xml +++ b/OCH/mogo-och-bus-passenger/src/m2/res/layout/view_turn_light_status_daytime.xml @@ -18,23 +18,23 @@