Revert "WebRTC-DeprecateGlobalFieldTrialString/Enabled/ - part 14/inf"

This reverts commit f177081eeeab64658fb560b6e8cb235620ac4a1a.

Reason for revert: breaks downstream project

Original change's description:
> WebRTC-DeprecateGlobalFieldTrialString/Enabled/ - part 14/inf
>
> This cl/ passes field trials all the way from c++
> to the android NetworkMonitorAutoDetect.java
>
> Bug: webrtc:10335
> Change-Id: Ic6842612eed36b684340f0f78f4087bee249cc50
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/257081
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Florent Castelli <orphis@webrtc.org>
> Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#36498}

Bug: webrtc:10335
Change-Id: I8d881ea3f50cf4affde65800d759885b2581c6be
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/258482
Reviewed-by: Jonas Oreland <jonaso@google.com>
Owners-Override: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#36500}
This commit is contained in:
Artem Titov 2022-04-08 15:09:03 +00:00 committed by WebRTC LUCI CQ
parent bb877d25c2
commit 54714779b2
8 changed files with 56 additions and 84 deletions

View File

@ -1631,7 +1631,6 @@ if (is_android) {
":native_api_video", ":native_api_video",
":opensles_audio_device_module", ":opensles_audio_device_module",
":video_jni", ":video_jni",
"../../api:field_trials_view",
"../../api:scoped_refptr", "../../api:scoped_refptr",
"../../api/rtc_event_log:rtc_event_log_factory", "../../api/rtc_event_log:rtc_event_log_factory",
"../../api/task_queue:default_task_queue_factory", "../../api/task_queue:default_task_queue_factory",
@ -1658,8 +1657,9 @@ if (is_android) {
"../../rtc_base/synchronization:mutex", "../../rtc_base/synchronization:mutex",
"../../rtc_base/system:inline", "../../rtc_base/system:inline",
"../../system_wrappers", "../../system_wrappers",
"../../system_wrappers:field_trial",
"../../test:field_trial",
"../../test:fileutils", "../../test:fileutils",
"../../test:scoped_key_value_config",
"../../test:test_support", "../../test:test_support",
"../../testing/gtest", "../../testing/gtest",
] ]

View File

@ -13,6 +13,5 @@ package org.webrtc;
import android.content.Context; import android.content.Context;
public interface NetworkChangeDetectorFactory { public interface NetworkChangeDetectorFactory {
public NetworkChangeDetector create( public NetworkChangeDetector create(NetworkChangeDetector.Observer observer, Context context);
NetworkChangeDetector.Observer observer, Context context, String fieldTrialsString);
} }

View File

