diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2024-05-21 14:11:10 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2024-05-21 14:11:10 +0000 |
commit | d695f4f63e3f649059b568c031c963095036ffad (patch) | |
tree | 9b78aea2d776949b2c117938efe42e1c8e6e2993 | |
parent | aae3f9a8347fef9e3a14ef8db5c9c597518e708c (diff) | |
parent | 32d1d7f29411f408cc88fea94ab0c90297fff296 (diff) | |
download | wifi-android14-qpr3-s2-release.tar.gz |
Merge cherrypicks of ['googleplex-android-review.googlesource.com/26782882', 'googleplex-android-review.googlesource.com/27008218'] into 24Q2-release.android-14.0.0_r54android-14.0.0_r53android-14.0.0_r52android14-qpr3-s2-releaseandroid14-qpr3-release
Change-Id: I79f10406da1ccf5e0579c84bc4b5c2fffca1fbbb
7 files changed, 13 insertions, 63 deletions
diff --git a/libs/WifiTrackerLib/sdk_src/src/com/android/wifitrackerlib/NonSdkApiWrapper.java b/libs/WifiTrackerLib/sdk_src/src/com/android/wifitrackerlib/NonSdkApiWrapper.java index 4ea48626a..943bfefa2 100644 --- a/libs/WifiTrackerLib/sdk_src/src/com/android/wifitrackerlib/NonSdkApiWrapper.java +++ b/libs/WifiTrackerLib/sdk_src/src/com/android/wifitrackerlib/NonSdkApiWrapper.java @@ -57,15 +57,6 @@ class NonSdkApiWrapper { } /** - * Tries to get WifiInfo from network capabilities if it is VCN-over-Wifi. - */ - static WifiInfo getVcnWifiInfo(@NonNull NetworkCapabilities networkCapabilities) { - // This is only useful for treating CELLULAR over WIFI as a carrier merged network in - // provider model Settings. Since SUW doesn't use the provider model, this is not used. - return null; - } - - /** * Returns whether or not the device is in retail demo mode. */ static boolean isDemoMode(@NonNull Context context) { diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java index f5ef482c0..f9368c53f 100644 --- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java +++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java @@ -16,7 +16,6 @@ package com.android.wifitrackerlib; -import static android.net.NetworkCapabilities.TRANSPORT_CELLULAR; import static android.net.NetworkCapabilities.TRANSPORT_WIFI; import static android.os.Build.VERSION_CODES; @@ -155,7 +154,6 @@ public class BaseWifiTracker { .clearCapabilities() .addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_VPN) .addTransportType(TRANSPORT_WIFI) - .addTransportType(TRANSPORT_CELLULAR) // For VCN-over-Wifi .build(); private final ConnectivityManager.NetworkCallback mNetworkCallback = diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NonSdkApiWrapper.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NonSdkApiWrapper.java index 9b61c6646..9a05985a1 100644 --- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NonSdkApiWrapper.java +++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NonSdkApiWrapper.java @@ -24,8 +24,6 @@ import android.content.Context; import android.net.ConnectivityManager; import android.net.Network; import android.net.NetworkCapabilities; -import android.net.TransportInfo; -import android.net.vcn.VcnTransportInfo; import android.net.wifi.WifiInfo; import android.os.UserManager; import android.text.Annotation; @@ -94,17 +92,6 @@ class NonSdkApiWrapper { } /** - * Tries to get WifiInfo from network capabilities if it is VCN-over-Wifi. - */ - static WifiInfo getVcnWifiInfo(@NonNull NetworkCapabilities networkCapabilities) { - TransportInfo transportInfo = networkCapabilities.getTransportInfo(); - if (transportInfo instanceof VcnTransportInfo) { - return ((VcnTransportInfo) transportInfo).getWifiInfo(); - } - return null; - } - - /** * Returns whether or not the device is in retail demo mode. */ static boolean isDemoMode(@NonNull Context context) { diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java index af64a589b..010c903e9 100644 --- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java +++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java @@ -1209,7 +1209,7 @@ public class Utils { if (transportInfo instanceof WifiInfo) { return (WifiInfo) transportInfo; } - return NonSdkApiWrapper.getVcnWifiInfo(capabilities); + return null; } /** diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java index 3ee9a4dad..95338843b 100644 --- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java +++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java @@ -443,6 +443,7 @@ public class WifiPickerTracker extends BaseWifiTracker { for (WifiEntry entry : getAllWifiEntries()) { entry.onDefaultNetworkCapabilitiesChanged(network, networkCapabilities); } + notifyOnWifiEntriesChanged(WIFI_ENTRIES_CHANGED_REASON_GENERAL); } @WorkerThread @@ -451,6 +452,7 @@ public class WifiPickerTracker extends BaseWifiTracker { for (WifiEntry entry : getAllWifiEntries()) { entry.onDefaultNetworkLost(); } + notifyOnWifiEntriesChanged(WIFI_ENTRIES_CHANGED_REASON_GENERAL); } @WorkerThread @@ -1219,7 +1221,7 @@ public class WifiPickerTracker extends BaseWifiTracker { } } - private void conditionallyCreateConnectedWifiEntry(@NonNull WifiInfo wifiInfo) { + private void conditionallyCreateConnectedWifiEntry(@Nullable WifiInfo wifiInfo) { conditionallyCreateConnectedStandardWifiEntry(wifiInfo); conditionallyCreateConnectedSuggestedWifiEntry(wifiInfo); conditionallyCreateConnectedPasspointWifiEntry(wifiInfo); @@ -1231,7 +1233,7 @@ public class WifiPickerTracker extends BaseWifiTracker { * created if there is no existing entry, or the existing entry doesn't match WifiInfo. */ @WorkerThread - private void conditionallyCreateConnectedNetworkRequestEntry(@NonNull WifiInfo wifiInfo) { + private void conditionallyCreateConnectedNetworkRequestEntry(@Nullable WifiInfo wifiInfo) { final List<WifiConfiguration> matchingConfigs = new ArrayList<>(); if (wifiInfo != null) { @@ -1263,7 +1265,7 @@ public class WifiPickerTracker extends BaseWifiTracker { * network yet, create and cache a new StandardWifiEntry for it. */ @WorkerThread - private void conditionallyCreateConnectedStandardWifiEntry(@NonNull WifiInfo wifiInfo) { + private void conditionallyCreateConnectedStandardWifiEntry(@Nullable WifiInfo wifiInfo) { if (wifiInfo == null || wifiInfo.isPasspointAp() || wifiInfo.isOsuAp()) { return; } @@ -1297,7 +1299,7 @@ public class WifiPickerTracker extends BaseWifiTracker { * yet, create and cache a new StandardWifiEntry for it. */ @WorkerThread - private void conditionallyCreateConnectedSuggestedWifiEntry(@NonNull WifiInfo wifiInfo) { + private void conditionallyCreateConnectedSuggestedWifiEntry(@Nullable WifiInfo wifiInfo) { if (wifiInfo == null || wifiInfo.isPasspointAp() || wifiInfo.isOsuAp()) { return; } @@ -1326,7 +1328,7 @@ public class WifiPickerTracker extends BaseWifiTracker { * yet, create and cache a new StandardWifiEntry for it. */ @WorkerThread - private void conditionallyCreateConnectedPasspointWifiEntry(@NonNull WifiInfo wifiInfo) { + private void conditionallyCreateConnectedPasspointWifiEntry(@Nullable WifiInfo wifiInfo) { if (wifiInfo == null || !wifiInfo.isPasspointAp()) { return; } diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/NonSdkApiWrapperTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/NonSdkApiWrapperTest.java index b0b1449d8..25cfafa8a 100644 --- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/NonSdkApiWrapperTest.java +++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/NonSdkApiWrapperTest.java @@ -16,16 +16,10 @@ package com.android.wifitrackerlib; -import static com.google.common.truth.Truth.assertThat; - import static org.junit.Assert.assertEquals; import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.when; import android.content.Context; -import android.net.NetworkCapabilities; -import android.net.vcn.VcnTransportInfo; -import android.net.wifi.WifiInfo; import android.text.Annotation; import android.text.SpannableString; import android.text.SpannableStringBuilder; @@ -72,24 +66,4 @@ public class NonSdkApiWrapperTest { assertEquals(outputSpannableString.getSpans(0, outputSpannableString.length(), ClickableSpan.class).length, 0); } - - /** - * Verifies the functionality of {@link NonSdkApiWrapper#getVcnWifiInfo(NetworkCapabilities)} - */ - @Test - public void testGetVcnWifiInfo() { - NetworkCapabilities networkCapabilities = mock(NetworkCapabilities.class); - - assertThat(NonSdkApiWrapper.getVcnWifiInfo(networkCapabilities)).isNull(); - - VcnTransportInfo vcnTransportInfo = mock(VcnTransportInfo.class); - when(networkCapabilities.getTransportInfo()).thenReturn(vcnTransportInfo); - - assertThat(NonSdkApiWrapper.getVcnWifiInfo(networkCapabilities)).isNull(); - - WifiInfo wifiInfo = mock(WifiInfo.class); - when(vcnTransportInfo.getWifiInfo()).thenReturn(wifiInfo); - - assertThat(NonSdkApiWrapper.getVcnWifiInfo(networkCapabilities)).isEqualTo(wifiInfo); - } } diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/WifiPickerTrackerTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/WifiPickerTrackerTest.java index 6062fe112..7117ab58d 100644 --- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/WifiPickerTrackerTest.java +++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/WifiPickerTrackerTest.java @@ -195,6 +195,8 @@ public class WifiPickerTrackerTest { return TransportInfo.super.makeCopy(redactions); } }); + when(mMockVcnNetworkCapabilities.getUnderlyingNetworks()).thenReturn( + Arrays.asList(mMockNetwork)); // A real NetworkCapabilities is needed here in order to create a copy (with location info) // using the NetworkCapabilities constructor in handleOnStart. NetworkCapabilities realNetCaps = new NetworkCapabilities.Builder() @@ -2160,21 +2162,17 @@ public class WifiPickerTrackerTest { mBroadcastReceiverCaptor.getValue().onReceive(mMockContext, intent); verify(mMockConnectivityManager).registerNetworkCallback( any(), mNetworkCallbackCaptor.capture(), any()); - verify(mMockConnectivityManager, atLeast(0)).registerSystemDefaultNetworkCallback( - mDefaultNetworkCallbackCaptor.capture(), any()); - verify(mMockConnectivityManager, atLeast(0)).registerDefaultNetworkCallback( + verify(mMockConnectivityManager).registerDefaultNetworkCallback( mDefaultNetworkCallbackCaptor.capture(), any()); MockitoSession session = mockitoSession().spyStatic(NonSdkApiWrapper.class).startMocking(); try { - // Connect to VCN-over-Wifi network + // Connect to Wifi network when(mMockWifiInfo.isCarrierMerged()).thenReturn(true); when(mMockWifiInfo.getSubscriptionId()).thenReturn(subId); - doReturn(mMockWifiInfo).when(() -> - NonSdkApiWrapper.getVcnWifiInfo(mMockVcnNetworkCapabilities)); doReturn(true).when(() -> NonSdkApiWrapper.isPrimary(mMockWifiInfo)); mNetworkCallbackCaptor.getValue().onCapabilitiesChanged( - mMockNetwork, mMockVcnNetworkCapabilities); + mMockNetwork, mMockNetworkCapabilities); MergedCarrierEntry mergedCarrierEntry = wifiPickerTracker.getMergedCarrierEntry(); assertThat(mergedCarrierEntry.getConnectedState()) .isEqualTo(CONNECTED_STATE_CONNECTED); |