[8.2.0]
[广告B2] [播放广告+司机位视频流适配]
This commit is contained in:
@@ -3,6 +3,7 @@ package com.mogo.och.biz.media
|
||||
import android.annotation.SuppressLint
|
||||
import com.alibaba.android.arouter.launcher.ARouter
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON
|
||||
import com.mogo.och.common.module.biz.media.IVideoListener
|
||||
import com.mogo.och.common.module.biz.media.data.MediaItem
|
||||
import com.mogo.och.common.module.constant.OchCommonConst
|
||||
|
||||
@@ -22,4 +23,12 @@ object MediaServiceManager {
|
||||
mediaService?.createCacheFileDir()
|
||||
}
|
||||
|
||||
fun addVideoListener(tag:String,listener: IVideoListener){
|
||||
mediaService?.addVideoListener(tag,listener)
|
||||
}
|
||||
|
||||
fun removeVideoListener(tag: String){
|
||||
mediaService?.removeVideoListener(tag)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -187,4 +187,12 @@ class AdMediaView : FrameLayout, AdMediaViewCallback {
|
||||
}
|
||||
}
|
||||
|
||||
override fun pauseVideo() {
|
||||
adVideoPlayer.onVideoPause()
|
||||
}
|
||||
|
||||
override fun resumeVideo() {
|
||||
adVideoPlayer.onVideoResume()
|
||||
}
|
||||
|
||||
}
|
||||
@@ -14,7 +14,6 @@ import com.mogo.och.biz.media.video.MediaDataSourceManager
|
||||
import com.mogo.och.biz.media.video.MediaFileCacheManager
|
||||
import com.mogo.och.biz.media.video.MediaPlayLogger
|
||||
import com.mogo.och.common.module.biz.media.IVideoListener
|
||||
import com.mogo.och.common.module.biz.media.MediaManager
|
||||
import com.mogo.och.common.module.biz.media.data.MediaItem
|
||||
import com.mogo.och.common.module.utils.RxUtils
|
||||
import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack
|
||||
@@ -79,16 +78,34 @@ class AdMediaViewModel : ViewModel(), IVideoListener {
|
||||
|
||||
override fun onCleared() {
|
||||
MediaDataSourceManager.unInit()
|
||||
MediaManager.removeListener(TAG)
|
||||
MediaServiceManager.removeVideoListener(TAG)
|
||||
}
|
||||
|
||||
fun setAdMediaCallback(viewCallback: AdMediaViewCallback) {
|
||||
this.viewCallback = viewCallback
|
||||
MediaServiceManager.invokeCreateCacheFileDir()
|
||||
MediaManager.addListener(TAG,this)
|
||||
MediaServiceManager.addVideoListener(TAG,this)
|
||||
MediaDataSourceManager.init()
|
||||
}
|
||||
|
||||
override fun setMediaPause() {
|
||||
super.setMediaPause()
|
||||
if (currentPlayingItem?.isImageType()==true) {
|
||||
RxUtils.disposeSubscribe(playImageDisposable)
|
||||
}else{
|
||||
this.viewCallback?.pauseVideo()
|
||||
}
|
||||
}
|
||||
|
||||
override fun setMediaResume() {
|
||||
super.setMediaResume()
|
||||
if (currentPlayingItem?.isImageType()==true) {
|
||||
startPlayerAds(currentPlayingIndex)
|
||||
}else{
|
||||
this.viewCallback?.resumeVideo()
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 分发广告数据
|
||||
*/
|
||||
@@ -295,6 +312,8 @@ class AdMediaViewModel : ViewModel(), IVideoListener {
|
||||
fun startPlayImage(it: MediaItem)
|
||||
fun startPlayVideo(it: MediaItem, playerCallback: GSYSampleCallBack)
|
||||
fun startPlayStationVideo(stationMediaItem: MediaItem,adMediaItem: MediaItem?, playerCallback: GSYSampleCallBack)
|
||||
fun pauseVideo()
|
||||
fun resumeVideo()
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -3,8 +3,10 @@ package com.mogo.och.common.module.debug
|
||||
import android.content.Intent
|
||||
import android.graphics.Bitmap
|
||||
import android.graphics.BitmapFactory
|
||||
import android.graphics.Color
|
||||
import android.os.Environment
|
||||
import android.os.SystemClock
|
||||
import android.widget.TextView
|
||||
import chassis.Chassis
|
||||
import chassis.Chassis.DoorNumber
|
||||
import chassis.VehicleStateOuterClass
|
||||
@@ -85,6 +87,7 @@ object DebugDataDispatch {
|
||||
const val collisionRisk = "CollisionRisk"
|
||||
const val mediaStationMedia = "stationMedia"
|
||||
|
||||
// adb shell am broadcast -a com.mogo.launcher.debug -f 0x011000000 --es type "video" --ei add 2
|
||||
// adb shell am broadcast -a com.mogo.launcher.debug -f 0x011000000 --es type "location" --es path "1111/11111"
|
||||
// adb shell am broadcast -a com.mogo.launcher.debug -f 0x011000000 --es type "pncAction"
|
||||
// adb shell am broadcast -a com.mogo.launcher.debug -f 0x011000000 --es type "CollisionRisk"
|
||||
@@ -157,17 +160,20 @@ object DebugDataDispatch {
|
||||
bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream)
|
||||
val byteArray = stream.toByteArray()
|
||||
CallerVlmManager.invokeVllmImage(time.toDouble(),byteArray)
|
||||
}
|
||||
}
|
||||
video -> {
|
||||
val ota = intent.getIntExtra("video",0)
|
||||
}
|
||||
}
|
||||
video -> {
|
||||
val ota = intent.getIntExtra("add",0)
|
||||
// rtmp://video.zhidaozhixing.com/live/861130041693196C_2
|
||||
val url = intent.getStringExtra("url")?:""
|
||||
BizLoopManager.runInMainThread(){
|
||||
if(ota>0&&url.startsWith("rtmp://")){
|
||||
if(ota>0){
|
||||
val driveVideoView = CallerDevaToolsManager.driveSeatVideoProvider()
|
||||
?.getDriveVideoView(url)
|
||||
CallerOchBizFunctionCall4EagleManager.setVideoView(driveVideoView)
|
||||
val test = TextView(ActivityUtils.getTopActivity())
|
||||
test.text = "测试view"
|
||||
test.setTextColor(Color.parseColor("#66FFFFFF"))
|
||||
CallerOchBizFunctionCall4EagleManager.setVideoView(test)
|
||||
}else{
|
||||
CallerOchBizFunctionCall4EagleManager.setVideoView(null)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user