summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Ying Xu <yinxu@google.com> 2021-04-02 15:54:28 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2021-04-02 15:54:28 +0000
commit5b5c629aea760965ba5517ecf90de56e91a64ae9 (patch)
tree8708dea7a43c40663772551578077cc1bc0a9559
parent567a68843532b3a224ff44c89d574a0cb1369f90 (diff)
parent302f6cf17f6b2578a4a43b024ce751643352200b (diff)
Merge "Ignore the WiFi network callbacks if they are not default" into sc-dev
-rw-r--r--packages/SettingsLib/src/com/android/settingslib/wifi/WifiStatusTracker.java6
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java23
2 files changed, 19 insertions, 10 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/wifi/WifiStatusTracker.java b/packages/SettingsLib/src/com/android/settingslib/wifi/WifiStatusTracker.java
index 2c2ca3becd4a..8f7006e7dc83 100644
--- a/packages/SettingsLib/src/com/android/settingslib/wifi/WifiStatusTracker.java
+++ b/packages/SettingsLib/src/com/android/settingslib/wifi/WifiStatusTracker.java
@@ -80,6 +80,9 @@ public class WifiStatusTracker {
@Override
public void onCapabilitiesChanged(
Network network, NetworkCapabilities networkCapabilities) {
+ if (mDefaultNetwork != null && mDefaultNetwork.getNetId() != network.getNetId()) {
+ return;
+ }
if (!mNetworks.contains(network.getNetId())) {
// New network
boolean isVcnOverWifi =
@@ -114,6 +117,9 @@ public class WifiStatusTracker {
@Override
public void onLost(Network network) {
+ if (mDefaultNetwork != null && mDefaultNetwork.getNetId() != network.getNetId()) {
+ return;
+ }
String log = new StringBuilder()
.append(SSDF.format(System.currentTimeMillis())).append(",")
.append("onLost: ")
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java
index 566c71774709..4471778a03ab 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java
@@ -130,6 +130,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
protected int mSubId;
private NetworkCapabilities mNetCapabilities;
+ private Network mNetwork;
private ConnectivityManager.NetworkCallback mDefaultCallbackInWifiTracker;
private ConnectivityManager.NetworkCallback mDefaultCallbackInNetworkController;
private ConnectivityManager.NetworkCallback mNetworkCallback;
@@ -174,8 +175,10 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
mMockCm = mock(ConnectivityManager.class);
mMockBd = mock(BroadcastDispatcher.class);
mMockNsm = mock(NetworkScoreManager.class);
+ mNetwork = mock(Network.class);
mMockSubDefaults = mock(SubscriptionDefaults.class);
mNetCapabilities = new NetworkCapabilities();
+ when(mNetwork.getNetId()).thenReturn(0);
when(mMockTm.isDataCapable()).thenReturn(true);
when(mMockTm.createForSubscriptionId(anyInt())).thenReturn(mMockTm);
doAnswer(invocation -> {
@@ -323,7 +326,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
mNetCapabilities.setTransportInfo(info);
setConnectivityCommon(networkType, validated, isConnected);
mDefaultCallbackInNetworkController.onCapabilitiesChanged(
- mock(Network.class), new NetworkCapabilities(mNetCapabilities));
+ mNetwork, new NetworkCapabilities(mNetCapabilities));
}
public void setConnectivityViaCallbackInNetworkController(
@@ -333,7 +336,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
}
setConnectivityCommon(networkType, validated, isConnected);
mDefaultCallbackInNetworkController.onCapabilitiesChanged(
- mock(Network.class), new NetworkCapabilities(mNetCapabilities));
+ mNetwork, new NetworkCapabilities(mNetCapabilities));
}
public void setConnectivityViaCallbackInWifiTracker(
@@ -344,12 +347,12 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
setConnectivityCommon(networkType, validated, isConnected);
if (networkType == NetworkCapabilities.TRANSPORT_WIFI) {
if (isConnected) {
- mNetworkCallback.onAvailable(mock(Network.class),
+ mNetworkCallback.onAvailable(mNetwork,
new NetworkCapabilities(mNetCapabilities), new LinkProperties(), false);
mNetworkCallback.onCapabilitiesChanged(
- mock(Network.class), new NetworkCapabilities(mNetCapabilities));
+ mNetwork, new NetworkCapabilities(mNetCapabilities));
} else {
- mNetworkCallback.onLost(mock(Network.class));
+ mNetworkCallback.onLost(mNetwork);
}
}
}
@@ -360,14 +363,14 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
setConnectivityCommon(networkType, validated, isConnected);
if (networkType == NetworkCapabilities.TRANSPORT_CELLULAR) {
if (isConnected) {
- mNetworkCallback.onAvailable(mock(Network.class),
+ mNetworkCallback.onAvailable(mNetwork,
new NetworkCapabilities(mNetCapabilities), new LinkProperties(), false);
mNetworkCallback.onCapabilitiesChanged(
- mock(Network.class), new NetworkCapabilities(mNetCapabilities));
+ mNetwork, new NetworkCapabilities(mNetCapabilities));
mDefaultCallbackInWifiTracker.onCapabilitiesChanged(
- mock(Network.class), new NetworkCapabilities(mNetCapabilities));
+ mNetwork, new NetworkCapabilities(mNetCapabilities));
} else {
- mNetworkCallback.onLost(mock(Network.class));
+ mNetworkCallback.onLost(mNetwork);
}
}
}
@@ -379,7 +382,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
}
setConnectivityCommon(networkType, validated, isConnected);
mDefaultCallbackInWifiTracker.onCapabilitiesChanged(
- mock(Network.class), new NetworkCapabilities(mNetCapabilities));
+ mNetwork, new NetworkCapabilities(mNetCapabilities));
}
private void setConnectivityCommon(