liuzhenxing1118 8 месяцев назад
Родитель
Сommit
cf6b193195

+ 9 - 2
app/src/main/java/com/xplora/xpvideo/activity/MainActivity.java

@@ -169,8 +169,8 @@ public class MainActivity extends Activity implements Listener.VideoListener {
                 stopTimeOverTimer();
                 mVideoManager.mMediaDevice.enableSpeaker(true);
                 mRemoteCanvas = mVideoManager.mMediaDevice.startVideo(item.getRenderId(), JCMediaDevice.RENDER_FULL_CONTENT);
-                //mRemoteCanvas.  videoView.id = View.generateViewId()
                 if (mRemoteCanvas != null) {
+                    mRemoteCanvas.getVideoView().setId(View.generateViewId());
                     mContentView.addView(mRemoteCanvas.getVideoView(), 0);
                 }
                 change = true;
@@ -188,7 +188,8 @@ public class MainActivity extends Activity implements Listener.VideoListener {
                 mContentView.removeView(mLocalCanvas.getVideoView());
                 mContentView.removeView(mRemoteCanvas.getVideoView());
                 mContentView.addView(mRemoteCanvas.getVideoView(), 0);
-                mContentView.addView(mLocalCanvas.getVideoView(), 1);
+                //mContentView.addView(mLocalCanvas.getVideoView(), 1);
+
             } else if (mLocalCanvas != null) {
                 mContentView.removeView(mLocalCanvas.getVideoView());
                 mContentView.addView(
@@ -279,4 +280,10 @@ public class MainActivity extends Activity implements Listener.VideoListener {
             mTimerTask = null;
         }
     }
+
+    @Override
+    protected void onDestroy() {
+        super.onDestroy();
+
+    }
 }

+ 4 - 0
app/src/main/java/com/xplora/xpvideo/manager/VideoManager.java

@@ -134,6 +134,10 @@ public class VideoManager implements JCClientCallback, JCCallCallback, JCMediaDe
     @Override
     public void onCallItemRemove(JCCallItem item, int reason, String description) {
         Log.d(TAG, "onCallItemRemove");
+        // 销毁本地视频画面
+        item.stopSelfVideo();
+        // 销毁远端视频画面
+        item.stopOtherVideo();
         if (mVideoListener != null) {
             mVideoListener.onCallItemRemove();
         }