|
|
@@ -21,6 +21,7 @@ import com.yingyangfly.baselib.ext.toast
|
|
|
import com.yingyangfly.baselib.mvvm.BaseMVVMActivity
|
|
|
import com.yingyangfly.baselib.router.RouterUrlCommon
|
|
|
import com.yingyangfly.baselib.utils.User
|
|
|
+import java.util.*
|
|
|
|
|
|
/**
|
|
|
* 直播页面
|
|
|
@@ -30,18 +31,23 @@ class LiveBroadcastActivity :
|
|
|
BaseMVVMActivity<ActivityLiveBroadcastBinding, LiveBroadcastDetailViewModel>(),
|
|
|
View.OnTouchListener {
|
|
|
|
|
|
+ private var liveId: String = ""
|
|
|
private var url: String = ""
|
|
|
private var mLivePlayer: V2TXLivePlayer? = null
|
|
|
private var mPlayFlag = false
|
|
|
+ private val timer = Timer()
|
|
|
|
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
|
url = intent.getStringExtra("url") ?: ""
|
|
|
+ liveId = intent.getStringExtra("liveId") ?: ""
|
|
|
super.onCreate(savedInstanceState)
|
|
|
}
|
|
|
|
|
|
override fun initViews() {
|
|
|
//初始化直播
|
|
|
initPlayer()
|
|
|
+ //上报直播间心跳
|
|
|
+ initTask()
|
|
|
//初始化IM
|
|
|
getUserSign()
|
|
|
}
|
|
|
@@ -120,6 +126,7 @@ class LiveBroadcastActivity :
|
|
|
}
|
|
|
|
|
|
private fun loginIm(sign: String) {
|
|
|
+ Log.e("wpp", "登录IM")
|
|
|
V2TIMManager.getInstance().login(User.getUserId(), sign, object : V2TIMCallback {
|
|
|
override fun onError(p0: Int, p1: String?) {
|
|
|
//用户登录IM失败
|
|
|
@@ -150,6 +157,7 @@ class LiveBroadcastActivity :
|
|
|
}
|
|
|
mLivePlayer = null
|
|
|
}
|
|
|
+ timer.cancel()
|
|
|
}
|
|
|
super.onDestroy()
|
|
|
}
|
|
|
@@ -176,4 +184,28 @@ class LiveBroadcastActivity :
|
|
|
}
|
|
|
return true
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 上报直播间心跳
|
|
|
+ */
|
|
|
+ private fun initTask() {
|
|
|
+ val timerTask: TimerTask = object : TimerTask() {
|
|
|
+ override fun run() {
|
|
|
+ liveIncr()
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ timer.schedule(timerTask, 0, 3000)
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 直播统计心跳上报
|
|
|
+ */
|
|
|
+ private fun liveIncr() {
|
|
|
+ viewModel.liveIncr("", fail = {
|
|
|
+ it.toast()
|
|
|
+ }, success = {
|
|
|
+
|
|
|
+ })
|
|
|
+ }
|
|
|
}
|