blob: 0266ea9ac14b13ad644dca859cedb34af9ad6aca [file] [log] [blame]
Remi NGUYEN VANbe179102021-01-28 13:37:03 +09001// 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 {
Chiachang Wang4d513572021-03-18 09:44:34 +08009 method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public void factoryReset();
junyulaiebd15162021-03-03 12:09:05 +080010 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> getAllNetworkStateSnapshot();
Chiachang Wang4d513572021-03-18 09:44:34 +080011 method @Nullable public android.net.ProxyInfo getGlobalProxy();
lucaslin30e70a82021-03-12 00:46:33 +080012 method @NonNull public static android.util.Range<java.lang.Integer> getIpSecNetIdRange();
lucaslin20f04882021-03-16 17:11:14 +080013 method @NonNull public static String getPrivateDnsMode(@NonNull android.content.Context);
Lorenzo Colitti92ed8b92021-03-22 18:23:21 +090014 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void registerDefaultNetworkCallbackAsUid(int, @NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
Remi NGUYEN VANbe179102021-01-28 13:37:03 +090015 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void registerSystemDefaultNetworkCallback(@NonNull android.net.ConnectivityManager.NetworkCallback, @NonNull android.os.Handler);
junyulai962bdb82021-03-09 20:49:48 +080016 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.os.Handler, @NonNull android.net.ConnectivityManager.NetworkCallback);
lucasline257bce2021-03-22 11:51:27 +080017 method @Deprecated public boolean requestRouteToHostAddress(int, java.net.InetAddress);
Chiachang Wang4d513572021-03-18 09:44:34 +080018 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);
19 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);
20 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);
21 method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setGlobalProxy(@Nullable android.net.ProxyInfo);
lucasline257bce2021-03-22 11:51:27 +080022 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setLegacyLockdownVpnEnabled(boolean);
paulhu89a762a2021-03-25 12:36:56 +080023 method public static void setPrivateDnsMode(@NonNull android.content.Context, @NonNull String);
Chalard Jean6010c002021-03-03 16:37:13 +090024 method @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public void setProfileNetworkPreference(@NonNull android.os.UserHandle, int, @Nullable java.util.concurrent.Executor, @Nullable Runnable);
lucasline257bce2021-03-22 11:51:27 +080025 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>>);
Remi NGUYEN VANbe179102021-01-28 13:37:03 +090026 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);
Remi NGUYEN VAN4cf96ab2021-03-16 18:06:06 +090027 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);
lucaslin7fc930b2021-03-17 14:16:01 +080028 method public void systemReady();
Sudheer Shanka98215562021-03-23 08:12:28 +000029 field public static final int BLOCKED_METERED_REASON_ADMIN_DISABLED = 262144; // 0x40000
30 field public static final int BLOCKED_METERED_REASON_DATA_SAVER = 65536; // 0x10000
31 field public static final int BLOCKED_METERED_REASON_USER_RESTRICTED = 131072; // 0x20000
32 field public static final int BLOCKED_REASON_APP_STANDBY = 4; // 0x4
33 field public static final int BLOCKED_REASON_BATTERY_SAVER = 1; // 0x1
34 field public static final int BLOCKED_REASON_DOZE = 2; // 0x2
35 field public static final int BLOCKED_REASON_NONE = 0; // 0x0
36 field public static final int BLOCKED_REASON_RESTRICTED_MODE = 8; // 0x8
lucaslin705c3332021-03-12 17:56:09 +080037 field public static final String PRIVATE_DNS_MODE_OFF = "off";
38 field public static final String PRIVATE_DNS_MODE_OPPORTUNISTIC = "opportunistic";
39 field public static final String PRIVATE_DNS_MODE_PROVIDER_HOSTNAME = "hostname";
Chalard Jeanb43f3962021-03-17 14:33:24 +090040 field public static final int PROFILE_NETWORK_PREFERENCE_DEFAULT = 0; // 0x0
41 field public static final int PROFILE_NETWORK_PREFERENCE_ENTERPRISE = 1; // 0x1
Remi NGUYEN VANbe179102021-01-28 13:37:03 +090042 }
43
paulhu58d9a352021-03-23 00:24:50 +080044 public class ConnectivitySettingsManager {
45 method public static void clearGlobalProxy(@NonNull android.content.Context);
46 method @Nullable public static String getCaptivePortalHttpUrl(@NonNull android.content.Context);
47 method public static int getCaptivePortalMode(@NonNull android.content.Context, int);
48 method @NonNull public static java.time.Duration getConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
49 method @NonNull public static android.util.Range<java.lang.Integer> getDnsResolverSampleRanges(@NonNull android.content.Context);
50 method @NonNull public static java.time.Duration getDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
51 method public static int getDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, int);
52 method @Nullable public static android.net.ProxyInfo getGlobalProxy(@NonNull android.content.Context);
53 method @NonNull public static java.time.Duration getMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
54 method public static boolean getMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
paulhu5082bf72021-03-25 13:17:58 +080055 method @Nullable public static String getMobileDataPreferredApps(@NonNull android.content.Context);
paulhu58d9a352021-03-23 00:24:50 +080056 method public static int getNetworkAvoidBadWifi(@NonNull android.content.Context);
57 method @Nullable public static String getNetworkMeteredMultipathPreference(@NonNull android.content.Context);
58 method public static int getNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, int);
59 method @NonNull public static java.time.Duration getNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
60 method @NonNull public static String getPrivateDnsDefaultMode(@NonNull android.content.Context);
61 method @Nullable public static String getPrivateDnsHostname(@NonNull android.content.Context);
62 method public static boolean getWifiAlwaysRequested(@NonNull android.content.Context, boolean);
63 method @NonNull public static java.time.Duration getWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
64 method public static void setCaptivePortalHttpUrl(@NonNull android.content.Context, @Nullable String);
65 method public static void setCaptivePortalMode(@NonNull android.content.Context, int);
66 method public static void setConnectivityKeepPendingIntentDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
67 method public static void setDnsResolverSampleRanges(@NonNull android.content.Context, @NonNull android.util.Range<java.lang.Integer>);
68 method public static void setDnsResolverSampleValidityDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
69 method public static void setDnsResolverSuccessThresholdPercent(@NonNull android.content.Context, @IntRange(from=0, to=100) int);
70 method public static void setGlobalProxy(@NonNull android.content.Context, @NonNull android.net.ProxyInfo);
71 method public static void setMobileDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
72 method public static void setMobileDataAlwaysOn(@NonNull android.content.Context, boolean);
paulhu5082bf72021-03-25 13:17:58 +080073 method public static void setMobileDataPreferredApps(@NonNull android.content.Context, @Nullable String);
paulhu58d9a352021-03-23 00:24:50 +080074 method public static void setNetworkAvoidBadWifi(@NonNull android.content.Context, int);
75 method public static void setNetworkMeteredMultipathPreference(@NonNull android.content.Context, @NonNull String);
76 method public static void setNetworkSwitchNotificationMaximumDailyCount(@NonNull android.content.Context, @IntRange(from=0) int);
77 method public static void setNetworkSwitchNotificationRateDuration(@NonNull android.content.Context, @NonNull java.time.Duration);
78 method public static void setPrivateDnsDefaultMode(@NonNull android.content.Context, @NonNull String);
79 method public static void setPrivateDnsHostname(@NonNull android.content.Context, @Nullable String);
80 method public static void setWifiAlwaysRequested(@NonNull android.content.Context, boolean);
81 method public static void setWifiDataActivityTimeout(@NonNull android.content.Context, @NonNull java.time.Duration);
82 field public static final int CAPTIVE_PORTAL_MODE_AVOID = 2; // 0x2
83 field public static final int CAPTIVE_PORTAL_MODE_IGNORE = 0; // 0x0
84 field public static final int CAPTIVE_PORTAL_MODE_PROMPT = 1; // 0x1
85 field public static final int NETWORK_AVOID_BAD_WIFI_AVOID = 2; // 0x2
86 field public static final int NETWORK_AVOID_BAD_WIFI_IGNORE = 0; // 0x0
87 field public static final int NETWORK_AVOID_BAD_WIFI_PROMPT = 1; // 0x1
88 }
89
Remi NGUYEN VANbe179102021-01-28 13:37:03 +090090 public final class NetworkAgentConfig implements android.os.Parcelable {
91 method @Nullable public String getSubscriberId();
lucaslincdfe0262021-03-22 15:07:41 +080092 method public boolean isBypassableVpn();
Remi NGUYEN VANbe179102021-01-28 13:37:03 +090093 }
94
95 public static final class NetworkAgentConfig.Builder {
lucaslincdfe0262021-03-22 15:07:41 +080096 method @NonNull public android.net.NetworkAgentConfig.Builder setBypassableVpn(boolean);
Remi NGUYEN VANbe179102021-01-28 13:37:03 +090097 method @NonNull public android.net.NetworkAgentConfig.Builder setSubscriberId(@Nullable String);
98 }
99
100 public final class NetworkCapabilities implements android.os.Parcelable {
Roshan Pius98f59ec2021-02-23 08:47:39 -0800101 ctor public NetworkCapabilities(@Nullable android.net.NetworkCapabilities, long);
Chiachang Wangc2ea3ab2021-03-19 00:45:39 +0000102 method @Nullable public java.util.Set<android.util.Range<java.lang.Integer>> getUids();
junyulai24efbfd2021-03-16 10:24:43 +0800103 method public boolean hasUnwantedCapability(int);
Roshan Pius98f59ec2021-02-23 08:47:39 -0800104 field public static final long REDACT_ALL = -1L; // 0xffffffffffffffffL
105 field public static final long REDACT_FOR_ACCESS_FINE_LOCATION = 1L; // 0x1L
106 field public static final long REDACT_FOR_LOCAL_MAC_ADDRESS = 2L; // 0x2L
107 field public static final long REDACT_FOR_NETWORK_SETTINGS = 4L; // 0x4L
108 field public static final long REDACT_NONE = 0L; // 0x0L
Remi NGUYEN VANbe179102021-01-28 13:37:03 +0900109 field public static final int TRANSPORT_TEST = 7; // 0x7
110 }
111
Chiachang Wangc2ea3ab2021-03-19 00:45:39 +0000112 public static final class NetworkCapabilities.Builder {
113 method @NonNull public android.net.NetworkCapabilities.Builder setUids(@Nullable java.util.Set<android.util.Range<java.lang.Integer>>);
114 }
115
junyulai24efbfd2021-03-16 10:24:43 +0800116 public class NetworkRequest implements android.os.Parcelable {
117 method public boolean hasUnwantedCapability(int);
118 }
119
Chiachang Wangc2ea3ab2021-03-19 00:45:39 +0000120 public static class NetworkRequest.Builder {
junyulai24efbfd2021-03-16 10:24:43 +0800121 method @NonNull public android.net.NetworkRequest.Builder addUnwantedCapability(int);
122 method @NonNull public android.net.NetworkRequest.Builder removeUnwantedCapability(int);
Chiachang Wangc2ea3ab2021-03-19 00:45:39 +0000123 method @NonNull public android.net.NetworkRequest.Builder setUids(@Nullable java.util.Set<android.util.Range<java.lang.Integer>>);
124 }
125
Remi NGUYEN VAN94e5fff2021-03-15 10:20:40 +0900126 public class ParseException extends java.lang.RuntimeException {
127 ctor public ParseException(@NonNull String);
128 ctor public ParseException(@NonNull String, @NonNull Throwable);
129 }
130
Remi NGUYEN VANbe179102021-01-28 13:37:03 +0900131 public final class TcpRepairWindow {
132 ctor public TcpRepairWindow(int, int, int, int, int, int);
133 field public final int maxWindow;
134 field public final int rcvWnd;
135 field public final int rcvWndScale;
136 field public final int rcvWup;
137 field public final int sndWl1;
138 field public final int sndWnd;
139 }
140
141 public final class TestNetworkInterface implements android.os.Parcelable {
142 ctor public TestNetworkInterface(@NonNull android.os.ParcelFileDescriptor, @NonNull String);
143 method public int describeContents();
144 method @NonNull public android.os.ParcelFileDescriptor getFileDescriptor();
145 method @NonNull public String getInterfaceName();
146 method public void writeToParcel(@NonNull android.os.Parcel, int);
147 field @NonNull public static final android.os.Parcelable.Creator<android.net.TestNetworkInterface> CREATOR;
148 }
149
150 public class TestNetworkManager {
151 method @NonNull public android.net.TestNetworkInterface createTapInterface();
152 method @NonNull public android.net.TestNetworkInterface createTunInterface(@NonNull java.util.Collection<android.net.LinkAddress>);
153 method public void setupTestNetwork(@NonNull String, @NonNull android.os.IBinder);
154 method public void teardownTestNetwork(@NonNull android.net.Network);
155 field public static final String TEST_TAP_PREFIX = "testtap";
156 }
157
Remi NGUYEN VAN57c9cc22021-02-04 14:20:19 +0900158 public final class TestNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
159 ctor public TestNetworkSpecifier(@NonNull String);
160 method public int describeContents();
161 method @Nullable public String getInterfaceName();
162 method public void writeToParcel(@NonNull android.os.Parcel, int);
163 field @NonNull public static final android.os.Parcelable.Creator<android.net.TestNetworkSpecifier> CREATOR;
164 }
165
Roshan Pius98f59ec2021-02-23 08:47:39 -0800166 public interface TransportInfo {
167 method public default long getApplicableRedactions();
168 method @NonNull public default android.net.TransportInfo makeCopy(long);
169 }
170
Remi NGUYEN VANbe179102021-01-28 13:37:03 +0900171 public final class VpnTransportInfo implements android.os.Parcelable android.net.TransportInfo {
172 ctor public VpnTransportInfo(int);
173 method public int describeContents();
174 method public void writeToParcel(@NonNull android.os.Parcel, int);
175 field @NonNull public static final android.os.Parcelable.Creator<android.net.VpnTransportInfo> CREATOR;
176 field public final int type;
177 }
178
179}
180