From d9e35a3f1b6c32b05d5fc3ba8876aa8a11d05698 Mon Sep 17 00:00:00 2001 From: Sarah Chin Date: Mon, 22 Mar 2021 13:52:46 -0700 Subject: [PATCH] API to get network visible network capability name Test: atest DataConnectionTest, DcTrackerTest Bug: 181916712 CTS-Coverage-Bug: 183553812 Change-Id: Iae63ac4d62641cee2bd0f0c5f50dd729750d514c Merged-In: Iae63ac4d62641cee2bd0f0c5f50dd729750d514c --- framework/api/system-current.txt | 1 + .../src/android/net/NetworkCapabilities.java | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/framework/api/system-current.txt b/framework/api/system-current.txt index 8e6e846240..997bf6a1e6 100644 --- a/framework/api/system-current.txt +++ b/framework/api/system-current.txt @@ -264,6 +264,7 @@ package android.net { public final class NetworkCapabilities implements android.os.Parcelable { method @NonNull public int[] getAdministratorUids(); + method @Nullable public static String getCapabilityCarrierName(int); method @Nullable public String getSsid(); method @NonNull public int[] getTransportTypes(); method public boolean isPrivateDnsBroken(); diff --git a/framework/src/android/net/NetworkCapabilities.java b/framework/src/android/net/NetworkCapabilities.java index 881fa8c270..76208648aa 100644 --- a/framework/src/android/net/NetworkCapabilities.java +++ b/framework/src/android/net/NetworkCapabilities.java @@ -749,6 +749,23 @@ public final class NetworkCapabilities implements Parcelable { return ((mNetworkCapabilities & CONNECTIVITY_MANAGED_CAPABILITIES) != 0); } + /** + * Get the name of the given capability that carriers use. + * If the capability does not have a carrier-name, returns null. + * + * @param capability The capability to get the carrier-name of. + * @return The carrier-name of the capability, or null if it doesn't exist. + * @hide + */ + @SystemApi + public static @Nullable String getCapabilityCarrierName(@NetCapability int capability) { + if (capability == NET_CAPABILITY_ENTERPRISE) { + return capabilityNameOf(capability); + } else { + return null; + } + } + private void combineNetCapabilities(@NonNull NetworkCapabilities nc) { final long wantedCaps = this.mNetworkCapabilities | nc.mNetworkCapabilities; final long unwantedCaps =