1// Signature format: 2.0
2package android.net {
3
4  public final class ConnectivityFrameworkInitializer {
5    method public static void registerServiceWrappers();
6  }
7
8  public class ConnectivityManager {
9    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void addUidToMeteredNetworkAllowList(int);
10    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void addUidToMeteredNetworkDenyList(int);
11    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void factoryReset();
12    method @NonNull @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public java.util.List<android.net.NetworkStateSnapshot> getAllNetworkStateSnapshots();
13    method @Nullable public android.net.ProxyInfo getGlobalProxy();
14    method @NonNull public static android.util.Range<java.lang.Integer> getIpSecNetIdRange();
15    method @Nullable @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public android.net.LinkProperties getRedactedLinkPropertiesForPackage(@NonNull android.net.LinkProperties, int, @NonNull String);
16    method @Nullable @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public android.net.NetworkCapabilities getRedactedNetworkCapabilitiesForPackage(@NonNull android.net.NetworkCapabilities, int, @NonNull String);
17    method @FlaggedApi("com.android.net.flags.support_is_uid_networking_blocked") @RequiresPermission(android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public boolean isUidNetworkingBlocked(int, boolean);
18    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void registerDefaultNetworkCallbackForUid(int, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
19    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS}) public void registerSystemDefaultNetworkCallback(@NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
20    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void removeUidFromMeteredNetworkAllowList(int);
21    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void removeUidFromMeteredNetworkDenyList(int);
22    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void replaceFirewallChain(int, @NonNull int[]);
23    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void requestBackgroundNetwork(@NonNull android.net.NetworkRequest, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
24    method @Deprecated public boolean requestRouteToHostAddress(int, java.net.InetAddress);
25    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setAcceptPartialConnectivity(@NonNull android.net.Network, boolean, boolean);
26    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setAcceptUnvalidated(@NonNull android.net.Network, boolean, boolean);
27    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setAvoidUnvalidated(@NonNull android.net.Network);
28    method @FlaggedApi("com.android.net.flags.set_data_saver_via_cm") @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setDataSaverEnabled(boolean);
29    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setFirewallChainEnabled(int, boolean);
30    method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setGlobalProxy(@Nullable android.net.ProxyInfo);
31    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setLegacyLockdownVpnEnabled(boolean);
32    method @Deprecated @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setProfileNetworkPreference(@NonNull android.os.UserHandle, int, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
33    method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setProfileNetworkPreferences(@NonNull android.os.UserHandle, @NonNull java.util.List<android.net.ProfileNetworkPreference>, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
34    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setRequireVpnForUids(boolean, @NonNull java.util.Collection<android.util.Range<java.lang.Integer>>);
35    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void setUidFirewallRule(int, int, int);
36    method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setVpnDefaultForUids(@NonNull String, @NonNull java.util.Collection<android.util.Range<java.lang.Integer>>);
37    method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_TEST_NETWORKS, android.Manifest.permission.NETWORK_STACK}) public void simulateDataStall(int, long, @NonNull android.net.Network, @NonNull android.os.PersistableBundle);
38    method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void startCaptivePortalApp(@NonNull android.net.Network);
39    method public void systemReady();
40    field public static final String ACTION_CLEAR_DNS_CACHE = "android.net.action.CLEAR_DNS_CACHE";
41    field public static final String ACTION_PROMPT_LOST_VALIDATION = "android.net.action.PROMPT_LOST_VALIDATION";
42    field public static final String ACTION_PROMPT_PARTIAL_CONNECTIVITY = "android.net.action.PROMPT_PARTIAL_CONNECTIVITY";
43    field public static final String ACTION_PROMPT_UNVALIDATED = "android.net.action.PROMPT_UNVALIDATED";
44    field public static final int BLOCKED_METERED_REASON_ADMIN_DISABLED = 262144; // 0x40000
45    field public static final int BLOCKED_METERED_REASON_DATA_SAVER = 65536; // 0x10000
46    field public static final int BLOCKED_METERED_REASON_MASK = -65536; // 0xffff0000
47    field public static final int BLOCKED_METERED_REASON_USER_RESTRICTED = 131072; // 0x20000
48    field @FlaggedApi("com.android.net.flags.basic_background_restrictions_enabled") public static final int BLOCKED_REASON_APP_BACKGROUND = 64; // 0x40
49    field public static final int BLOCKED_REASON_APP_STANDBY = 4; // 0x4
50    field public static final int BLOCKED_REASON_BATTERY_SAVER = 1; // 0x1
51    field public static final int BLOCKED_REASON_DOZE = 2; // 0x2
52    field public static final int BLOCKED_REASON_LOCKDOWN_VPN = 16; // 0x10
53    field public static final int BLOCKED_REASON_LOW_POWER_STANDBY = 32; // 0x20
54    field @FlaggedApi("com.android.net.flags.blocked_reason_network_restricted") public static final int BLOCKED_REASON_NETWORK_RESTRICTED = 256; // 0x100
55    field public static final int BLOCKED_REASON_NONE = 0; // 0x0
56    field @FlaggedApi("com.android.net.flags.blocked_reason_oem_deny_chains") public static final int BLOCKED_REASON_OEM_DENY = 128; // 0x80
57    field public static final int BLOCKED_REASON_RESTRICTED_MODE = 8; // 0x8
58    field @FlaggedApi("com.android.net.flags.basic_background_restrictions_enabled") public static final int FIREWALL_CHAIN_BACKGROUND = 6; // 0x6
59    field public static final int FIREWALL_CHAIN_DOZABLE = 1; // 0x1
60    field public static final int FIREWALL_CHAIN_LOW_POWER_STANDBY = 5; // 0x5
61    field @FlaggedApi("com.android.net.flags.metered_network_firewall_chains") public static final int FIREWALL_CHAIN_METERED_ALLOW = 10; // 0xa
62    field @FlaggedApi("com.android.net.flags.metered_network_firewall_chains") public static final int FIREWALL_CHAIN_METERED_DENY_ADMIN = 12; // 0xc
63    field @FlaggedApi("com.android.net.flags.metered_network_firewall_chains") public static final int FIREWALL_CHAIN_METERED_DENY_USER = 11; // 0xb
64    field public static final int FIREWALL_CHAIN_OEM_DENY_1 = 7; // 0x7
65    field public static final int FIREWALL_CHAIN_OEM_DENY_2 = 8; // 0x8
66    field public static final int FIREWALL_CHAIN_OEM_DENY_3 = 9; // 0x9
67    field public static final int FIREWALL_CHAIN_POWERSAVE = 3; // 0x3
68    field public static final int FIREWALL_CHAIN_RESTRICTED = 4; // 0x4
69    field public static final int FIREWALL_CHAIN_STANDBY = 2; // 0x2
70    field public static final int FIREWALL_RULE_ALLOW = 1; // 0x1
71    field public static final int FIREWALL_RULE_DEFAULT = 0; // 0x0
72    field public static final int FIREWALL_RULE_DENY = 2; // 0x2
73    field public static final int PROFILE_NETWORK_PREFERENCE_DEFAULT = 0; // 0x0
74    field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE = 1; // 0x1
75    field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE_BLOCKING = 3; // 0x3
76    field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE_NO_FALLBACK = 2; // 0x2
77  }
78
79  public static class ConnectivityManager.NetworkCallback {
80    method public void onBlockedStatusChanged(@NonNull android.net.Network, int);
81  }
82
83  public class ConnectivitySettingsManager {
84    method public static void clearGlobalProxy(@NonNull android.content.Context);
85    method @Nullable public static String getCaptivePortalHttpUrl(@NonNull android.content.Context);
86    method public static int getCaptivePortalMode(@NonNull android.content.Context, int);
87    method @NonNull public static java.time.Duration getConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
88    method @NonNull public static android.util.Range<java.lang.Integer> getDnsResolverSampleRanges(@NonNull android.content.Context);
89    method @NonNull public static java.time.Duration getDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
90    method public static int getDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, int);
91    method @Nullable public static android.net.ProxyInfo getGlobalProxy(@NonNull android.content.Context);
92    method public static long getIngressRateLimitInBytesPerSecond(@NonNull android.content.Context);
93    method @NonNull public static java.time.Duration getMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
94    method public static boolean getMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
95    method @NonNull public static java.util.Set<java.lang.Integer> getMobileDataPreferredUids(@NonNull android.content.Context);
96    method public static int getNetworkAvoidBadWifi(@NonNull android.content.Context);
97    method @Nullable public static String getNetworkMeteredMultipathPreference(@NonNull android.content.Context);
98    method public static int getNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, int);
99    method @NonNull public static java.time.Duration getNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
100    method @NonNull public static String getPrivateDnsDefaultMode(@NonNull android.content.Context);
101    method @Nullable public static String getPrivateDnsHostname(@NonNull android.content.Context);
102    method public static int getPrivateDnsMode(@NonNull android.content.Context);
103    method @NonNull public static java.util.Set<java.lang.Integer> getUidsAllowedOnRestrictedNetworks(@NonNull android.content.Context);
104    method public static boolean getWifiAlwaysRequested(@NonNull android.content.Context, boolean);
105    method @NonNull public static java.time.Duration getWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
106    method public static void setCaptivePortalHttpUrl(@NonNull android.content.Context, @Nullable String);
107    method public static void setCaptivePortalMode(@NonNull android.content.Context, int);
108    method public static void setConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
109    method public static void setDnsResolverSampleRanges(@NonNull android.content.Context, @NonNull android.util.Range<java.lang.Integer>);
110    method public static void setDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
111    method public static void setDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, @IntRange(from=0, to=100) int);
112    method public static void setGlobalProxy(@NonNull android.content.Context, @NonNull android.net.ProxyInfo);
113    method public static void setIngressRateLimitInBytesPerSecond(@NonNull android.content.Context, @IntRange(from=-1L, to=4294967295L) long);
114    method public static void setMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
115    method public static void setMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
116    method public static void setMobileDataPreferredUids(@NonNull android.content.Context, @NonNull java.util.Set<java.lang.Integer>);
117    method public static void setNetworkAvoidBadWifi(@NonNull android.content.Context, int);
118    method public static void setNetworkMeteredMultipathPreference(@NonNull android.content.Context, @NonNull String);
119    method public static void setNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, @IntRange(from=0) int);
120    method public static void setNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
121    method public static void setPrivateDnsDefaultMode(@NonNull android.content.Context, @NonNull int);
122    method public static void setPrivateDnsHostname(@NonNull android.content.Context, @Nullable String);
123    method public static void setPrivateDnsMode(@NonNull android.content.Context, int);
124    method public static void setUidsAllowedOnRestrictedNetworks(@NonNull android.content.Context, @NonNull java.util.Set<java.lang.Integer>);
125    method public static void setWifiAlwaysRequested(@NonNull android.content.Context, boolean);
126    method public static void setWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
127    field public static final int CAPTIVE_PORTAL_MODE_AVOID = 2; // 0x2
128    field public static final int CAPTIVE_PORTAL_MODE_IGNORE = 0; // 0x0
129    field public static final int CAPTIVE_PORTAL_MODE_PROMPT = 1; // 0x1
130    field public static final int NETWORK_AVOID_BAD_WIFI_AVOID = 2; // 0x2
131    field public static final int NETWORK_AVOID_BAD_WIFI_IGNORE = 0; // 0x0
132    field public static final int NETWORK_AVOID_BAD_WIFI_PROMPT = 1; // 0x1
133    field public static final int PRIVATE_DNS_MODE_OFF = 1; // 0x1
134    field public static final int PRIVATE_DNS_MODE_OPPORTUNISTIC = 2; // 0x2
135    field public static final int PRIVATE_DNS_MODE_PROVIDER_HOSTNAME = 3; // 0x3
136  }
137
138  public final class DhcpOption implements android.os.Parcelable {
139    ctor public DhcpOption(byte, @Nullable byte[]);
140    method public int describeContents();
141    method public byte getType();
142    method @Nullable public byte[] getValue();
143    method public void writeToParcel(@NonNull android.os.Parcel, int);
144    field @NonNull public static final android.os.Parcelable.Creator<android.net.DhcpOption> CREATOR;
145  }
146
147  public final class NetworkAgentConfig implements android.os.Parcelable {
148    method @Nullable public String getSubscriberId();
149    method public boolean isBypassableVpn();
150    method public boolean isVpnValidationRequired();
151  }
152
153  public static final class NetworkAgentConfig.Builder {
154    method @NonNull public android.net.NetworkAgentConfig.Builder setBypassableVpn(boolean);
155    method @NonNull public android.net.NetworkAgentConfig.Builder setLocalRoutesExcludedForVpn(boolean);
156    method @NonNull public android.net.NetworkAgentConfig.Builder setSubscriberId(@Nullable String);
157    method @NonNull public android.net.NetworkAgentConfig.Builder setVpnRequiresValidation(boolean);
158  }
159
160  public final class NetworkCapabilities implements android.os.Parcelable {
161    method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public java.util.Set<java.lang.Integer> getAllowedUids();
162    method @Nullable public java.util.Set<android.util.Range<java.lang.Integer>> getUids();
163    method public boolean hasForbiddenCapability(int);
164    field public static final long REDACT_ALL = -1L; // 0xffffffffffffffffL
165    field public static final long REDACT_FOR_ACCESS_FINE_LOCATION = 1L; // 0x1L
166    field public static final long REDACT_FOR_LOCAL_MAC_ADDRESS = 2L; // 0x2L
167    field public static final long REDACT_FOR_NETWORK_SETTINGS = 4L; // 0x4L
168    field public static final long REDACT_NONE = 0L; // 0x0L
169    field public static final int TRANSPORT_TEST = 7; // 0x7
170  }
171
172  public static final class NetworkCapabilities.Builder {
173    method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.NetworkCapabilities.Builder setAllowedUids(@NonNull java.util.Set<java.lang.Integer>);
174    method @NonNull public android.net.NetworkCapabilities.Builder setUids(@Nullable java.util.Set<android.util.Range<java.lang.Integer>>);
175  }
176
177  public class NetworkRequest implements android.os.Parcelable {
178    method @NonNull public int[] getEnterpriseIds();
179    method @NonNull public int[] getForbiddenCapabilities();
180    method public boolean hasEnterpriseId(int);
181    method public boolean hasForbiddenCapability(int);
182  }
183
184  public static class NetworkRequest.Builder {
185    method @NonNull public android.net.NetworkRequest.Builder addForbiddenCapability(int);
186    method @NonNull public android.net.NetworkRequest.Builder removeForbiddenCapability(int);
187    method @NonNull public android.net.NetworkRequest.Builder setUids(@Nullable java.util.Set<android.util.Range<java.lang.Integer>>);
188  }
189
190  public final class ProfileNetworkPreference implements android.os.Parcelable {
191    method public int describeContents();
192    method @NonNull public int[] getExcludedUids();
193    method @NonNull public int[] getIncludedUids();
194    method public int getPreference();
195    method public int getPreferenceEnterpriseId();
196    method public void writeToParcel(@NonNull android.os.Parcel, int);
197    field @NonNull public static final android.os.Parcelable.Creator<android.net.ProfileNetworkPreference> CREATOR;
198  }
199
200  public static final class ProfileNetworkPreference.Builder {
201    ctor public ProfileNetworkPreference.Builder();
202    method @NonNull public android.net.ProfileNetworkPreference build();
203    method @NonNull public android.net.ProfileNetworkPreference.Builder setExcludedUids(@NonNull int[]);
204    method @NonNull public android.net.ProfileNetworkPreference.Builder setIncludedUids(@NonNull int[]);
205    method @NonNull public android.net.ProfileNetworkPreference.Builder setPreference(int);
206    method @NonNull public android.net.ProfileNetworkPreference.Builder setPreferenceEnterpriseId(int);
207  }
208
209  public final class TestNetworkInterface implements android.os.Parcelable {
210    ctor public TestNetworkInterface(@NonNull android.os.ParcelFileDescriptor, @NonNull String);
211    method public int describeContents();
212    method @NonNull public android.os.ParcelFileDescriptor getFileDescriptor();
213    method @NonNull public String getInterfaceName();
214    method @Nullable public android.net.MacAddress getMacAddress();
215    method public int getMtu();
216    method public void writeToParcel(@NonNull android.os.Parcel, int);
217    field @NonNull public static final android.os.Parcelable.Creator<android.net.TestNetworkInterface> CREATOR;
218  }
219
220  public class TestNetworkManager {
221    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public android.net.TestNetworkInterface createTapInterface();
222    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public android.net.TestNetworkInterface createTunInterface(@NonNull java.util.Collection<android.net.LinkAddress>);
223    method @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public void setupTestNetwork(@NonNull String, @NonNull android.os.IBinder);
224    method @RequiresPermission(android.Manifest.permission.MANAGE_TEST_NETWORKS) public void teardownTestNetwork(@NonNull android.net.Network);
225    field public static final String TEST_TAP_PREFIX = "testtap";
226  }
227
228  public final class TestNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
229    ctor public TestNetworkSpecifier(@NonNull String);
230    method public int describeContents();
231    method @Nullable public String getInterfaceName();
232    method public void writeToParcel(@NonNull android.os.Parcel, int);
233    field @NonNull public static final android.os.Parcelable.Creator<android.net.TestNetworkSpecifier> CREATOR;
234  }
235
236  public interface TransportInfo {
237    method public default long getApplicableRedactions();
238    method @NonNull public default android.net.TransportInfo makeCopy(long);
239  }
240
241  public final class VpnTransportInfo implements android.os.Parcelable android.net.TransportInfo {
242    ctor @Deprecated public VpnTransportInfo(int, @Nullable String);
243    method public long getApplicableRedactions();
244    method @Nullable public String getSessionId();
245    method @NonNull public android.net.VpnTransportInfo makeCopy(long);
246  }
247
248}
249
250