Loading api/system-current.txt +1 −0 Original line number Original line Diff line number Diff line Loading @@ -4855,6 +4855,7 @@ package android.net { } } public final class NetworkCapabilities implements android.os.Parcelable { public final class NetworkCapabilities implements android.os.Parcelable { method public boolean deduceRestrictedCapability(); method @NonNull public int[] getTransportTypes(); method @NonNull public int[] getTransportTypes(); method public boolean satisfiedByNetworkCapabilities(@Nullable android.net.NetworkCapabilities); method public boolean satisfiedByNetworkCapabilities(@Nullable android.net.NetworkCapabilities); method @NonNull public android.net.NetworkCapabilities setSSID(@Nullable String); method @NonNull public android.net.NetworkCapabilities setSSID(@Nullable String); Loading core/java/android/net/NetworkCapabilities.java +16 −8 Original line number Original line Diff line number Diff line Loading @@ -587,15 +587,14 @@ public final class NetworkCapabilities implements Parcelable { } } /** /** * Removes the NET_CAPABILITY_NOT_RESTRICTED capability if all the capabilities it provides are * Deduces that all the capabilities it provides are typically provided by restricted networks * typically provided by restricted networks. * or not. * * * TODO: consider: * @return {@code true} if the network should be restricted. * - Renaming it to guessRestrictedCapability and make it set the * restricted capability bit in addition to clearing it. * @hide * @hide */ */ public void maybeMarkCapabilitiesRestricted() { @SystemApi public boolean deduceRestrictedCapability() { // Check if we have any capability that forces the network to be restricted. // Check if we have any capability that forces the network to be restricted. final boolean forceRestrictedCapability = final boolean forceRestrictedCapability = (mNetworkCapabilities & FORCE_RESTRICTED_CAPABILITIES) != 0; (mNetworkCapabilities & FORCE_RESTRICTED_CAPABILITIES) != 0; Loading @@ -609,8 +608,17 @@ public final class NetworkCapabilities implements Parcelable { final boolean hasRestrictedCapabilities = final boolean hasRestrictedCapabilities = (mNetworkCapabilities & RESTRICTED_CAPABILITIES) != 0; (mNetworkCapabilities & RESTRICTED_CAPABILITIES) != 0; if (forceRestrictedCapability return forceRestrictedCapability || (hasRestrictedCapabilities && !hasUnrestrictedCapabilities)) { || (hasRestrictedCapabilities && !hasUnrestrictedCapabilities); } /** * Removes the NET_CAPABILITY_NOT_RESTRICTED capability if deducing the network is restricted. * * @hide */ public void maybeMarkCapabilitiesRestricted() { if (deduceRestrictedCapability()) { removeCapability(NET_CAPABILITY_NOT_RESTRICTED); removeCapability(NET_CAPABILITY_NOT_RESTRICTED); } } } } Loading Loading
api/system-current.txt +1 −0 Original line number Original line Diff line number Diff line Loading @@ -4855,6 +4855,7 @@ package android.net { } } public final class NetworkCapabilities implements android.os.Parcelable { public final class NetworkCapabilities implements android.os.Parcelable { method public boolean deduceRestrictedCapability(); method @NonNull public int[] getTransportTypes(); method @NonNull public int[] getTransportTypes(); method public boolean satisfiedByNetworkCapabilities(@Nullable android.net.NetworkCapabilities); method public boolean satisfiedByNetworkCapabilities(@Nullable android.net.NetworkCapabilities); method @NonNull public android.net.NetworkCapabilities setSSID(@Nullable String); method @NonNull public android.net.NetworkCapabilities setSSID(@Nullable String); Loading
core/java/android/net/NetworkCapabilities.java +16 −8 Original line number Original line Diff line number Diff line Loading @@ -587,15 +587,14 @@ public final class NetworkCapabilities implements Parcelable { } } /** /** * Removes the NET_CAPABILITY_NOT_RESTRICTED capability if all the capabilities it provides are * Deduces that all the capabilities it provides are typically provided by restricted networks * typically provided by restricted networks. * or not. * * * TODO: consider: * @return {@code true} if the network should be restricted. * - Renaming it to guessRestrictedCapability and make it set the * restricted capability bit in addition to clearing it. * @hide * @hide */ */ public void maybeMarkCapabilitiesRestricted() { @SystemApi public boolean deduceRestrictedCapability() { // Check if we have any capability that forces the network to be restricted. // Check if we have any capability that forces the network to be restricted. final boolean forceRestrictedCapability = final boolean forceRestrictedCapability = (mNetworkCapabilities & FORCE_RESTRICTED_CAPABILITIES) != 0; (mNetworkCapabilities & FORCE_RESTRICTED_CAPABILITIES) != 0; Loading @@ -609,8 +608,17 @@ public final class NetworkCapabilities implements Parcelable { final boolean hasRestrictedCapabilities = final boolean hasRestrictedCapabilities = (mNetworkCapabilities & RESTRICTED_CAPABILITIES) != 0; (mNetworkCapabilities & RESTRICTED_CAPABILITIES) != 0; if (forceRestrictedCapability return forceRestrictedCapability || (hasRestrictedCapabilities && !hasUnrestrictedCapabilities)) { || (hasRestrictedCapabilities && !hasUnrestrictedCapabilities); } /** * Removes the NET_CAPABILITY_NOT_RESTRICTED capability if deducing the network is restricted. * * @hide */ public void maybeMarkCapabilitiesRestricted() { if (deduceRestrictedCapability()) { removeCapability(NET_CAPABILITY_NOT_RESTRICTED); removeCapability(NET_CAPABILITY_NOT_RESTRICTED); } } } } Loading