@ -46,8 +46,8 @@ public class NetworkMonitor {
new NetworkChangeDetectorFactory() { new NetworkChangeDetectorFactory() {
@Override @Override
public NetworkChangeDetector create( public NetworkChangeDetector create(
NetworkChangeDetector.Observer observer, Context context, String fieldTrialsString) { NetworkChangeDetector.Observer observer, Context context) {
return new NetworkMonitorAutoDetect(observer, context, fieldTrialsString); return new NetworkMonitorAutoDetect(observer, context);
} }
}; };
@ -101,26 +101,20 @@ public class NetworkMonitor {
* multi-networking. This requires the embedding app have the platform ACCESS_NETWORK_STATE and * multi-networking. This requires the embedding app have the platform ACCESS_NETWORK_STATE and
* CHANGE_NETWORK_STATE permission. * CHANGE_NETWORK_STATE permission.
*/ */
public void startMonitoring(Context applicationContext, String fieldTrialsString) { public void startMonitoring(Context applicationContext) {
synchronized (networkChangeDetectorLock) { synchronized (networkChangeDetectorLock) {
++numObservers; ++numObservers;
if (networkChangeDetector == null) { if (networkChangeDetector == null) {
networkChangeDetector = createNetworkChangeDetector(applicationContext, fieldTrialsString); networkChangeDetector = createNetworkChangeDetector(applicationContext);
} }
currentConnectionType = networkChangeDetector.getCurrentConnectionType(); currentConnectionType = networkChangeDetector.getCurrentConnectionType();
} }
} }
/** Deprecated, use startMonitoring with fieldTrialsStringString argument. */
@Deprecated
public void startMonitoring(Context applicationContext) {
startMonitoring(applicationContext, "");
}
/** Deprecated, pass in application context in startMonitoring instead. */ /** Deprecated, pass in application context in startMonitoring instead. */
@Deprecated @Deprecated
public void startMonitoring() { public void startMonitoring() {
startMonitoring(ContextUtils.getApplicationContext(), ""); startMonitoring(ContextUtils.getApplicationContext());
} }
/** /**
@ -129,15 +123,11 @@ public class NetworkMonitor {
* CHANGE_NETWORK_STATE permission. * CHANGE_NETWORK_STATE permission.
*/ */
@CalledByNative @CalledByNative
private void startMonitoring( private void startMonitoring(@Nullable Context applicationContext, long nativeObserver) {
@Nullable Context applicationContext, long nativeObserver, String fieldTrialsString) { Logging.d(TAG, "Start monitoring with native observer " + nativeObserver);
Logging.d(TAG,
"Start monitoring with native observer " + nativeObserver
+ " fieldTrialsString: " + fieldTrialsString);
startMonitoring( startMonitoring(
applicationContext != null ? applicationContext : ContextUtils.getApplicationContext(), applicationContext != null ? applicationContext : ContextUtils.getApplicationContext());
fieldTrialsString);
// The native observers expect a network list update after they call startMonitoring. // The native observers expect a network list update after they call startMonitoring.
synchronized (nativeNetworkObservers) { synchronized (nativeNetworkObservers) {
nativeNetworkObservers.add(nativeObserver); nativeNetworkObservers.add(nativeObserver);
@ -187,8 +177,7 @@ public class NetworkMonitor {
return currentConnectionType; return currentConnectionType;
} }
private NetworkChangeDetector createNetworkChangeDetector( private NetworkChangeDetector createNetworkChangeDetector(Context appContext) {
Context appContext, String fieldTrialsString) {
return networkChangeDetectorFactory.create(new NetworkChangeDetector.Observer() { return networkChangeDetectorFactory.create(new NetworkChangeDetector.Observer() {
@Override @Override
public void onConnectionTypeChanged(NetworkChangeDetector.ConnectionType newConnectionType) { public void onConnectionTypeChanged(NetworkChangeDetector.ConnectionType newConnectionType) {
@ -210,7 +199,7 @@ public class NetworkMonitor {
List<NetworkChangeDetector.ConnectionType> types, int preference) { List<NetworkChangeDetector.ConnectionType> types, int preference) {
notifyObserversOfNetworkPreference(types, preference); notifyObserversOfNetworkPreference(types, preference);
} }
}, appContext, fieldTrialsString); }, appContext);
} }
private void updateCurrentConnectionType(NetworkChangeDetector.ConnectionType newConnectionType) { private void updateCurrentConnectionType(NetworkChangeDetector.ConnectionType newConnectionType) {
@ -350,11 +339,10 @@ public class NetworkMonitor {
} }
// For testing only. // For testing only.
static NetworkMonitorAutoDetect createAndSetAutoDetectForTest( static NetworkMonitorAutoDetect createAndSetAutoDetectForTest(Context context) {
Context context, String fieldTrialsString) {
NetworkMonitor networkMonitor = getInstance(); NetworkMonitor networkMonitor = getInstance();
NetworkChangeDetector networkChangeDetector = NetworkChangeDetector networkChangeDetector =
networkMonitor.createNetworkChangeDetector(context, fieldTrialsString); networkMonitor.createNetworkChangeDetector(context);
networkMonitor.networkChangeDetector = networkChangeDetector; networkMonitor.networkChangeDetector = networkChangeDetector;
return (NetworkMonitorAutoDetect) networkChangeDetector; return (NetworkMonitorAutoDetect) networkChangeDetector;
} }

View File

@ -176,29 +176,26 @@ public class NetworkMonitorAutoDetect extends BroadcastReceiver implements Netwo
private final boolean requestVPN; private final boolean requestVPN;
private final boolean includeOtherUidNetworks; private final boolean includeOtherUidNetworks;
ConnectivityManagerDelegate( ConnectivityManagerDelegate(Context context, Set<Network> availableNetworks) {
Context context, Set<Network> availableNetworks, String fieldTrialsString) {
this((ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE), this((ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE),
availableNetworks, fieldTrialsString); availableNetworks,
PeerConnectionFactory.fieldTrialsFindFullName("WebRTC-NetworkMonitorAutoDetect"));
} }
@VisibleForTesting @VisibleForTesting
ConnectivityManagerDelegate(ConnectivityManager connectivityManager, ConnectivityManagerDelegate(ConnectivityManager connectivityManager,
Set<Network> availableNetworks, String fieldTrialsString) { Set<Network> availableNetworks, String fieldTrials) {
this.connectivityManager = connectivityManager; this.connectivityManager = connectivityManager;
this.availableNetworks = availableNetworks; this.availableNetworks = availableNetworks;
this.getAllNetworksFromCache = this.getAllNetworksFromCache = checkFieldTrial(fieldTrials, "getAllNetworksFromCache", false);
checkFieldTrial(fieldTrialsString, "getAllNetworksFromCache", false); this.requestVPN = checkFieldTrial(fieldTrials, "requestVPN", false);
this.requestVPN = checkFieldTrial(fieldTrialsString, "requestVPN", false); this.includeOtherUidNetworks = checkFieldTrial(fieldTrials, "includeOtherUidNetworks", false);
this.includeOtherUidNetworks =
checkFieldTrial(fieldTrialsString, "includeOtherUidNetworks", false);
} }
private static boolean checkFieldTrial( private static boolean checkFieldTrial(String fieldTrials, String key, boolean defaultValue) {
String fieldTrialsString, String key, boolean defaultValue) { if (fieldTrials.contains(key + ":true")) {
if (fieldTrialsString.contains(key + ":true")) {
return true; return true;
} else if (fieldTrialsString.contains(key + ":false")) { } else if (fieldTrials.contains(key + ":false")) {
return false; return false;
} }
return defaultValue; return defaultValue;
@ -638,12 +635,10 @@ public class NetworkMonitorAutoDetect extends BroadcastReceiver implements Netwo
/** Constructs a NetworkMonitorAutoDetect. Should only be called on UI thread. */ /** Constructs a NetworkMonitorAutoDetect. Should only be called on UI thread. */
@SuppressLint("NewApi") @SuppressLint("NewApi")
public NetworkMonitorAutoDetect( public NetworkMonitorAutoDetect(NetworkChangeDetector.Observer observer, Context context) {
NetworkChangeDetector.Observer observer, Context context, String fieldTrialsString) {
this.observer = observer; this.observer = observer;
this.context = context; this.context = context;
connectivityManagerDelegate = connectivityManagerDelegate = new ConnectivityManagerDelegate(context, availableNetworks);
new ConnectivityManagerDelegate(context, availableNetworks, fieldTrialsString);
wifiManagerDelegate = new WifiManagerDelegate(context); wifiManagerDelegate = new WifiManagerDelegate(context);
final NetworkState networkState = connectivityManagerDelegate.getNetworkState(); final NetworkState networkState = connectivityManagerDelegate.getNetworkState();

View File

@ -58,7 +58,6 @@ import org.webrtc.NetworkMonitorAutoDetect.SimpleNetworkCallback;
public class NetworkMonitorTest { public class NetworkMonitorTest {
private static final long INVALID_NET_ID = -1; private static final long INVALID_NET_ID = -1;
private NetworkChangeDetector detector; private NetworkChangeDetector detector;
private String fieldTrialsString = "";
/** /**
* Listens for alerts fired by the NetworkMonitor when network status changes. * Listens for alerts fired by the NetworkMonitor when network status changes.
@ -95,7 +94,7 @@ public class NetworkMonitorTest {
} }
MockConnectivityManagerDelegate(Set<Network> availableNetworks, String fieldTrialsString) { MockConnectivityManagerDelegate(Set<Network> availableNetworks, String fieldTrialsString) {
super((ConnectivityManager) null, availableNetworks, fieldTrialsString); super(null, availableNetworks, fieldTrialsString);
} }
@Override @Override
@ -190,13 +189,13 @@ public class NetworkMonitorTest {
new NetworkChangeDetectorFactory() { new NetworkChangeDetectorFactory() {
@Override @Override
public NetworkChangeDetector create( public NetworkChangeDetector create(
NetworkChangeDetector.Observer observer, Context context, String fieldTrialsString) { NetworkChangeDetector.Observer observer, Context context) {
detector = new NetworkMonitorAutoDetect(observer, context, fieldTrialsString); detector = new NetworkMonitorAutoDetect(observer, context);
return detector; return detector;
} }
}); });
receiver = NetworkMonitor.createAndSetAutoDetectForTest(context, fieldTrialsString); receiver = NetworkMonitor.createAndSetAutoDetectForTest(context);
assertNotNull(receiver); assertNotNull(receiver);
connectivityDelegate = new MockConnectivityManagerDelegate(); connectivityDelegate = new MockConnectivityManagerDelegate();
@ -229,8 +228,7 @@ public class NetworkMonitorTest {
NetworkMonitorAutoDetect.Observer observer = new TestNetworkMonitorAutoDetectObserver(); NetworkMonitorAutoDetect.Observer observer = new TestNetworkMonitorAutoDetectObserver();
NetworkMonitorAutoDetect receiver = NetworkMonitorAutoDetect receiver = new NetworkMonitorAutoDetect(observer, context);
new NetworkMonitorAutoDetect(observer, context, fieldTrialsString);
assertTrue(receiver.isReceiverRegisteredForTesting()); assertTrue(receiver.isReceiverRegisteredForTesting());
} }
@ -289,7 +287,7 @@ public class NetworkMonitorTest {
@SmallTest @SmallTest
public void testConnectivityManagerDelegateDoesNotCrash() { public void testConnectivityManagerDelegateDoesNotCrash() {
ConnectivityManagerDelegate delegate = new ConnectivityManagerDelegate( ConnectivityManagerDelegate delegate = new ConnectivityManagerDelegate(
InstrumentationRegistry.getTargetContext(), new HashSet<>(), fieldTrialsString); InstrumentationRegistry.getTargetContext(), new HashSet<>());
delegate.getNetworkState(); delegate.getNetworkState();
Network[] networks = delegate.getAllNetworks(); Network[] networks = delegate.getAllNetworks();
if (networks.length >= 1) { if (networks.length >= 1) {
@ -361,9 +359,8 @@ public class NetworkMonitorTest {
assertTrue(request.equals(builder.build())); assertTrue(request.equals(builder.build()));
} }
private NetworkRequest getNetworkRequestForFieldTrials(String fieldTrialsString) { private NetworkRequest getNetworkRequestForFieldTrials(String fieldTrials) {
return new ConnectivityManagerDelegate( return new ConnectivityManagerDelegate(null, new HashSet<>(), fieldTrials)
(ConnectivityManager) null, new HashSet<>(), fieldTrialsString)
.createNetworkRequest(); .createNetworkRequest();
} }
@ -376,8 +373,8 @@ public class NetworkMonitorTest {
@SmallTest @SmallTest
public void testQueryableAPIsDoNotCrash() { public void testQueryableAPIsDoNotCrash() {
NetworkMonitorAutoDetect.Observer observer = new TestNetworkMonitorAutoDetectObserver(); NetworkMonitorAutoDetect.Observer observer = new TestNetworkMonitorAutoDetectObserver();
NetworkMonitorAutoDetect ncn = new NetworkMonitorAutoDetect( NetworkMonitorAutoDetect ncn =
observer, InstrumentationRegistry.getTargetContext(), fieldTrialsString); new NetworkMonitorAutoDetect(observer, InstrumentationRegistry.getTargetContext());
ncn.getDefaultNetId(); ncn.getDefaultNetId();
} }
@ -389,7 +386,7 @@ public class NetworkMonitorTest {
public void testStartStopMonitoring() { public void testStartStopMonitoring() {
NetworkMonitor networkMonitor = NetworkMonitor.getInstance(); NetworkMonitor networkMonitor = NetworkMonitor.getInstance();
Context context = ContextUtils.getApplicationContext(); Context context = ContextUtils.getApplicationContext();
networkMonitor.startMonitoring(context, fieldTrialsString); networkMonitor.startMonitoring(context);
assertEquals(1, networkMonitor.getNumObservers()); assertEquals(1, networkMonitor.getNumObservers());
assertEquals(detector, networkMonitor.getNetworkChangeDetector()); assertEquals(detector, networkMonitor.getNetworkChangeDetector());
networkMonitor.stopMonitoring(); networkMonitor.stopMonitoring();

View File

@ -13,8 +13,9 @@
#include "rtc_base/ip_address.h" #include "rtc_base/ip_address.h"
#include "sdk/android/native_unittests/application_context_provider.h" #include "sdk/android/native_unittests/application_context_provider.h"
#include "sdk/android/src/jni/jni_helpers.h" #include "sdk/android/src/jni/jni_helpers.h"
#include "system_wrappers/include/field_trial.h"
#include "test/field_trial.h"
#include "test/gtest.h" #include "test/gtest.h"
#include "test/scoped_key_value_config.h"
namespace webrtc { namespace webrtc {
namespace test { namespace test {
@ -46,8 +47,8 @@ class AndroidNetworkMonitorTest : public ::testing::Test {
AndroidNetworkMonitorTest() { AndroidNetworkMonitorTest() {
JNIEnv* env = AttachCurrentThreadIfNeeded(); JNIEnv* env = AttachCurrentThreadIfNeeded();
ScopedJavaLocalRef<jobject> context = test::GetAppContextForTest(env); ScopedJavaLocalRef<jobject> context = test::GetAppContextForTest(env);
network_monitor_ = std::make_unique<jni::AndroidNetworkMonitor>( network_monitor_ =
env, context, field_trials_); std::make_unique<jni::AndroidNetworkMonitor>(env, context);
} }
void SetUp() override { void SetUp() override {
@ -61,7 +62,6 @@ class AndroidNetworkMonitorTest : public ::testing::Test {
} }
protected: protected:
test::ScopedKeyValueConfig field_trials_;
std::unique_ptr<jni::AndroidNetworkMonitor> network_monitor_; std::unique_ptr<jni::AndroidNetworkMonitor> network_monitor_;
}; };
@ -102,8 +102,7 @@ TEST_F(AndroidNetworkMonitorTest, TestFindNetworkHandleUsingFullIpv6Address) {
TEST_F(AndroidNetworkMonitorTest, TEST_F(AndroidNetworkMonitorTest,
TestFindNetworkHandleIgnoringIpv6TemporaryPart) { TestFindNetworkHandleIgnoringIpv6TemporaryPart) {
ScopedKeyValueConfig field_trials( ScopedFieldTrials field_trials(
field_trials_,
"WebRTC-FindNetworkHandleWithoutIpv6TemporaryPart/Enabled/"); "WebRTC-FindNetworkHandleWithoutIpv6TemporaryPart/Enabled/");
// Start() updates the states introduced by the field trial. // Start() updates the states introduced by the field trial.
network_monitor_->Start(); network_monitor_->Start();
@ -155,8 +154,7 @@ TEST_F(AndroidNetworkMonitorTest, TestFindNetworkHandleUsingIfName) {
} }
TEST_F(AndroidNetworkMonitorTest, TestUnderlyingVpnType) { TEST_F(AndroidNetworkMonitorTest, TestUnderlyingVpnType) {
ScopedKeyValueConfig field_trials(field_trials_, ScopedFieldTrials field_trials("WebRTC-BindUsingInterfaceName/Enabled/");
"WebRTC-BindUsingInterfaceName/Enabled/");
jni::NetworkHandle ipv4_handle = 100; jni::NetworkHandle ipv4_handle = 100;
rtc::IPAddress ipv4_address(kTestIpv4Address); rtc::IPAddress ipv4_address(kTestIpv4Address);
jni::NetworkInformation net_info = jni::NetworkInformation net_info =

View File

@ -28,6 +28,7 @@
#include "sdk/android/generated_base_jni/NetworkMonitor_jni.h" #include "sdk/android/generated_base_jni/NetworkMonitor_jni.h"
#include "sdk/android/native_api/jni/java_types.h" #include "sdk/android/native_api/jni/java_types.h"
#include "sdk/android/src/jni/jni_helpers.h" #include "sdk/android/src/jni/jni_helpers.h"
#include "system_wrappers/include/field_trial.h"
namespace webrtc { namespace webrtc {
namespace jni { namespace jni {
@ -226,13 +227,11 @@ std::string NetworkInformation::ToString() const {
AndroidNetworkMonitor::AndroidNetworkMonitor( AndroidNetworkMonitor::AndroidNetworkMonitor(
JNIEnv* env, JNIEnv* env,
const JavaRef<jobject>& j_application_context, const JavaRef<jobject>& j_application_context)
const FieldTrialsView& field_trials)
: android_sdk_int_(Java_NetworkMonitor_androidSdkInt(env)), : android_sdk_int_(Java_NetworkMonitor_androidSdkInt(env)),
j_application_context_(env, j_application_context), j_application_context_(env, j_application_context),
j_network_monitor_(env, Java_NetworkMonitor_getInstance(env)), j_network_monitor_(env, Java_NetworkMonitor_getInstance(env)),
network_thread_(rtc::Thread::Current()), network_thread_(rtc::Thread::Current()) {}
field_trials_(field_trials) {}
AndroidNetworkMonitor::~AndroidNetworkMonitor() { AndroidNetworkMonitor::~AndroidNetworkMonitor() {
RTC_DCHECK(!started_); RTC_DCHECK(!started_);
@ -245,12 +244,13 @@ void AndroidNetworkMonitor::Start() {
} }
started_ = true; started_ = true;
surface_cellular_types_ = surface_cellular_types_ =
field_trials_.IsEnabled("WebRTC-SurfaceCellularTypes"); webrtc::field_trial::IsEnabled("WebRTC-SurfaceCellularTypes");
find_network_handle_without_ipv6_temporary_part_ = field_trials_.IsEnabled( find_network_handle_without_ipv6_temporary_part_ =
webrtc::field_trial::IsEnabled(
"WebRTC-FindNetworkHandleWithoutIpv6TemporaryPart"); "WebRTC-FindNetworkHandleWithoutIpv6TemporaryPart");
bind_using_ifname_ = bind_using_ifname_ =
!field_trials_.IsDisabled("WebRTC-BindUsingInterfaceName"); !webrtc::field_trial::IsDisabled("WebRTC-BindUsingInterfaceName");
disable_is_adapter_available_ = field_trials_.IsDisabled( disable_is_adapter_available_ = webrtc::field_trial::IsDisabled(
"WebRTC-AndroidNetworkMonitor-IsAdapterAvailable"); "WebRTC-AndroidNetworkMonitor-IsAdapterAvailable");
// This pointer is also accessed by the methods called from java threads. // This pointer is also accessed by the methods called from java threads.
@ -260,9 +260,7 @@ void AndroidNetworkMonitor::Start() {
JNIEnv* env = AttachCurrentThreadIfNeeded(); JNIEnv* env = AttachCurrentThreadIfNeeded();
Java_NetworkMonitor_startMonitoring( Java_NetworkMonitor_startMonitoring(
env, j_network_monitor_, j_application_context_, jlongFromPointer(this), env, j_network_monitor_, j_application_context_, jlongFromPointer(this));
NativeToJavaString(
env, field_trials_.Lookup("WebRTC-NetworkMonitorAutoDetect")));
} }
void AndroidNetworkMonitor::Stop() { void AndroidNetworkMonitor::Stop() {
@ -610,7 +608,7 @@ rtc::NetworkMonitorInterface*
AndroidNetworkMonitorFactory::CreateNetworkMonitor( AndroidNetworkMonitorFactory::CreateNetworkMonitor(
const FieldTrialsView& field_trials) { const FieldTrialsView& field_trials) {
return new AndroidNetworkMonitor(AttachCurrentThreadIfNeeded(), return new AndroidNetworkMonitor(AttachCurrentThreadIfNeeded(),
j_application_context_, field_trials); j_application_context_);
} }
void AndroidNetworkMonitor::NotifyConnectionTypeChanged( void AndroidNetworkMonitor::NotifyConnectionTypeChanged(

View File

@ -70,8 +70,7 @@ struct NetworkInformation {
class AndroidNetworkMonitor : public rtc::NetworkMonitorInterface { class AndroidNetworkMonitor : public rtc::NetworkMonitorInterface {
public: public:
AndroidNetworkMonitor(JNIEnv* env, AndroidNetworkMonitor(JNIEnv* env,
const JavaRef<jobject>& j_application_context, const JavaRef<jobject>& j_application_context);
const FieldTrialsView& field_trials);
~AndroidNetworkMonitor() override; ~AndroidNetworkMonitor() override;
// TODO(sakal): Remove once down stream dependencies have been updated. // TODO(sakal): Remove once down stream dependencies have been updated.
@ -161,8 +160,6 @@ class AndroidNetworkMonitor : public rtc::NetworkMonitorInterface {
rtc::scoped_refptr<PendingTaskSafetyFlag> safety_flag_ rtc::scoped_refptr<PendingTaskSafetyFlag> safety_flag_
RTC_PT_GUARDED_BY(network_thread_) = nullptr; RTC_PT_GUARDED_BY(network_thread_) = nullptr;
const FieldTrialsView& field_trials_;
}; };
class AndroidNetworkMonitorFactory : public rtc::NetworkMonitorFactory { class AndroidNetworkMonitorFactory : public rtc::NetworkMonitorFactory {