From 0ba40ce5193945de6597e4b4401bacbd231c4bc4 Mon Sep 17 00:00:00 2001 From: Mario Danic Date: Thu, 7 Dec 2017 11:11:32 +0100 Subject: [PATCH] Fix peer connection Signed-off-by: Mario Danic --- .../java/com/nextcloud/talk/activities/CallActivity.java | 6 +++++- .../nextcloud/talk/webrtc/MagicPeerConnectionWrapper.java | 7 +------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/activities/CallActivity.java b/app/src/main/java/com/nextcloud/talk/activities/CallActivity.java index 25cff25b7..76e4f4045 100644 --- a/app/src/main/java/com/nextcloud/talk/activities/CallActivity.java +++ b/app/src/main/java/com/nextcloud/talk/activities/CallActivity.java @@ -171,7 +171,7 @@ public class CallActivity extends AppCompatActivity { initViews(); PermissionHelper permissionHelper = new PermissionHelper(this); - permissionHelper.check(android.Manifest.permission.CAMERA, Manifest.permission.RECORD_AUDIO, + permissionHelper.check(Manifest.permission.CAMERA, Manifest.permission.RECORD_AUDIO, Manifest.permission.MODIFY_AUDIO_SETTINGS, Manifest.permission.ACCESS_NETWORK_STATE, Manifest.permission.ACCESS_WIFI_STATE, Manifest.permission.INTERNET) .onSuccess(() -> { @@ -555,6 +555,7 @@ public class CallActivity extends AppCompatActivity { endPeerConnection(magicPeerConnectionWrapperList.get(i).getSessionId()); } + for (MagicPeerConnectionWrapper magicPeerConnectionWrapper : magicPeerConnectionWrapperList) { endPeerConnection(magicPeerConnectionWrapper.getSessionId()); } @@ -716,6 +717,9 @@ public class CallActivity extends AppCompatActivity { if (remoteRenderersLayout.getChildCount() > 0) { for (int i = 0; i < remoteRenderersLayout.getChildCount(); i++) { if (remoteRenderersLayout.getChildAt(i).getTag().equals(sessionId)) { + SurfaceViewRenderer surfaceViewRenderer = remoteRenderersLayout.getChildAt(i).findViewById(R.id + .surface_view); + surfaceViewRenderer.release(); remoteRenderersLayout.removeViewAt(i); remoteRenderersLayout.invalidate(); break; diff --git a/app/src/main/java/com/nextcloud/talk/webrtc/MagicPeerConnectionWrapper.java b/app/src/main/java/com/nextcloud/talk/webrtc/MagicPeerConnectionWrapper.java index 5fb48e4aa..9a75898f3 100644 --- a/app/src/main/java/com/nextcloud/talk/webrtc/MagicPeerConnectionWrapper.java +++ b/app/src/main/java/com/nextcloud/talk/webrtc/MagicPeerConnectionWrapper.java @@ -47,7 +47,7 @@ import java.util.List; public class MagicPeerConnectionWrapper { private static String TAG = "MagicPeerConnectionWrapper"; - private static PeerConnection peerConnection; + private PeerConnection peerConnection; List iceCandidates = new ArrayList<>(); private List iceServers; private String sessionId; @@ -120,15 +120,10 @@ public class MagicPeerConnectionWrapper { } } - public PeerConnection getPeerConnection() { return peerConnection; } - public static void setPeerConnection(PeerConnection peerConnection) { - MagicPeerConnectionWrapper.peerConnection = peerConnection; - } - public String getSessionId() { return sessionId; }