diff --git a/webrtc/sdk/android/api/org/webrtc/PeerConnectionFactory.java b/webrtc/sdk/android/api/org/webrtc/PeerConnectionFactory.java index 8bbc33b8cf..75d3be9e8b 100644 --- a/webrtc/sdk/android/api/org/webrtc/PeerConnectionFactory.java +++ b/webrtc/sdk/android/api/org/webrtc/PeerConnectionFactory.java @@ -57,6 +57,14 @@ public class PeerConnectionFactory { // Field trial initialization. Must be called before PeerConnectionFactory // is created. public static native void initializeFieldTrials(String fieldTrialsInitString); + // Wrapper of webrtc::field_trial::FindFullName. Develop the feature with default behaviour off. + // Example usage: + // if (PeerConnectionFactory.fieldTrialsFindFullName("WebRTCExperiment").equals("Enabled")) { + // method1(); + // } else { + // method2(); + // } + public static native String fieldTrialsFindFullName(String name); // Internal tracing initialization. Must be called before PeerConnectionFactory is created to // prevent racing with tracing code. public static native void initializeInternalTracer(); diff --git a/webrtc/sdk/android/src/jni/peerconnection_jni.cc b/webrtc/sdk/android/src/jni/peerconnection_jni.cc index 43daae1266..5d3b6c50cb 100644 --- a/webrtc/sdk/android/src/jni/peerconnection_jni.cc +++ b/webrtc/sdk/android/src/jni/peerconnection_jni.cc @@ -71,6 +71,7 @@ #include "webrtc/media/base/videocapturer.h" #include "webrtc/media/engine/webrtcvideodecoderfactory.h" #include "webrtc/media/engine/webrtcvideoencoderfactory.h" +#include "webrtc/system_wrappers/include/field_trial.h" #include "webrtc/system_wrappers/include/field_trial_default.h" #include "webrtc/system_wrappers/include/logcat_trace_context.h" #include "webrtc/system_wrappers/include/trace.h" @@ -1144,6 +1145,12 @@ JOW(void, PeerConnectionFactory_initializeInternalTracer)(JNIEnv* jni, jclass) { rtc::tracing::SetupInternalTracer(); } +JOW(jstring, PeerConnectionFactory_fieldTrialsFindFullName) +(JNIEnv* jni, jclass, jstring j_name) { + return JavaStringFromStdString( + jni, webrtc::field_trial::FindFullName(JavaToStdString(jni, j_name))); +} + JOW(jboolean, PeerConnectionFactory_startInternalTracingCapture)( JNIEnv* jni, jclass, jstring j_event_tracing_filename) { if (!j_event_tracing_filename)