| 
					
				 | 
			
			
				@@ -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 = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |