Expose restartIce in SDK for Android.
PC.restartIce() is part of perfect negotiation algorithm.
Bug: webrtc:12609
Change-Id: I21a0f8637e92e13ee2653ef477d0cd22a32bf9c6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/212645
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33589}
diff --git a/sdk/android/api/org/webrtc/PeerConnection.java b/sdk/android/api/org/webrtc/PeerConnection.java
index 920e2f1..030b3a7 100644
--- a/sdk/android/api/org/webrtc/PeerConnection.java
+++ b/sdk/android/api/org/webrtc/PeerConnection.java
@@ -867,6 +867,13 @@
}
/**
+ * Tells the PeerConnection that ICE should be restarted.
+ */
+ public void restartIce() {
+ nativeRestartIce();
+ }
+
+ /**
* Enables/disables playout of received audio streams. Enabled by default.
*
* Note that even if playout is enabled, streams will only be played out if
@@ -1242,6 +1249,7 @@
private native void nativeCreateAnswer(SdpObserver observer, MediaConstraints constraints);
private native void nativeSetLocalDescription(SdpObserver observer, SessionDescription sdp);
private native void nativeSetRemoteDescription(SdpObserver observer, SessionDescription sdp);
+ private native void nativeRestartIce();
private native void nativeSetAudioPlayout(boolean playout);
private native void nativeSetAudioRecording(boolean recording);
private native boolean nativeSetBitrate(Integer min, Integer current, Integer max);
diff --git a/sdk/android/src/jni/pc/peer_connection.cc b/sdk/android/src/jni/pc/peer_connection.cc
index 6706782..caa8864 100644
--- a/sdk/android/src/jni/pc/peer_connection.cc
+++ b/sdk/android/src/jni/pc/peer_connection.cc
@@ -588,6 +588,11 @@
observer, JavaToNativeSessionDescription(jni, j_sdp).release());
}
+static void JNI_PeerConnection_RestartIce(JNIEnv* jni,
+ const JavaParamRef<jobject>& j_pc) {
+ ExtractNativePC(jni, j_pc)->RestartIce();
+}
+
static void JNI_PeerConnection_SetAudioPlayout(
JNIEnv* jni,
const JavaParamRef<jobject>& j_pc,