|
@@ -16,6 +16,8 @@ import com.dlc.exam.common.CommonUtils
|
|
import com.dlc.exam.databinding.ActivityLearnDetailBinding
|
|
import com.dlc.exam.databinding.ActivityLearnDetailBinding
|
|
import com.dlc.exam.ui.common.BaseCountDownActivity
|
|
import com.dlc.exam.ui.common.BaseCountDownActivity
|
|
import com.dlc.exam.ui.learn.test.ClassTestActivity
|
|
import com.dlc.exam.ui.learn.test.ClassTestActivity
|
|
|
|
+import com.google.android.exoplayer2.ExoPlayer
|
|
|
|
+import com.google.android.exoplayer2.MediaItem
|
|
import com.rc.core.log.RcLog
|
|
import com.rc.core.log.RcLog
|
|
import com.rc.core.util.EscapeUnescape
|
|
import com.rc.core.util.EscapeUnescape
|
|
import com.rc.core.util.VideoFullScreenWebChromeClient
|
|
import com.rc.core.util.VideoFullScreenWebChromeClient
|
|
@@ -44,6 +46,7 @@ class LearnDetailActivity : BaseCountDownActivity<ActivityLearnDetailBinding>()
|
|
private var mRelearn = false
|
|
private var mRelearn = false
|
|
private var mVideoDraggable = false // 视频是否可以拖拽
|
|
private var mVideoDraggable = false // 视频是否可以拖拽
|
|
private var mAssessStatus = false // 是否需要课后考核
|
|
private var mAssessStatus = false // 是否需要课后考核
|
|
|
|
+ private var exoPlayer: ExoPlayer? = null
|
|
|
|
|
|
companion object {
|
|
companion object {
|
|
const val WHAT_LEARN_COUNT_DOWN = 1
|
|
const val WHAT_LEARN_COUNT_DOWN = 1
|
|
@@ -51,6 +54,7 @@ class LearnDetailActivity : BaseCountDownActivity<ActivityLearnDetailBinding>()
|
|
|
|
|
|
override fun onResume() {
|
|
override fun onResume() {
|
|
super.onResume()
|
|
super.onResume()
|
|
|
|
+ exoPlayer?.play()
|
|
}
|
|
}
|
|
|
|
|
|
override fun initViews(savedInstanceState: Bundle?) {
|
|
override fun initViews(savedInstanceState: Bundle?) {
|
|
@@ -64,6 +68,10 @@ class LearnDetailActivity : BaseCountDownActivity<ActivityLearnDetailBinding>()
|
|
mVideoDraggable = intent.getBooleanExtra("videoDraggable", false)
|
|
mVideoDraggable = intent.getBooleanExtra("videoDraggable", false)
|
|
mAssessStatus = intent.getBooleanExtra("assessStatus", false)
|
|
mAssessStatus = intent.getBooleanExtra("assessStatus", false)
|
|
|
|
|
|
|
|
+ exoPlayer = ExoPlayer.Builder(this).build()
|
|
|
|
+ viewBinding.styledPlayerView.player = exoPlayer
|
|
|
|
+ viewBinding.styledPlayerView.useController = false
|
|
|
|
+
|
|
Jzvd.FULLSCREEN_ORIENTATION = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
|
|
Jzvd.FULLSCREEN_ORIENTATION = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
|
|
Jzvd.NORMAL_ORIENTATION = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
|
|
Jzvd.NORMAL_ORIENTATION = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE
|
|
|
|
|
|
@@ -150,7 +158,7 @@ class LearnDetailActivity : BaseCountDownActivity<ActivityLearnDetailBinding>()
|
|
viewBinding.progressbar.visibility = View.VISIBLE
|
|
viewBinding.progressbar.visibility = View.VISIBLE
|
|
viewBinding.unknownFile.visibility = View.INVISIBLE
|
|
viewBinding.unknownFile.visibility = View.INVISIBLE
|
|
viewBinding.imageContent.visibility = View.INVISIBLE
|
|
viewBinding.imageContent.visibility = View.INVISIBLE
|
|
- viewBinding.jzVideo.visibility = View.INVISIBLE
|
|
|
|
|
|
+ viewBinding.styledPlayerView.visibility = View.INVISIBLE
|
|
var s = if (mCurrentChapter.chapterData.startsWith("http")) {
|
|
var s = if (mCurrentChapter.chapterData.startsWith("http")) {
|
|
mCurrentChapter.chapterData
|
|
mCurrentChapter.chapterData
|
|
} else {
|
|
} else {
|
|
@@ -172,7 +180,7 @@ class LearnDetailActivity : BaseCountDownActivity<ActivityLearnDetailBinding>()
|
|
viewBinding.progressbar.visibility = View.GONE
|
|
viewBinding.progressbar.visibility = View.GONE
|
|
viewBinding.unknownFile.visibility = View.GONE
|
|
viewBinding.unknownFile.visibility = View.GONE
|
|
viewBinding.imageContent.visibility = View.GONE
|
|
viewBinding.imageContent.visibility = View.GONE
|
|
- viewBinding.jzVideo.visibility = View.VISIBLE
|
|
|
|
|
|
+ viewBinding.styledPlayerView.visibility = View.VISIBLE
|
|
|
|
|
|
var url = if (mCurrentChapter.chapterData.startsWith("http")) {
|
|
var url = if (mCurrentChapter.chapterData.startsWith("http")) {
|
|
mCurrentChapter.chapterData
|
|
mCurrentChapter.chapterData
|
|
@@ -183,9 +191,12 @@ class LearnDetailActivity : BaseCountDownActivity<ActivityLearnDetailBinding>()
|
|
// mCurrentChapter.title)
|
|
// mCurrentChapter.title)
|
|
}
|
|
}
|
|
// showToast("视频地址:" + HttpConfig.API_BASE_URL + mCurrentChapter.chapterData)
|
|
// showToast("视频地址:" + HttpConfig.API_BASE_URL + mCurrentChapter.chapterData)
|
|
- viewBinding.jzVideo.setUp(url, mCurrentChapter.title)
|
|
|
|
- viewBinding.jzVideo.setDraggable(mVideoDraggable)
|
|
|
|
- viewBinding.jzVideo.startVideoAfterPreloading()
|
|
|
|
|
|
+ val mediaItem = MediaItem.fromUri(url)
|
|
|
|
+ exoPlayer?.let {
|
|
|
|
+ it.setMediaItem(mediaItem)
|
|
|
|
+ it.prepare()
|
|
|
|
+ it.play()
|
|
|
|
+ }
|
|
|
|
|
|
// viewBinding.webView.loadUrl(str)
|
|
// viewBinding.webView.loadUrl(str)
|
|
// viewBinding.webView.loadUrl(mCurrentChapter.chapterData)
|
|
// viewBinding.webView.loadUrl(mCurrentChapter.chapterData)
|
|
@@ -209,7 +220,7 @@ class LearnDetailActivity : BaseCountDownActivity<ActivityLearnDetailBinding>()
|
|
viewBinding.progressbar.visibility = View.INVISIBLE
|
|
viewBinding.progressbar.visibility = View.INVISIBLE
|
|
viewBinding.unknownFile.visibility = View.INVISIBLE
|
|
viewBinding.unknownFile.visibility = View.INVISIBLE
|
|
viewBinding.imageContent.visibility = View.VISIBLE
|
|
viewBinding.imageContent.visibility = View.VISIBLE
|
|
- viewBinding.jzVideo.visibility = View.INVISIBLE
|
|
|
|
|
|
+ viewBinding.styledPlayerView.visibility = View.INVISIBLE
|
|
// var s = if (mCurrentChapter.chapterData.startsWith("http")) {
|
|
// var s = if (mCurrentChapter.chapterData.startsWith("http")) {
|
|
// mCurrentChapter.chapterData
|
|
// mCurrentChapter.chapterData
|
|
// } else {
|
|
// } else {
|
|
@@ -228,7 +239,7 @@ class LearnDetailActivity : BaseCountDownActivity<ActivityLearnDetailBinding>()
|
|
viewBinding.progressbar.visibility = View.VISIBLE
|
|
viewBinding.progressbar.visibility = View.VISIBLE
|
|
viewBinding.unknownFile.visibility = View.INVISIBLE
|
|
viewBinding.unknownFile.visibility = View.INVISIBLE
|
|
viewBinding.imageContent.visibility = View.INVISIBLE
|
|
viewBinding.imageContent.visibility = View.INVISIBLE
|
|
- viewBinding.jzVideo.visibility = View.INVISIBLE
|
|
|
|
|
|
+ viewBinding.styledPlayerView.visibility = View.INVISIBLE
|
|
viewBinding.webView.loadDataWithBaseURL(
|
|
viewBinding.webView.loadDataWithBaseURL(
|
|
null,
|
|
null,
|
|
EscapeUnescape.unescape(mCurrentChapter.chapterData),
|
|
EscapeUnescape.unescape(mCurrentChapter.chapterData),
|
|
@@ -243,7 +254,7 @@ class LearnDetailActivity : BaseCountDownActivity<ActivityLearnDetailBinding>()
|
|
viewBinding.progressbar.visibility = View.INVISIBLE
|
|
viewBinding.progressbar.visibility = View.INVISIBLE
|
|
viewBinding.unknownFile.visibility = View.VISIBLE
|
|
viewBinding.unknownFile.visibility = View.VISIBLE
|
|
viewBinding.imageContent.visibility = View.INVISIBLE
|
|
viewBinding.imageContent.visibility = View.INVISIBLE
|
|
- viewBinding.jzVideo.visibility = View.INVISIBLE
|
|
|
|
|
|
+ viewBinding.styledPlayerView.visibility = View.INVISIBLE
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -299,13 +310,14 @@ class LearnDetailActivity : BaseCountDownActivity<ActivityLearnDetailBinding>()
|
|
override fun onPause() {
|
|
override fun onPause() {
|
|
RcLog.info("onPause=======================================")
|
|
RcLog.info("onPause=======================================")
|
|
super.onPause()
|
|
super.onPause()
|
|
- Jzvd.releaseAllVideos()
|
|
|
|
|
|
+ exoPlayer?.pause()
|
|
}
|
|
}
|
|
|
|
|
|
override fun onDestroy() {
|
|
override fun onDestroy() {
|
|
mLearnCountDownHandler.removeMessages(WHAT_LEARN_COUNT_DOWN)
|
|
mLearnCountDownHandler.removeMessages(WHAT_LEARN_COUNT_DOWN)
|
|
mLearnCountDownHandler.removeCallbacksAndMessages(null)
|
|
mLearnCountDownHandler.removeCallbacksAndMessages(null)
|
|
super.onDestroy()
|
|
super.onDestroy()
|
|
|
|
+ exoPlayer?.release()
|
|
}
|
|
}
|
|
|
|
|
|
override fun onBackPressed() {
|
|
override fun onBackPressed() {
|