blob: 44be9fe0e5e7da411169a0b1baacb31ecac63a9c [file] [log] [blame]
Anton Hansson180d9562020-01-17 19:03:34 +00001// Signature format: 2.0
2package android.net.wifi {
3
4 public abstract class EasyConnectStatusCallback {
5 field public static final int EASY_CONNECT_EVENT_FAILURE_AUTHENTICATION = -2; // 0xfffffffe
6 field public static final int EASY_CONNECT_EVENT_FAILURE_BUSY = -5; // 0xfffffffb
7 field public static final int EASY_CONNECT_EVENT_FAILURE_CANNOT_FIND_NETWORK = -10; // 0xfffffff6
8 field public static final int EASY_CONNECT_EVENT_FAILURE_CONFIGURATION = -4; // 0xfffffffc
9 field public static final int EASY_CONNECT_EVENT_FAILURE_ENROLLEE_AUTHENTICATION = -11; // 0xfffffff5
Sunil Ravib2863002021-01-28 08:52:18 -080010 field public static final int EASY_CONNECT_EVENT_FAILURE_ENROLLEE_FAILED_TO_SCAN_NETWORK_CHANNEL = -14; // 0xfffffff2
Anton Hansson180d9562020-01-17 19:03:34 +000011 field public static final int EASY_CONNECT_EVENT_FAILURE_ENROLLEE_REJECTED_CONFIGURATION = -12; // 0xfffffff4
12 field public static final int EASY_CONNECT_EVENT_FAILURE_GENERIC = -7; // 0xfffffff9
13 field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_NETWORK = -9; // 0xfffffff7
14 field public static final int EASY_CONNECT_EVENT_FAILURE_INVALID_URI = -1; // 0xffffffff
15 field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_COMPATIBLE = -3; // 0xfffffffd
16 field public static final int EASY_CONNECT_EVENT_FAILURE_NOT_SUPPORTED = -8; // 0xfffffff8
17 field public static final int EASY_CONNECT_EVENT_FAILURE_TIMEOUT = -6; // 0xfffffffa
Sunil Ravic16a0742020-11-03 15:14:09 -080018 field public static final int EASY_CONNECT_EVENT_FAILURE_URI_GENERATION = -13; // 0xfffffff3
Anton Hansson180d9562020-01-17 19:03:34 +000019 }
20
Michael Wrightd58fd392020-03-18 20:07:05 +000021 public final class ScanResult implements android.os.Parcelable {
Anton Hansson180d9562020-01-17 19:03:34 +000022 ctor public ScanResult(@NonNull android.net.wifi.ScanResult);
23 ctor public ScanResult();
leslcbf85f22021-03-18 10:28:16 +080024 method public static int convertChannelToFrequencyMhzIfSupported(int, int);
25 method public static int convertFrequencyMhzToChannelIfSupported(int);
Anton Hansson180d9562020-01-17 19:03:34 +000026 method public int describeContents();
27 method @NonNull public java.util.List<android.net.wifi.ScanResult.InformationElement> getInformationElements();
Quang Luong75335862021-08-10 15:28:36 -070028 method @NonNull public int[] getSecurityTypes();
Quang Luong38dc3ea2021-10-12 14:44:18 -070029 method @Nullable public android.net.wifi.WifiSsid getWifiSsid();
Anton Hansson180d9562020-01-17 19:03:34 +000030 method public int getWifiStandard();
31 method public boolean is80211mcResponder();
32 method public boolean isPasspointNetwork();
33 method public void writeToParcel(android.os.Parcel, int);
34 field public String BSSID;
35 field public static final int CHANNEL_WIDTH_160MHZ = 3; // 0x3
36 field public static final int CHANNEL_WIDTH_20MHZ = 0; // 0x0
37 field public static final int CHANNEL_WIDTH_40MHZ = 1; // 0x1
38 field public static final int CHANNEL_WIDTH_80MHZ = 2; // 0x2
39 field public static final int CHANNEL_WIDTH_80MHZ_PLUS_MHZ = 4; // 0x4
40 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.ScanResult> CREATOR;
Roy Want50deac12021-12-19 15:15:35 -080041 field public static final int PREAMBLE_HE = 3; // 0x3
42 field public static final int PREAMBLE_HT = 1; // 0x1
43 field public static final int PREAMBLE_LEGACY = 0; // 0x0
44 field public static final int PREAMBLE_VHT = 2; // 0x2
Quang Luong38dc3ea2021-10-12 14:44:18 -070045 field @Deprecated public String SSID;
lesl4c3ff122021-02-05 10:59:25 +080046 field public static final int UNSPECIFIED = -1; // 0xffffffff
47 field public static final int WIFI_BAND_24_GHZ = 1; // 0x1
48 field public static final int WIFI_BAND_5_GHZ = 2; // 0x2
49 field public static final int WIFI_BAND_60_GHZ = 16; // 0x10
50 field public static final int WIFI_BAND_6_GHZ = 8; // 0x8
Anton Hansson180d9562020-01-17 19:03:34 +000051 field public static final int WIFI_STANDARD_11AC = 5; // 0x5
Jimmy Chen6713cb02020-11-05 16:31:29 +080052 field public static final int WIFI_STANDARD_11AD = 7; // 0x7
Anton Hansson180d9562020-01-17 19:03:34 +000053 field public static final int WIFI_STANDARD_11AX = 6; // 0x6
54 field public static final int WIFI_STANDARD_11N = 4; // 0x4
55 field public static final int WIFI_STANDARD_LEGACY = 1; // 0x1
56 field public static final int WIFI_STANDARD_UNKNOWN = 0; // 0x0
57 field public String capabilities;
58 field public int centerFreq0;
59 field public int centerFreq1;
60 field public int channelWidth;
61 field public int frequency;
62 field public int level;
Hai Shalom29706142020-12-30 14:46:11 -080063 field @Deprecated public CharSequence operatorFriendlyName;
Anton Hansson180d9562020-01-17 19:03:34 +000064 field public long timestamp;
Hai Shalom29706142020-12-30 14:46:11 -080065 field @Deprecated public CharSequence venueName;
Anton Hansson180d9562020-01-17 19:03:34 +000066 }
67
Roshan Piusc610e1f2021-01-13 15:17:18 +000068 public static class ScanResult.InformationElement implements android.os.Parcelable {
Anton Hansson180d9562020-01-17 19:03:34 +000069 ctor public ScanResult.InformationElement(@NonNull android.net.wifi.ScanResult.InformationElement);
Roshan Piusc610e1f2021-01-13 15:17:18 +000070 method public int describeContents();
Anton Hansson180d9562020-01-17 19:03:34 +000071 method @NonNull public java.nio.ByteBuffer getBytes();
72 method public int getId();
73 method public int getIdExt();
Roshan Piusc610e1f2021-01-13 15:17:18 +000074 method public void writeToParcel(android.os.Parcel, int);
75 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.ScanResult.InformationElement> CREATOR;
Anton Hansson180d9562020-01-17 19:03:34 +000076 }
77
78 public final class SoftApConfiguration implements android.os.Parcelable {
79 method public int describeContents();
80 method @Nullable public android.net.MacAddress getBssid();
81 method @Nullable public String getPassphrase();
82 method public int getSecurityType();
Quang Luongfedab902021-10-05 15:15:51 -070083 method @Deprecated @Nullable public String getSsid();
84 method @Nullable public android.net.wifi.WifiSsid getWifiSsid();
Anton Hansson180d9562020-01-17 19:03:34 +000085 method public boolean isHiddenSsid();
86 method public void writeToParcel(@NonNull android.os.Parcel, int);
87 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.SoftApConfiguration> CREATOR;
88 field public static final int SECURITY_TYPE_OPEN = 0; // 0x0
89 field public static final int SECURITY_TYPE_WPA2_PSK = 1; // 0x1
90 field public static final int SECURITY_TYPE_WPA3_SAE = 3; // 0x3
91 field public static final int SECURITY_TYPE_WPA3_SAE_TRANSITION = 2; // 0x2
92 }
93
94 public enum SupplicantState implements android.os.Parcelable {
95 method public int describeContents();
96 method public static boolean isValidState(android.net.wifi.SupplicantState);
97 method public void writeToParcel(android.os.Parcel, int);
98 enum_constant public static final android.net.wifi.SupplicantState ASSOCIATED;
99 enum_constant public static final android.net.wifi.SupplicantState ASSOCIATING;
100 enum_constant public static final android.net.wifi.SupplicantState AUTHENTICATING;
101 enum_constant public static final android.net.wifi.SupplicantState COMPLETED;
102 enum_constant public static final android.net.wifi.SupplicantState DISCONNECTED;
103 enum_constant public static final android.net.wifi.SupplicantState DORMANT;
104 enum_constant public static final android.net.wifi.SupplicantState FOUR_WAY_HANDSHAKE;
105 enum_constant public static final android.net.wifi.SupplicantState GROUP_HANDSHAKE;
106 enum_constant public static final android.net.wifi.SupplicantState INACTIVE;
107 enum_constant public static final android.net.wifi.SupplicantState INTERFACE_DISABLED;
108 enum_constant public static final android.net.wifi.SupplicantState INVALID;
109 enum_constant public static final android.net.wifi.SupplicantState SCANNING;
110 enum_constant public static final android.net.wifi.SupplicantState UNINITIALIZED;
111 }
112
113 @Deprecated public class WifiConfiguration implements android.os.Parcelable {
114 ctor @Deprecated public WifiConfiguration();
115 ctor @Deprecated public WifiConfiguration(@NonNull android.net.wifi.WifiConfiguration);
116 method public int describeContents();
117 method @Deprecated public android.net.ProxyInfo getHttpProxy();
118 method @Deprecated @NonNull public String getKey();
Stephanie Bak1ccc1bc2021-12-30 05:13:38 +0000119 method @Deprecated public int getMacRandomizationSetting();
Anton Hansson180d9562020-01-17 19:03:34 +0000120 method @Deprecated @NonNull public android.net.MacAddress getRandomizedMacAddress();
121 method @Deprecated public boolean isPasspoint();
122 method @Deprecated public void setHttpProxy(android.net.ProxyInfo);
Stephanie Bak1ccc1bc2021-12-30 05:13:38 +0000123 method @Deprecated public void setMacRandomizationSetting(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000124 method @Deprecated public void setSecurityParams(int);
125 method public void writeToParcel(android.os.Parcel, int);
126 field @Deprecated public String BSSID;
127 field @Deprecated public String FQDN;
Stephanie Bak1ccc1bc2021-12-30 05:13:38 +0000128 field @Deprecated public static final int RANDOMIZATION_AUTO = 3; // 0x3
129 field @Deprecated public static final int RANDOMIZATION_NONE = 0; // 0x0
130 field @Deprecated public static final int RANDOMIZATION_NON_PERSISTENT = 2; // 0x2
131 field @Deprecated public static final int RANDOMIZATION_PERSISTENT = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +0000132 field @Deprecated public static final int SECURITY_TYPE_EAP = 3; // 0x3
133 field @Deprecated public static final int SECURITY_TYPE_EAP_SUITE_B = 5; // 0x5
Jimmy Chen74b574b2020-10-20 16:15:46 +0800134 field @Deprecated public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE = 9; // 0x9
Jimmy Chenf88f4392020-11-03 15:10:18 +0800135 field @Deprecated public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT = 5; // 0x5
Anton Hansson180d9562020-01-17 19:03:34 +0000136 field @Deprecated public static final int SECURITY_TYPE_OPEN = 0; // 0x0
137 field @Deprecated public static final int SECURITY_TYPE_OWE = 6; // 0x6
138 field @Deprecated public static final int SECURITY_TYPE_PSK = 2; // 0x2
139 field @Deprecated public static final int SECURITY_TYPE_SAE = 4; // 0x4
140 field @Deprecated public static final int SECURITY_TYPE_WAPI_CERT = 8; // 0x8
141 field @Deprecated public static final int SECURITY_TYPE_WAPI_PSK = 7; // 0x7
142 field @Deprecated public static final int SECURITY_TYPE_WEP = 1; // 0x1
143 field @Deprecated public String SSID;
144 field @Deprecated @NonNull public java.util.BitSet allowedAuthAlgorithms;
145 field @Deprecated @NonNull public java.util.BitSet allowedGroupCiphers;
146 field @Deprecated @NonNull public java.util.BitSet allowedGroupManagementCiphers;
147 field @Deprecated @NonNull public java.util.BitSet allowedKeyManagement;
148 field @Deprecated @NonNull public java.util.BitSet allowedPairwiseCiphers;
149 field @Deprecated @NonNull public java.util.BitSet allowedProtocols;
150 field @Deprecated @NonNull public java.util.BitSet allowedSuiteBCiphers;
151 field @Deprecated public android.net.wifi.WifiEnterpriseConfig enterpriseConfig;
152 field @Deprecated public boolean hiddenSSID;
153 field @Deprecated public boolean isHomeProviderNetwork;
154 field @Deprecated public int networkId;
155 field @Deprecated public String preSharedKey;
156 field @Deprecated public int priority;
157 field @Deprecated public String providerFriendlyName;
158 field @Deprecated public long[] roamingConsortiumIds;
159 field @Deprecated public int status;
160 field @Deprecated public String[] wepKeys;
161 field @Deprecated public int wepTxKeyIndex;
162 }
163
164 @Deprecated public static class WifiConfiguration.AuthAlgorithm {
165 field @Deprecated public static final int LEAP = 2; // 0x2
166 field @Deprecated public static final int OPEN = 0; // 0x0
167 field @Deprecated public static final int SAE = 3; // 0x3
168 field @Deprecated public static final int SHARED = 1; // 0x1
169 field @Deprecated public static final String[] strings;
170 field @Deprecated public static final String varName = "auth_alg";
171 }
172
173 @Deprecated public static class WifiConfiguration.GroupCipher {
174 field @Deprecated public static final int CCMP = 3; // 0x3
Jimmy Chendf2c5872020-01-07 17:54:09 +0200175 field @Deprecated public static final int GCMP_128 = 7; // 0x7
Anton Hansson180d9562020-01-17 19:03:34 +0000176 field @Deprecated public static final int GCMP_256 = 5; // 0x5
177 field @Deprecated public static final int SMS4 = 6; // 0x6
178 field @Deprecated public static final int TKIP = 2; // 0x2
179 field @Deprecated public static final int WEP104 = 1; // 0x1
180 field @Deprecated public static final int WEP40 = 0; // 0x0
181 field @Deprecated public static final String[] strings;
182 field @Deprecated public static final String varName = "group";
183 }
184
185 @Deprecated public static class WifiConfiguration.GroupMgmtCipher {
186 field @Deprecated public static final int BIP_CMAC_256 = 0; // 0x0
187 field @Deprecated public static final int BIP_GMAC_128 = 1; // 0x1
188 field @Deprecated public static final int BIP_GMAC_256 = 2; // 0x2
189 }
190
191 @Deprecated public static class WifiConfiguration.KeyMgmt {
192 field @Deprecated public static final int IEEE8021X = 3; // 0x3
193 field @Deprecated public static final int NONE = 0; // 0x0
194 field @Deprecated public static final int OWE = 9; // 0x9
195 field @Deprecated public static final int SAE = 8; // 0x8
196 field @Deprecated public static final int SUITE_B_192 = 10; // 0xa
197 field @Deprecated public static final int WPA_EAP = 2; // 0x2
198 field @Deprecated public static final int WPA_PSK = 1; // 0x1
199 field @Deprecated public static final String[] strings;
200 field @Deprecated public static final String varName = "key_mgmt";
201 }
202
203 @Deprecated public static class WifiConfiguration.PairwiseCipher {
204 field @Deprecated public static final int CCMP = 2; // 0x2
Jimmy Chendf2c5872020-01-07 17:54:09 +0200205 field @Deprecated public static final int GCMP_128 = 5; // 0x5
Anton Hansson180d9562020-01-17 19:03:34 +0000206 field @Deprecated public static final int GCMP_256 = 3; // 0x3
207 field @Deprecated public static final int NONE = 0; // 0x0
208 field @Deprecated public static final int SMS4 = 4; // 0x4
209 field @Deprecated public static final int TKIP = 1; // 0x1
210 field @Deprecated public static final String[] strings;
211 field @Deprecated public static final String varName = "pairwise";
212 }
213
214 @Deprecated public static class WifiConfiguration.Protocol {
215 field @Deprecated public static final int RSN = 1; // 0x1
216 field @Deprecated public static final int WAPI = 3; // 0x3
217 field @Deprecated public static final int WPA = 0; // 0x0
218 field @Deprecated public static final String[] strings;
219 field @Deprecated public static final String varName = "proto";
220 }
221
222 @Deprecated public static class WifiConfiguration.Status {
223 field @Deprecated public static final int CURRENT = 0; // 0x0
224 field @Deprecated public static final int DISABLED = 1; // 0x1
225 field @Deprecated public static final int ENABLED = 2; // 0x2
226 field @Deprecated public static final String[] strings;
227 }
228
229 public class WifiEnterpriseConfig implements android.os.Parcelable {
230 ctor public WifiEnterpriseConfig();
231 ctor public WifiEnterpriseConfig(android.net.wifi.WifiEnterpriseConfig);
232 method public int describeContents();
Jimmy Chen05ac9a82021-11-04 22:42:23 +0800233 method public void enableTrustOnFirstUse(boolean);
Anton Hansson180d9562020-01-17 19:03:34 +0000234 method public String getAltSubjectMatch();
235 method public String getAnonymousIdentity();
236 method @Nullable public java.security.cert.X509Certificate getCaCertificate();
237 method @Nullable public java.security.cert.X509Certificate[] getCaCertificates();
238 method public java.security.cert.X509Certificate getClientCertificate();
239 method @Nullable public java.security.cert.X509Certificate[] getClientCertificateChain();
Pavel Grafov5563d8e2021-01-18 14:23:56 +0000240 method @Nullable public String getClientKeyPairAlias();
Anton Hansson180d9562020-01-17 19:03:34 +0000241 method @Nullable public java.security.PrivateKey getClientPrivateKey();
Hai Shalom1c6098e2021-04-14 17:50:44 -0700242 method @Nullable public String getDecoratedIdentityPrefix();
Anton Hansson180d9562020-01-17 19:03:34 +0000243 method public String getDomainSuffixMatch();
244 method public int getEapMethod();
245 method public String getIdentity();
246 method public String getPassword();
247 method public int getPhase2Method();
248 method public String getPlmn();
249 method public String getRealm();
250 method @Deprecated public String getSubjectMatch();
Jimmy Chen05ac9a82021-11-04 22:42:23 +0800251 method public boolean hasCaCertificate();
Anton Hansson180d9562020-01-17 19:03:34 +0000252 method public boolean isAuthenticationSimBased();
Nate Jiang3e6e2f22021-03-05 12:35:31 -0800253 method public boolean isEapMethodServerCertUsed();
Nate Jiangbfc47c52020-12-22 17:11:12 -0800254 method public boolean isServerCertValidationEnabled();
Jimmy Chen05ac9a82021-11-04 22:42:23 +0800255 method public boolean isTrustOnFirstUseEnabled();
Anton Hansson180d9562020-01-17 19:03:34 +0000256 method public void setAltSubjectMatch(String);
257 method public void setAnonymousIdentity(String);
258 method public void setCaCertificate(@Nullable java.security.cert.X509Certificate);
259 method public void setCaCertificates(@Nullable java.security.cert.X509Certificate[]);
260 method public void setClientKeyEntry(java.security.PrivateKey, java.security.cert.X509Certificate);
261 method public void setClientKeyEntryWithCertificateChain(java.security.PrivateKey, java.security.cert.X509Certificate[]);
Pavel Grafov5563d8e2021-01-18 14:23:56 +0000262 method public void setClientKeyPairAlias(@NonNull String);
Hai Shalom1d362632021-03-12 15:00:50 -0800263 method public void setDecoratedIdentityPrefix(@Nullable String);
Anton Hansson180d9562020-01-17 19:03:34 +0000264 method public void setDomainSuffixMatch(String);
265 method public void setEapMethod(int);
266 method public void setIdentity(String);
267 method public void setPassword(String);
268 method public void setPhase2Method(int);
269 method public void setPlmn(String);
270 method public void setRealm(String);
271 method @Deprecated public void setSubjectMatch(String);
272 method public void writeToParcel(android.os.Parcel, int);
273 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiEnterpriseConfig> CREATOR;
274 field public static final String EXTRA_WAPI_AS_CERTIFICATE_DATA = "android.net.wifi.extra.WAPI_AS_CERTIFICATE_DATA";
275 field public static final String EXTRA_WAPI_AS_CERTIFICATE_NAME = "android.net.wifi.extra.WAPI_AS_CERTIFICATE_NAME";
276 field public static final String EXTRA_WAPI_USER_CERTIFICATE_DATA = "android.net.wifi.extra.WAPI_USER_CERTIFICATE_DATA";
277 field public static final String EXTRA_WAPI_USER_CERTIFICATE_NAME = "android.net.wifi.extra.WAPI_USER_CERTIFICATE_NAME";
278 field public static final String WAPI_AS_CERTIFICATE = "WAPIAS_";
279 field public static final String WAPI_USER_CERTIFICATE = "WAPIUSR_";
280 }
281
282 public static final class WifiEnterpriseConfig.Eap {
283 field public static final int AKA = 5; // 0x5
284 field public static final int AKA_PRIME = 6; // 0x6
285 field public static final int NONE = -1; // 0xffffffff
286 field public static final int PEAP = 0; // 0x0
287 field public static final int PWD = 3; // 0x3
288 field public static final int SIM = 4; // 0x4
289 field public static final int TLS = 1; // 0x1
290 field public static final int TTLS = 2; // 0x2
291 field public static final int UNAUTH_TLS = 7; // 0x7
292 field public static final int WAPI_CERT = 8; // 0x8
293 }
294
295 public static final class WifiEnterpriseConfig.Phase2 {
296 field public static final int AKA = 6; // 0x6
297 field public static final int AKA_PRIME = 7; // 0x7
298 field public static final int GTC = 4; // 0x4
299 field public static final int MSCHAP = 2; // 0x2
300 field public static final int MSCHAPV2 = 3; // 0x3
301 field public static final int NONE = 0; // 0x0
302 field public static final int PAP = 1; // 0x1
303 field public static final int SIM = 5; // 0x5
304 }
305
Roshan Piuscf919922020-08-14 07:17:59 -0700306 public class WifiInfo implements android.os.Parcelable android.net.TransportInfo {
Anton Hansson180d9562020-01-17 19:03:34 +0000307 method public int describeContents();
308 method public String getBSSID();
Hai Shalom46a7a672021-03-17 14:58:55 -0700309 method public int getCurrentSecurityType();
Anton Hansson180d9562020-01-17 19:03:34 +0000310 method public static android.net.NetworkInfo.DetailedState getDetailedStateOf(android.net.wifi.SupplicantState);
311 method public int getFrequency();
312 method public boolean getHiddenSSID();
Roshan Piusc610e1f2021-01-13 15:17:18 +0000313 method @Nullable public java.util.List<android.net.wifi.ScanResult.InformationElement> getInformationElements();
Roshan Pius2fa57f02020-12-30 13:15:50 -0800314 method @Deprecated public int getIpAddress();
Anton Hansson180d9562020-01-17 19:03:34 +0000315 method public int getLinkSpeed();
Anton Hanssonb43f5dc2021-10-20 13:21:00 +0100316 method public String getMacAddress();
Anton Hansson180d9562020-01-17 19:03:34 +0000317 method public int getMaxSupportedRxLinkSpeedMbps();
318 method public int getMaxSupportedTxLinkSpeedMbps();
319 method public int getNetworkId();
320 method @Nullable public String getPasspointFqdn();
321 method @Nullable public String getPasspointProviderFriendlyName();
322 method public int getRssi();
323 method @IntRange(from=0xffffffff) public int getRxLinkSpeedMbps();
324 method public String getSSID();
Nate Jiangd17ab1b2021-01-11 14:48:12 -0800325 method public int getSubscriptionId();
Anton Hansson180d9562020-01-17 19:03:34 +0000326 method public android.net.wifi.SupplicantState getSupplicantState();
327 method @IntRange(from=0xffffffff) public int getTxLinkSpeedMbps();
328 method public int getWifiStandard();
Nate Jiang2a788802021-11-10 10:48:05 -0800329 method public boolean isRestricted();
Roshan Piuse16f0d42021-02-23 08:49:29 -0800330 method @NonNull public android.net.wifi.WifiInfo makeCopy(long);
Anton Hansson180d9562020-01-17 19:03:34 +0000331 method public void writeToParcel(android.os.Parcel, int);
332 field public static final String FREQUENCY_UNITS = "MHz";
333 field public static final String LINK_SPEED_UNITS = "Mbps";
334 field public static final int LINK_SPEED_UNKNOWN = -1; // 0xffffffff
Hai Shalom46a7a672021-03-17 14:58:55 -0700335 field public static final int SECURITY_TYPE_EAP = 3; // 0x3
336 field public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE = 9; // 0x9
337 field public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT = 5; // 0x5
338 field public static final int SECURITY_TYPE_OPEN = 0; // 0x0
339 field public static final int SECURITY_TYPE_OSEN = 10; // 0xa
340 field public static final int SECURITY_TYPE_OWE = 6; // 0x6
341 field public static final int SECURITY_TYPE_PASSPOINT_R1_R2 = 11; // 0xb
342 field public static final int SECURITY_TYPE_PASSPOINT_R3 = 12; // 0xc
343 field public static final int SECURITY_TYPE_PSK = 2; // 0x2
344 field public static final int SECURITY_TYPE_SAE = 4; // 0x4
345 field public static final int SECURITY_TYPE_UNKNOWN = -1; // 0xffffffff
346 field public static final int SECURITY_TYPE_WAPI_CERT = 8; // 0x8
347 field public static final int SECURITY_TYPE_WAPI_PSK = 7; // 0x7
348 field public static final int SECURITY_TYPE_WEP = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +0000349 }
350
351 public static final class WifiInfo.Builder {
352 ctor public WifiInfo.Builder();
353 method @NonNull public android.net.wifi.WifiInfo build();
354 method @NonNull public android.net.wifi.WifiInfo.Builder setBssid(@NonNull String);
Hai Shalom46a7a672021-03-17 14:58:55 -0700355 method @NonNull public android.net.wifi.WifiInfo.Builder setCurrentSecurityType(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000356 method @NonNull public android.net.wifi.WifiInfo.Builder setNetworkId(int);
357 method @NonNull public android.net.wifi.WifiInfo.Builder setRssi(int);
358 method @NonNull public android.net.wifi.WifiInfo.Builder setSsid(@NonNull byte[]);
359 }
360
361 public class WifiManager {
362 method @Deprecated public int addNetwork(android.net.wifi.WifiConfiguration);
Anton Hanssonb43f5dc2021-10-20 13:21:00 +0100363 method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETUP_WIZARD, android.Manifest.permission.NETWORK_MANAGED_PROVISIONING}, conditional=true) public android.net.wifi.WifiManager.AddNetworkResult addNetworkPrivileged(@NonNull android.net.wifi.WifiConfiguration);
Anton Hansson180d9562020-01-17 19:03:34 +0000364 method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int addNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>);
365 method public void addOrUpdatePasspointConfiguration(android.net.wifi.hotspot2.PasspointConfiguration);
366 method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_WIFI_STATE}) public void addSuggestionConnectionStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SuggestionConnectionStatusListener);
Nate Jiang97874a22021-01-28 09:42:02 -0800367 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void addSuggestionUserApprovalStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SuggestionUserApprovalStatusListener);
Anton Hansson180d9562020-01-17 19:03:34 +0000368 method @Deprecated public static int calculateSignalLevel(int, int);
369 method @IntRange(from=0) public int calculateSignalLevel(int);
370 method @Deprecated public void cancelWps(android.net.wifi.WifiManager.WpsCallback);
371 method public static int compareSignalLevel(int, int);
372 method public android.net.wifi.WifiManager.MulticastLock createMulticastLock(String);
373 method public android.net.wifi.WifiManager.WifiLock createWifiLock(int, String);
374 method @Deprecated public android.net.wifi.WifiManager.WifiLock createWifiLock(String);
375 method @Deprecated public boolean disableNetwork(int);
376 method @Deprecated public boolean disconnect();
377 method @Deprecated public boolean enableNetwork(int, boolean);
Anton Hanssonb43f5dc2021-10-20 13:21:00 +0100378 method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.Manifest.permission.NETWORK_MANAGED_PROVISIONING, android.Manifest.permission.NETWORK_CARRIER_PROVISIONING}, conditional=true) public void flushPasspointAnqpCache();
Rubin Xu0cf236f2021-02-16 16:45:07 +0000379 method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public java.util.List<android.net.wifi.WifiConfiguration> getCallerConfiguredNetworks();
Anton Hansson180d9562020-01-17 19:03:34 +0000380 method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_WIFI_STATE}) public java.util.List<android.net.wifi.WifiConfiguration> getConfiguredNetworks();
xshu1c3ee3e2021-11-03 20:03:10 -0700381 method @Deprecated @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public android.net.wifi.WifiInfo getConnectionInfo();
Roshan Pius2fa57f02020-12-30 13:15:50 -0800382 method @Deprecated public android.net.DhcpInfo getDhcpInfo();
Anton Hansson180d9562020-01-17 19:03:34 +0000383 method public int getMaxNumberOfNetworkSuggestionsPerApp();
384 method @IntRange(from=0) public int getMaxSignalLevel();
385 method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public java.util.List<android.net.wifi.WifiNetworkSuggestion> getNetworkSuggestions();
Anton Hanssonb43f5dc2021-10-20 13:21:00 +0100386 method @Deprecated public java.util.List<android.net.wifi.hotspot2.PasspointConfiguration> getPasspointConfigurations();
xshu1c3ee3e2021-11-03 20:03:10 -0700387 method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION}) public java.util.List<android.net.wifi.ScanResult> getScanResults();
Chris Yef47b5932021-12-03 16:07:34 -0800388 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public int getStaConcurrencyForMultiInternetMode();
Anton Hansson180d9562020-01-17 19:03:34 +0000389 method public int getWifiState();
lesl053a69e2021-02-04 17:09:22 +0800390 method public boolean is24GHzBandSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000391 method public boolean is5GHzBandSupported();
Jimmy Chen049baa52021-01-26 01:29:19 +0800392 method public boolean is60GHzBandSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000393 method public boolean is6GHzBandSupported();
394 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isAutoWakeupEnabled();
lesl6d565cd2020-11-27 13:05:04 +0800395 method public boolean isBridgedApConcurrencySupported();
Nate Jiangdc80ce82021-03-16 14:37:40 -0700396 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isCarrierNetworkOffloadEnabled(int, boolean);
Hai Shalom1d362632021-03-12 15:00:50 -0800397 method public boolean isDecoratedIdentitySupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000398 method @Deprecated public boolean isDeviceToApRttSupported();
Sunil Ravi42b7f932021-02-24 17:13:41 -0800399 method public boolean isEasyConnectEnrolleeResponderModeSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000400 method public boolean isEasyConnectSupported();
401 method public boolean isEnhancedOpenSupported();
402 method public boolean isEnhancedPowerReportingSupported();
Roshan Pius022f3b62021-02-26 14:11:18 -0800403 method public boolean isMakeBeforeBreakWifiSwitchingSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000404 method public boolean isP2pSupported();
Hai Shalom9a7adff2021-03-01 19:05:17 -0800405 method public boolean isPasspointTermsAndConditionsSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000406 method public boolean isPreferredNetworkOffloadSupported();
407 method @Deprecated public boolean isScanAlwaysAvailable();
408 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isScanThrottleEnabled();
409 method public boolean isStaApConcurrencySupported();
lesl6d565cd2020-11-27 13:05:04 +0800410 method public boolean isStaBridgedApConcurrencySupported();
Roshan Pius022f3b62021-02-26 14:11:18 -0800411 method public boolean isStaConcurrencyForLocalOnlyConnectionsSupported();
Chris Yef47b5932021-12-03 16:07:34 -0800412 method public boolean isStaConcurrencyForMultiInternetSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000413 method public boolean isTdlsSupported();
Jimmy Chen05ac9a82021-11-04 22:42:23 +0800414 method public boolean isTrustOnFirstUseSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000415 method public boolean isWapiSupported();
Jimmy Chend9fb5fb2021-03-04 14:42:49 +0800416 method public boolean isWifiDisplayR2Supported();
Anton Hansson180d9562020-01-17 19:03:34 +0000417 method public boolean isWifiEnabled();
Chris Ye4ef08dd2021-06-14 23:21:45 -0700418 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isWifiPasspointEnabled();
Anton Hansson180d9562020-01-17 19:03:34 +0000419 method public boolean isWifiStandardSupported(int);
Jimmy Chen8b6b2462021-02-23 10:27:51 +0800420 method public boolean isWpa3SaeH2eSupported();
Jimmy Chena4c3f892021-02-23 09:50:20 +0800421 method public boolean isWpa3SaePublicKeySupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000422 method public boolean isWpa3SaeSupported();
423 method public boolean isWpa3SuiteBSupported();
424 method @Deprecated public boolean pingSupplicant();
425 method @Deprecated public boolean reassociate();
426 method @Deprecated public boolean reconnect();
427 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void registerScanResultsCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.ScanResultsCallback);
Etan Cohen591aeb52021-01-06 13:17:32 -0800428 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void registerSubsystemRestartTrackingCallback(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SubsystemRestartTrackingCallback);
Anton Hansson180d9562020-01-17 19:03:34 +0000429 method @Deprecated public boolean removeNetwork(int);
Nate Jiange29c4732021-11-22 11:47:15 -0800430 method @Deprecated @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int removeNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>);
431 method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int removeNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>, int);
Rubin Xu0cf236f2021-02-16 16:45:07 +0000432 method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public boolean removeNonCallerConfiguredNetworks();
Anton Hanssonb43f5dc2021-10-20 13:21:00 +0100433 method @Deprecated public void removePasspointConfiguration(String);
Anton Hansson180d9562020-01-17 19:03:34 +0000434 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void removeSuggestionConnectionStatusListener(@NonNull android.net.wifi.WifiManager.SuggestionConnectionStatusListener);
Nate Jiangd1519d72020-12-09 22:43:33 -0800435 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void removeSuggestionUserApprovalStatusListener(@NonNull android.net.wifi.WifiManager.SuggestionUserApprovalStatusListener);
Anton Hansson180d9562020-01-17 19:03:34 +0000436 method @Deprecated public boolean saveConfiguration();
437 method public void setTdlsEnabled(java.net.InetAddress, boolean);
438 method public void setTdlsEnabledWithMacAddress(String, boolean);
439 method @Deprecated public boolean setWifiEnabled(boolean);
xshu25c63302022-01-11 16:26:55 -0800440 method @RequiresPermission(allOf={android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.NEARBY_WIFI_DEVICES}, conditional=true) public void startLocalOnlyHotspot(android.net.wifi.WifiManager.LocalOnlyHotspotCallback, @Nullable android.os.Handler);
Anton Hansson180d9562020-01-17 19:03:34 +0000441 method @Deprecated public boolean startScan();
442 method @Deprecated public void startWps(android.net.wifi.WpsInfo, android.net.wifi.WifiManager.WpsCallback);
443 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void unregisterScanResultsCallback(@NonNull android.net.wifi.WifiManager.ScanResultsCallback);
Etan Cohen9c0688d2021-02-12 01:42:09 +0000444 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void unregisterSubsystemRestartTrackingCallback(@NonNull android.net.wifi.WifiManager.SubsystemRestartTrackingCallback);
Anton Hansson180d9562020-01-17 19:03:34 +0000445 method @Deprecated public int updateNetwork(android.net.wifi.WifiConfiguration);
446 field public static final String ACTION_PICK_WIFI_NETWORK = "android.net.wifi.PICK_WIFI_NETWORK";
Nate Jiange29c4732021-11-22 11:47:15 -0800447 field public static final int ACTION_REMOVE_SUGGESTION_DISCONNECT = 2; // 0x2
448 field public static final int ACTION_REMOVE_SUGGESTION_LINGER = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +0000449 field public static final String ACTION_REQUEST_SCAN_ALWAYS_AVAILABLE = "android.net.wifi.action.REQUEST_SCAN_ALWAYS_AVAILABLE";
450 field public static final String ACTION_WIFI_NETWORK_SUGGESTION_POST_CONNECTION = "android.net.wifi.action.WIFI_NETWORK_SUGGESTION_POST_CONNECTION";
451 field public static final String ACTION_WIFI_SCAN_AVAILABILITY_CHANGED = "android.net.wifi.action.WIFI_SCAN_AVAILABILITY_CHANGED";
452 field @Deprecated public static final int ERROR_AUTHENTICATING = 1; // 0x1
453 field @Deprecated public static final String EXTRA_BSSID = "bssid";
454 field public static final String EXTRA_NETWORK_INFO = "networkInfo";
455 field public static final String EXTRA_NETWORK_SUGGESTION = "android.net.wifi.extra.NETWORK_SUGGESTION";
456 field public static final String EXTRA_NEW_RSSI = "newRssi";
457 field @Deprecated public static final String EXTRA_NEW_STATE = "newState";
458 field public static final String EXTRA_PREVIOUS_WIFI_STATE = "previous_wifi_state";
459 field public static final String EXTRA_RESULTS_UPDATED = "resultsUpdated";
460 field public static final String EXTRA_SCAN_AVAILABLE = "android.net.wifi.extra.SCAN_AVAILABLE";
461 field @Deprecated public static final String EXTRA_SUPPLICANT_CONNECTED = "connected";
462 field @Deprecated public static final String EXTRA_SUPPLICANT_ERROR = "supplicantError";
463 field @Deprecated public static final String EXTRA_WIFI_INFO = "wifiInfo";
464 field public static final String EXTRA_WIFI_STATE = "wifi_state";
465 field public static final String NETWORK_IDS_CHANGED_ACTION = "android.net.wifi.NETWORK_IDS_CHANGED";
466 field public static final String NETWORK_STATE_CHANGED_ACTION = "android.net.wifi.STATE_CHANGE";
467 field public static final String RSSI_CHANGED_ACTION = "android.net.wifi.RSSI_CHANGED";
468 field public static final String SCAN_RESULTS_AVAILABLE_ACTION = "android.net.wifi.SCAN_RESULTS";
469 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_DUPLICATE = 3; // 0x3
470 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_EXCEEDS_MAX_PER_APP = 4; // 0x4
471 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_INVALID = 7; // 0x7
472 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_NOT_ALLOWED = 6; // 0x6
473 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_APP_DISALLOWED = 2; // 0x2
474 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_INTERNAL = 1; // 0x1
475 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_REMOVE_INVALID = 5; // 0x5
476 field public static final int STATUS_NETWORK_SUGGESTIONS_SUCCESS = 0; // 0x0
Nate Jiangd2ad1f42020-11-10 17:30:14 -0800477 field public static final int STATUS_SUGGESTION_APPROVAL_APPROVED_BY_CARRIER_PRIVILEGE = 4; // 0x4
478 field public static final int STATUS_SUGGESTION_APPROVAL_APPROVED_BY_USER = 2; // 0x2
479 field public static final int STATUS_SUGGESTION_APPROVAL_PENDING = 1; // 0x1
480 field public static final int STATUS_SUGGESTION_APPROVAL_REJECTED_BY_USER = 3; // 0x3
481 field public static final int STATUS_SUGGESTION_APPROVAL_UNKNOWN = 0; // 0x0
Anton Hansson180d9562020-01-17 19:03:34 +0000482 field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_ASSOCIATION = 1; // 0x1
483 field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_AUTHENTICATION = 2; // 0x2
484 field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_IP_PROVISIONING = 3; // 0x3
485 field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_UNKNOWN = 0; // 0x0
486 field @Deprecated public static final String SUPPLICANT_CONNECTION_CHANGE_ACTION = "android.net.wifi.supplicant.CONNECTION_CHANGE";
487 field @Deprecated public static final String SUPPLICANT_STATE_CHANGED_ACTION = "android.net.wifi.supplicant.STATE_CHANGE";
488 field public static final String UNKNOWN_SSID = "<unknown ssid>";
489 field @Deprecated public static final int WIFI_MODE_FULL = 1; // 0x1
490 field public static final int WIFI_MODE_FULL_HIGH_PERF = 3; // 0x3
491 field public static final int WIFI_MODE_FULL_LOW_LATENCY = 4; // 0x4
492 field @Deprecated public static final int WIFI_MODE_SCAN_ONLY = 2; // 0x2
Chris Yef47b5932021-12-03 16:07:34 -0800493 field public static final int WIFI_MULTI_INTERNET_MODE_DBS_AP = 1; // 0x1
494 field public static final int WIFI_MULTI_INTERNET_MODE_DISABLED = 0; // 0x0
495 field public static final int WIFI_MULTI_INTERNET_MODE_MULTI_AP = 2; // 0x2
Anton Hansson180d9562020-01-17 19:03:34 +0000496 field public static final String WIFI_STATE_CHANGED_ACTION = "android.net.wifi.WIFI_STATE_CHANGED";
497 field public static final int WIFI_STATE_DISABLED = 1; // 0x1
498 field public static final int WIFI_STATE_DISABLING = 0; // 0x0
499 field public static final int WIFI_STATE_ENABLED = 3; // 0x3
500 field public static final int WIFI_STATE_ENABLING = 2; // 0x2
501 field public static final int WIFI_STATE_UNKNOWN = 4; // 0x4
502 field @Deprecated public static final int WPS_AUTH_FAILURE = 6; // 0x6
503 field @Deprecated public static final int WPS_OVERLAP_ERROR = 3; // 0x3
504 field @Deprecated public static final int WPS_TIMED_OUT = 7; // 0x7
505 field @Deprecated public static final int WPS_TKIP_ONLY_PROHIBITED = 5; // 0x5
506 field @Deprecated public static final int WPS_WEP_PROHIBITED = 4; // 0x4
507 }
508
xshu18bf8152021-03-18 21:07:30 -0700509 public static final class WifiManager.AddNetworkResult implements android.os.Parcelable {
510 ctor public WifiManager.AddNetworkResult(int, int);
511 method public int describeContents();
512 method public void writeToParcel(@NonNull android.os.Parcel, int);
513 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiManager.AddNetworkResult> CREATOR;
514 field public static final int STATUS_ADD_PASSPOINT_FAILURE = 3; // 0x3
515 field public static final int STATUS_ADD_WIFI_CONFIG_FAILURE = 4; // 0x4
516 field public static final int STATUS_FAILURE_UNKNOWN = 1; // 0x1
517 field public static final int STATUS_FAILURE_UPDATE_NETWORK_KEYS = 9; // 0x9
518 field public static final int STATUS_INVALID_CONFIGURATION = 5; // 0x5
519 field public static final int STATUS_INVALID_CONFIGURATION_ENTERPRISE = 10; // 0xa
520 field public static final int STATUS_NO_PERMISSION = 2; // 0x2
521 field public static final int STATUS_NO_PERMISSION_MODIFY_CONFIG = 6; // 0x6
522 field public static final int STATUS_NO_PERMISSION_MODIFY_MAC_RANDOMIZATION = 8; // 0x8
523 field public static final int STATUS_NO_PERMISSION_MODIFY_PROXY_SETTING = 7; // 0x7
524 field public static final int STATUS_SUCCESS = 0; // 0x0
525 field public final int networkId;
526 field public final int statusCode;
527 }
528
Anton Hansson180d9562020-01-17 19:03:34 +0000529 public static class WifiManager.LocalOnlyHotspotCallback {
530 ctor public WifiManager.LocalOnlyHotspotCallback();
531 method public void onFailed(int);
532 method public void onStarted(android.net.wifi.WifiManager.LocalOnlyHotspotReservation);
533 method public void onStopped();
534 field public static final int ERROR_GENERIC = 2; // 0x2
535 field public static final int ERROR_INCOMPATIBLE_MODE = 3; // 0x3
536 field public static final int ERROR_NO_CHANNEL = 1; // 0x1
537 field public static final int ERROR_TETHERING_DISALLOWED = 4; // 0x4
538 }
539
540 public class WifiManager.LocalOnlyHotspotReservation implements java.lang.AutoCloseable {
541 method public void close();
542 method @NonNull public android.net.wifi.SoftApConfiguration getSoftApConfiguration();
543 method @Deprecated @Nullable public android.net.wifi.WifiConfiguration getWifiConfiguration();
544 }
545
546 public class WifiManager.MulticastLock {
547 method public void acquire();
548 method public boolean isHeld();
549 method public void release();
550 method public void setReferenceCounted(boolean);
551 }
552
553 public abstract static class WifiManager.ScanResultsCallback {
554 ctor public WifiManager.ScanResultsCallback();
555 method public abstract void onScanResultsAvailable();
556 }
557
Etan Cohen591aeb52021-01-06 13:17:32 -0800558 public abstract static class WifiManager.SubsystemRestartTrackingCallback {
559 ctor public WifiManager.SubsystemRestartTrackingCallback();
560 method public abstract void onSubsystemRestarted();
561 method public abstract void onSubsystemRestarting();
562 }
563
Anton Hansson180d9562020-01-17 19:03:34 +0000564 public static interface WifiManager.SuggestionConnectionStatusListener {
565 method public void onConnectionStatus(@NonNull android.net.wifi.WifiNetworkSuggestion, int);
566 }
567
Nate Jiangd1519d72020-12-09 22:43:33 -0800568 public static interface WifiManager.SuggestionUserApprovalStatusListener {
Nate Jiang97874a22021-01-28 09:42:02 -0800569 method public void onUserApprovalStatusChange(int);
Nate Jiangd1519d72020-12-09 22:43:33 -0800570 }
571
Anton Hansson180d9562020-01-17 19:03:34 +0000572 public class WifiManager.WifiLock {
573 method public void acquire();
574 method public boolean isHeld();
575 method public void release();
576 method public void setReferenceCounted(boolean);
577 method public void setWorkSource(android.os.WorkSource);
578 }
579
580 @Deprecated public abstract static class WifiManager.WpsCallback {
581 ctor @Deprecated public WifiManager.WpsCallback();
582 method @Deprecated public abstract void onFailed(int);
583 method @Deprecated public abstract void onStarted(String);
584 method @Deprecated public abstract void onSucceeded();
585 }
586
587 public final class WifiNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
588 method public int describeContents();
Chalard Jean2c6d14d2021-05-12 22:22:06 +0900589 method public int getBand();
Anton Hansson180d9562020-01-17 19:03:34 +0000590 method public void writeToParcel(android.os.Parcel, int);
591 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiNetworkSpecifier> CREATOR;
592 }
593
594 public static final class WifiNetworkSpecifier.Builder {
595 ctor public WifiNetworkSpecifier.Builder();
596 method @NonNull public android.net.wifi.WifiNetworkSpecifier build();
Chalard Jean2c6d14d2021-05-12 22:22:06 +0900597 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setBand(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000598 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setBssid(@NonNull android.net.MacAddress);
599 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setBssidPattern(@NonNull android.net.MacAddress, @NonNull android.net.MacAddress);
600 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setIsEnhancedOpen(boolean);
601 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setIsHiddenSsid(boolean);
602 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setSsid(@NonNull String);
603 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setSsidPattern(@NonNull android.os.PatternMatcher);
604 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa2EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
605 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa2Passphrase(@NonNull String);
Jimmy Chen049bf532020-10-16 14:15:11 +0800606 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3Enterprise192BitModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
607 method @Deprecated @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
608 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3EnterpriseStandardModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
Anton Hansson180d9562020-01-17 19:03:34 +0000609 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3Passphrase(@NonNull String);
610 }
611
612 public final class WifiNetworkSuggestion implements android.os.Parcelable {
613 method public int describeContents();
614 method @Nullable public android.net.MacAddress getBssid();
615 method @Nullable public android.net.wifi.WifiEnterpriseConfig getEnterpriseConfig();
Nate Jiangd5bd85d2021-09-24 15:29:46 -0700616 method public int getMacRandomizationSetting();
Anton Hansson180d9562020-01-17 19:03:34 +0000617 method @Nullable public String getPassphrase();
618 method @Nullable public android.net.wifi.hotspot2.PasspointConfiguration getPasspointConfig();
619 method @IntRange(from=0) public int getPriority();
Nate Jiang34101422021-03-03 17:53:06 -0800620 method @IntRange(from=0) public int getPriorityGroup();
Anton Hansson180d9562020-01-17 19:03:34 +0000621 method @Nullable public String getSsid();
Nate Jiangf54facb2021-11-22 11:47:15 -0800622 method @Nullable public android.os.ParcelUuid getSubscriptionGroup();
Nate Jiang5fab3cb2020-09-16 17:48:16 -0700623 method public int getSubscriptionId();
Anton Hansson180d9562020-01-17 19:03:34 +0000624 method public boolean isAppInteractionRequired();
Nate Jiangd7ed9df2020-11-10 13:00:07 -0800625 method public boolean isCarrierMerged();
Anton Hansson180d9562020-01-17 19:03:34 +0000626 method public boolean isCredentialSharedWithUser();
627 method public boolean isEnhancedOpen();
628 method public boolean isHiddenSsid();
629 method public boolean isInitialAutojoinEnabled();
630 method public boolean isMetered();
Nate Jiang2d9907c2021-11-05 11:42:57 -0700631 method public boolean isRestricted();
Anton Hansson180d9562020-01-17 19:03:34 +0000632 method public boolean isUntrusted();
633 method public boolean isUserInteractionRequired();
634 method public void writeToParcel(android.os.Parcel, int);
635 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiNetworkSuggestion> CREATOR;
xshud92896d2021-02-12 17:07:06 -0800636 field public static final int RANDOMIZATION_NON_PERSISTENT = 1; // 0x1
637 field public static final int RANDOMIZATION_PERSISTENT = 0; // 0x0
Anton Hansson180d9562020-01-17 19:03:34 +0000638 }
639
640 public static final class WifiNetworkSuggestion.Builder {
641 ctor public WifiNetworkSuggestion.Builder();
642 method @NonNull public android.net.wifi.WifiNetworkSuggestion build();
643 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setBssid(@NonNull android.net.MacAddress);
Nate Jiangd7ed9df2020-11-10 13:00:07 -0800644 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setCarrierMerged(boolean);
Anton Hansson180d9562020-01-17 19:03:34 +0000645 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setCredentialSharedWithUser(boolean);
646 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsAppInteractionRequired(boolean);
647 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsEnhancedOpen(boolean);
648 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsHiddenSsid(boolean);
649 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsInitialAutojoinEnabled(boolean);
650 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsMetered(boolean);
651 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsUserInteractionRequired(boolean);
Jimmy Chenc5be43d2021-03-18 13:01:50 +0800652 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsWpa3SaeH2eOnlyModeEnabled(boolean);
xshud92896d2021-02-12 17:07:06 -0800653 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setMacRandomizationSetting(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000654 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPasspointConfig(@NonNull android.net.wifi.hotspot2.PasspointConfiguration);
655 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPriority(@IntRange(from=0) int);
Nate Jiang34101422021-03-03 17:53:06 -0800656 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPriorityGroup(@IntRange(from=0) int);
Nate Jiang2d9907c2021-11-05 11:42:57 -0700657 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setRestricted(boolean);
Anton Hansson180d9562020-01-17 19:03:34 +0000658 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setSsid(@NonNull String);
Nate Jiangf54facb2021-11-22 11:47:15 -0800659 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setSubscriptionGroup(@NonNull android.os.ParcelUuid);
Nate Jiang5fab3cb2020-09-16 17:48:16 -0700660 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setSubscriptionId(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000661 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setUntrusted(boolean);
662 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWapiEnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
663 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWapiPassphrase(@NonNull String);
664 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa2EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
665 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa2Passphrase(@NonNull String);
Jimmy Chen049bf532020-10-16 14:15:11 +0800666 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3Enterprise192BitModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
667 method @Deprecated @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
668 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3EnterpriseStandardModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
Anton Hansson180d9562020-01-17 19:03:34 +0000669 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3Passphrase(@NonNull String);
670 }
671
Quang Luongab00ba22021-10-07 16:12:10 -0700672 public final class WifiSsid implements android.os.Parcelable {
673 method public int describeContents();
674 method @NonNull public static android.net.wifi.WifiSsid fromBytes(@Nullable byte[]);
675 method @NonNull public static android.net.wifi.WifiSsid fromString(@Nullable String);
676 method @NonNull public static android.net.wifi.WifiSsid fromUtf8Text(@Nullable CharSequence);
677 method @NonNull public byte[] getBytes();
678 method @Nullable public CharSequence getUtf8Text();
679 method public void writeToParcel(@NonNull android.os.Parcel, int);
680 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiSsid> CREATOR;
681 }
682
Anton Hansson180d9562020-01-17 19:03:34 +0000683 public class WpsInfo implements android.os.Parcelable {
684 ctor public WpsInfo();
685 ctor public WpsInfo(android.net.wifi.WpsInfo);
686 method public int describeContents();
687 method public void writeToParcel(android.os.Parcel, int);
688 field public String BSSID;
689 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WpsInfo> CREATOR;
690 field public static final int DISPLAY = 1; // 0x1
691 field public static final int INVALID = 4; // 0x4
692 field public static final int KEYPAD = 2; // 0x2
693 field public static final int LABEL = 3; // 0x3
694 field public static final int PBC = 0; // 0x0
695 field public String pin;
696 field public int setup;
697 }
698
699}
700
701package android.net.wifi.aware {
702
703 public class AttachCallback {
704 ctor public AttachCallback();
705 method public void onAttachFailed();
706 method public void onAttached(android.net.wifi.aware.WifiAwareSession);
Nate Jiang6485aee2021-12-08 17:04:34 -0800707 method public void onShutDown();
Anton Hansson180d9562020-01-17 19:03:34 +0000708 }
709
Nate Jiang702d6172020-10-19 15:29:29 -0700710 public final class AwareResources implements android.os.Parcelable {
Nate Jiang88247122021-03-03 18:27:37 -0800711 ctor public AwareResources(@IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int);
Nate Jiang702d6172020-10-19 15:29:29 -0700712 method public int describeContents();
Nate Jiangaf770eb2021-01-12 13:15:37 -0800713 method @IntRange(from=0) public int getAvailableDataPathsCount();
714 method @IntRange(from=0) public int getAvailablePublishSessionsCount();
715 method @IntRange(from=0) public int getAvailableSubscribeSessionsCount();
Nate Jiang702d6172020-10-19 15:29:29 -0700716 method public void writeToParcel(@NonNull android.os.Parcel, int);
717 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.AwareResources> CREATOR;
718 }
719
Anton Hansson180d9562020-01-17 19:03:34 +0000720 public final class Characteristics implements android.os.Parcelable {
721 method public int describeContents();
722 method public int getMaxMatchFilterLength();
723 method public int getMaxServiceNameLength();
724 method public int getMaxServiceSpecificInfoLength();
Nate Jiang4b6e5352021-11-10 16:29:26 -0800725 method @IntRange(from=1) public int getNumberOfSupportedDataInterfaces();
726 method @IntRange(from=1) public int getNumberOfSupportedDataPaths();
727 method @IntRange(from=1) public int getNumberOfSupportedPublishSessions();
728 method @IntRange(from=1) public int getNumberOfSupportedSubscribeSessions();
Anton Hansson180d9562020-01-17 19:03:34 +0000729 method public int getSupportedCipherSuites();
Nate Jiangecdc6582020-10-09 11:33:04 -0700730 method public boolean isInstantCommunicationModeSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000731 method public void writeToParcel(android.os.Parcel, int);
732 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.Characteristics> CREATOR;
733 field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_128 = 1; // 0x1
734 field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_256 = 2; // 0x2
735 }
736
737 public class DiscoverySession implements java.lang.AutoCloseable {
738 method public void close();
739 method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierOpen(@NonNull android.net.wifi.aware.PeerHandle);
740 method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPassphrase(@NonNull android.net.wifi.aware.PeerHandle, @NonNull String);
741 method public void sendMessage(@NonNull android.net.wifi.aware.PeerHandle, int, @Nullable byte[]);
742 }
743
744 public class DiscoverySessionCallback {
745 ctor public DiscoverySessionCallback();
746 method public void onMessageReceived(android.net.wifi.aware.PeerHandle, byte[]);
747 method public void onMessageSendFailed(int);
748 method public void onMessageSendSucceeded(int);
749 method public void onPublishStarted(@NonNull android.net.wifi.aware.PublishDiscoverySession);
750 method public void onServiceDiscovered(android.net.wifi.aware.PeerHandle, byte[], java.util.List<byte[]>);
751 method public void onServiceDiscoveredWithinRange(android.net.wifi.aware.PeerHandle, byte[], java.util.List<byte[]>, int);
Nate Jiangf9a50c02020-10-14 14:35:52 -0700752 method public void onServiceLost(@NonNull android.net.wifi.aware.PeerHandle, int);
Anton Hansson180d9562020-01-17 19:03:34 +0000753 method public void onSessionConfigFailed();
754 method public void onSessionConfigUpdated();
755 method public void onSessionTerminated();
756 method public void onSubscribeStarted(@NonNull android.net.wifi.aware.SubscribeDiscoverySession);
757 }
758
759 public class IdentityChangedListener {
760 ctor public IdentityChangedListener();
761 method public void onIdentityChanged(byte[]);
762 }
763
764 public final class ParcelablePeerHandle extends android.net.wifi.aware.PeerHandle implements android.os.Parcelable {
765 ctor public ParcelablePeerHandle(@NonNull android.net.wifi.aware.PeerHandle);
766 method public int describeContents();
767 method public void writeToParcel(android.os.Parcel, int);
768 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.ParcelablePeerHandle> CREATOR;
769 }
770
771 public class PeerHandle {
772 }
773
774 public final class PublishConfig implements android.os.Parcelable {
775 method public int describeContents();
776 method public void writeToParcel(android.os.Parcel, int);
777 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.PublishConfig> CREATOR;
778 field public static final int PUBLISH_TYPE_SOLICITED = 1; // 0x1
779 field public static final int PUBLISH_TYPE_UNSOLICITED = 0; // 0x0
780 }
781
782 public static final class PublishConfig.Builder {
783 ctor public PublishConfig.Builder();
784 method public android.net.wifi.aware.PublishConfig build();
785 method public android.net.wifi.aware.PublishConfig.Builder setMatchFilter(@Nullable java.util.List<byte[]>);
786 method public android.net.wifi.aware.PublishConfig.Builder setPublishType(int);
787 method public android.net.wifi.aware.PublishConfig.Builder setRangingEnabled(boolean);
788 method public android.net.wifi.aware.PublishConfig.Builder setServiceName(@NonNull String);
789 method public android.net.wifi.aware.PublishConfig.Builder setServiceSpecificInfo(@Nullable byte[]);
790 method public android.net.wifi.aware.PublishConfig.Builder setTerminateNotificationEnabled(boolean);
791 method public android.net.wifi.aware.PublishConfig.Builder setTtlSec(int);
792 }
793
794 public class PublishDiscoverySession extends android.net.wifi.aware.DiscoverySession {
795 method public void updatePublish(@NonNull android.net.wifi.aware.PublishConfig);
796 }
797
798 public final class SubscribeConfig implements android.os.Parcelable {
799 method public int describeContents();
800 method public void writeToParcel(android.os.Parcel, int);
801 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.SubscribeConfig> CREATOR;
802 field public static final int SUBSCRIBE_TYPE_ACTIVE = 1; // 0x1
803 field public static final int SUBSCRIBE_TYPE_PASSIVE = 0; // 0x0
804 }
805
806 public static final class SubscribeConfig.Builder {
807 ctor public SubscribeConfig.Builder();
808 method public android.net.wifi.aware.SubscribeConfig build();
809 method public android.net.wifi.aware.SubscribeConfig.Builder setMatchFilter(@Nullable java.util.List<byte[]>);
810 method public android.net.wifi.aware.SubscribeConfig.Builder setMaxDistanceMm(int);
811 method public android.net.wifi.aware.SubscribeConfig.Builder setMinDistanceMm(int);
812 method public android.net.wifi.aware.SubscribeConfig.Builder setServiceName(@NonNull String);
813 method public android.net.wifi.aware.SubscribeConfig.Builder setServiceSpecificInfo(@Nullable byte[]);
814 method public android.net.wifi.aware.SubscribeConfig.Builder setSubscribeType(int);
815 method public android.net.wifi.aware.SubscribeConfig.Builder setTerminateNotificationEnabled(boolean);
816 method public android.net.wifi.aware.SubscribeConfig.Builder setTtlSec(int);
817 }
818
819 public class SubscribeDiscoverySession extends android.net.wifi.aware.DiscoverySession {
820 method public void updateSubscribe(@NonNull android.net.wifi.aware.SubscribeConfig);
821 }
822
Nate Jiangdcc6f022022-01-11 12:31:56 -0800823 public final class WifiAwareChannelInfo implements android.os.Parcelable {
824 method public int describeContents();
825 method @IntRange(from=0) public int getChannelBandwidth();
826 method @IntRange(from=0) public int getChannelFreqInMhz();
827 method @IntRange(from=0) public int getNumSpatialStreams();
828 method public void writeToParcel(@NonNull android.os.Parcel, int);
829 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareChannelInfo> CREATOR;
830 }
831
Anton Hansson180d9562020-01-17 19:03:34 +0000832 public class WifiAwareManager {
xshuc16c5d02021-11-17 18:47:57 -0800833 method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_STATE}) public void attach(@NonNull android.net.wifi.aware.AttachCallback, @Nullable android.os.Handler);
834 method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.NEARBY_WIFI_DEVICES}, conditional=true) public void attach(@NonNull android.net.wifi.aware.AttachCallback, @NonNull android.net.wifi.aware.IdentityChangedListener, @Nullable android.os.Handler);
Nate Jiang38b1ec22022-01-11 15:10:22 -0800835 method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.aware.AwareResources getAvailableAwareResources();
836 method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.aware.Characteristics getCharacteristics();
837 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isAvailable();
838 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isDeviceAttached();
839 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isInstantCommunicationModeEnabled();
840 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isSetChannelOnDataPathSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000841 field public static final String ACTION_WIFI_AWARE_STATE_CHANGED = "android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED";
842 field public static final int WIFI_AWARE_DATA_PATH_ROLE_INITIATOR = 0; // 0x0
843 field public static final int WIFI_AWARE_DATA_PATH_ROLE_RESPONDER = 1; // 0x1
Nate Jiangf9a50c02020-10-14 14:35:52 -0700844 field public static final int WIFI_AWARE_DISCOVERY_LOST_REASON_PEER_NOT_VISIBLE = 1; // 0x1
845 field public static final int WIFI_AWARE_DISCOVERY_LOST_REASON_UNKNOWN = 0; // 0x0
Anton Hansson180d9562020-01-17 19:03:34 +0000846 }
847
848 public final class WifiAwareNetworkInfo implements android.os.Parcelable android.net.TransportInfo {
849 method public int describeContents();
Nate Jiangdcc6f022022-01-11 12:31:56 -0800850 method @NonNull public java.util.List<android.net.wifi.aware.WifiAwareChannelInfo> getChannelInfos();
Anton Hansson180d9562020-01-17 19:03:34 +0000851 method @Nullable public java.net.Inet6Address getPeerIpv6Addr();
852 method public int getPort();
853 method public int getTransportProtocol();
854 method public void writeToParcel(android.os.Parcel, int);
855 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareNetworkInfo> CREATOR;
856 }
857
858 public final class WifiAwareNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
859 method public int describeContents();
Nate Jiang38b1ec22022-01-11 15:10:22 -0800860 method @IntRange(from=0) public int getChannelInMhz();
861 method public boolean isChannelRequired();
Anton Hansson180d9562020-01-17 19:03:34 +0000862 method public void writeToParcel(android.os.Parcel, int);
863 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareNetworkSpecifier> CREATOR;
864 }
865
866 public static final class WifiAwareNetworkSpecifier.Builder {
867 ctor public WifiAwareNetworkSpecifier.Builder(@NonNull android.net.wifi.aware.DiscoverySession, @NonNull android.net.wifi.aware.PeerHandle);
Nate Jiangef614452021-01-11 16:23:01 -0800868 ctor public WifiAwareNetworkSpecifier.Builder(@NonNull android.net.wifi.aware.PublishDiscoverySession);
Anton Hansson180d9562020-01-17 19:03:34 +0000869 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier build();
Nate Jiang38b1ec22022-01-11 15:10:22 -0800870 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setChannelInMhz(@IntRange(from=0) int, boolean);
Anton Hansson180d9562020-01-17 19:03:34 +0000871 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPmk(@NonNull byte[]);
872 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPort(@IntRange(from=0, to=65535) int);
873 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPskPassphrase(@NonNull String);
874 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setTransportProtocol(@IntRange(from=0, to=255) int);
875 }
876
877 public class WifiAwareSession implements java.lang.AutoCloseable {
878 method public void close();
Nate Jiang6b3ae392021-03-01 15:16:18 -0800879 method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierOpen(int, @NonNull byte[]);
880 method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPassphrase(int, @NonNull byte[], @NonNull String);
xshuc16c5d02021-11-17 18:47:57 -0800881 method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.NEARBY_WIFI_DEVICES}, conditional=true) public void publish(@NonNull android.net.wifi.aware.PublishConfig, @NonNull android.net.wifi.aware.DiscoverySessionCallback, @Nullable android.os.Handler);
882 method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.NEARBY_WIFI_DEVICES}, conditional=true) public void subscribe(@NonNull android.net.wifi.aware.SubscribeConfig, @NonNull android.net.wifi.aware.DiscoverySessionCallback, @Nullable android.os.Handler);
Anton Hansson180d9562020-01-17 19:03:34 +0000883 }
884
885}
886
887package android.net.wifi.hotspot2 {
888
889 public final class ConfigParser {
890 method public static android.net.wifi.hotspot2.PasspointConfiguration parsePasspointConfig(String, byte[]);
891 }
892
893 public final class PasspointConfiguration implements android.os.Parcelable {
894 ctor public PasspointConfiguration();
895 ctor public PasspointConfiguration(android.net.wifi.hotspot2.PasspointConfiguration);
896 method public int describeContents();
897 method public android.net.wifi.hotspot2.pps.Credential getCredential();
Hai Shalom1d362632021-03-12 15:00:50 -0800898 method @Nullable public String getDecoratedIdentityPrefix();
Anton Hansson180d9562020-01-17 19:03:34 +0000899 method public android.net.wifi.hotspot2.pps.HomeSp getHomeSp();
900 method public long getSubscriptionExpirationTimeMillis();
901 method @NonNull public String getUniqueId();
902 method public boolean isOsuProvisioned();
903 method public void setCredential(android.net.wifi.hotspot2.pps.Credential);
Hai Shalom1d362632021-03-12 15:00:50 -0800904 method public void setDecoratedIdentityPrefix(@Nullable String);
Anton Hansson180d9562020-01-17 19:03:34 +0000905 method public void setHomeSp(android.net.wifi.hotspot2.pps.HomeSp);
906 method public void writeToParcel(android.os.Parcel, int);
907 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.PasspointConfiguration> CREATOR;
908 }
909
910}
911
912package android.net.wifi.hotspot2.omadm {
913
914 public final class PpsMoParser {
915 method public static android.net.wifi.hotspot2.PasspointConfiguration parseMoText(String);
916 }
917
918}
919
920package android.net.wifi.hotspot2.pps {
921
922 public final class Credential implements android.os.Parcelable {
923 ctor public Credential();
924 ctor public Credential(android.net.wifi.hotspot2.pps.Credential);
925 method public int describeContents();
926 method public java.security.cert.X509Certificate getCaCertificate();
927 method public android.net.wifi.hotspot2.pps.Credential.CertificateCredential getCertCredential();
928 method public java.security.cert.X509Certificate[] getClientCertificateChain();
929 method public java.security.PrivateKey getClientPrivateKey();
930 method public String getRealm();
931 method public android.net.wifi.hotspot2.pps.Credential.SimCredential getSimCredential();
932 method public android.net.wifi.hotspot2.pps.Credential.UserCredential getUserCredential();
933 method public void setCaCertificate(java.security.cert.X509Certificate);
934 method public void setCertCredential(android.net.wifi.hotspot2.pps.Credential.CertificateCredential);
935 method public void setClientCertificateChain(java.security.cert.X509Certificate[]);
936 method public void setClientPrivateKey(java.security.PrivateKey);
937 method public void setRealm(String);
938 method public void setSimCredential(android.net.wifi.hotspot2.pps.Credential.SimCredential);
939 method public void setUserCredential(android.net.wifi.hotspot2.pps.Credential.UserCredential);
940 method public void writeToParcel(android.os.Parcel, int);
941 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential> CREATOR;
942 }
943
944 public static final class Credential.CertificateCredential implements android.os.Parcelable {
945 ctor public Credential.CertificateCredential();
946 ctor public Credential.CertificateCredential(android.net.wifi.hotspot2.pps.Credential.CertificateCredential);
947 method public int describeContents();
948 method public byte[] getCertSha256Fingerprint();
949 method public String getCertType();
950 method public void setCertSha256Fingerprint(byte[]);
951 method public void setCertType(String);
952 method public void writeToParcel(android.os.Parcel, int);
953 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.CertificateCredential> CREATOR;
954 }
955
956 public static final class Credential.SimCredential implements android.os.Parcelable {
957 ctor public Credential.SimCredential();
958 ctor public Credential.SimCredential(android.net.wifi.hotspot2.pps.Credential.SimCredential);
959 method public int describeContents();
960 method public int getEapType();
961 method public String getImsi();
962 method public void setEapType(int);
963 method public void setImsi(String);
964 method public void writeToParcel(android.os.Parcel, int);
965 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.SimCredential> CREATOR;
966 }
967
968 public static final class Credential.UserCredential implements android.os.Parcelable {
969 ctor public Credential.UserCredential();
970 ctor public Credential.UserCredential(android.net.wifi.hotspot2.pps.Credential.UserCredential);
971 method public int describeContents();
972 method public int getEapType();
973 method public String getNonEapInnerMethod();
974 method public String getPassword();
975 method public String getUsername();
976 method public void setEapType(int);
977 method public void setNonEapInnerMethod(String);
978 method public void setPassword(String);
979 method public void setUsername(String);
980 method public void writeToParcel(android.os.Parcel, int);
981 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.UserCredential> CREATOR;
982 }
983
984 public final class HomeSp implements android.os.Parcelable {
985 ctor public HomeSp();
986 ctor public HomeSp(android.net.wifi.hotspot2.pps.HomeSp);
987 method public int describeContents();
988 method public String getFqdn();
989 method public String getFriendlyName();
Hai Shalomac2e9dc2020-09-15 15:32:11 -0700990 method @Nullable public long[] getMatchAllOis();
991 method @Nullable public long[] getMatchAnyOis();
Hai Shalome2853f12020-10-14 18:21:52 -0700992 method @NonNull public java.util.Collection<java.lang.String> getOtherHomePartnersList();
Anton Hansson180d9562020-01-17 19:03:34 +0000993 method public long[] getRoamingConsortiumOis();
994 method public void setFqdn(String);
995 method public void setFriendlyName(String);
Hai Shalomac2e9dc2020-09-15 15:32:11 -0700996 method public void setMatchAllOis(@Nullable long[]);
997 method public void setMatchAnyOis(@Nullable long[]);
Hai Shalome2853f12020-10-14 18:21:52 -0700998 method public void setOtherHomePartnersList(@NonNull java.util.Collection<java.lang.String>);
Anton Hansson180d9562020-01-17 19:03:34 +0000999 method public void setRoamingConsortiumOis(long[]);
1000 method public void writeToParcel(android.os.Parcel, int);
1001 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.HomeSp> CREATOR;
1002 }
1003
1004}
1005
1006package android.net.wifi.p2p {
1007
1008 public class WifiP2pConfig implements android.os.Parcelable {
1009 ctor public WifiP2pConfig();
1010 ctor public WifiP2pConfig(android.net.wifi.p2p.WifiP2pConfig);
1011 method public int describeContents();
1012 method public int getGroupOwnerBand();
1013 method public int getNetworkId();
1014 method @Nullable public String getNetworkName();
1015 method @Nullable public String getPassphrase();
1016 method public void writeToParcel(android.os.Parcel, int);
1017 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pConfig> CREATOR;
1018 field public static final int GROUP_OWNER_BAND_2GHZ = 1; // 0x1
1019 field public static final int GROUP_OWNER_BAND_5GHZ = 2; // 0x2
1020 field public static final int GROUP_OWNER_BAND_AUTO = 0; // 0x0
1021 field public static final int GROUP_OWNER_INTENT_AUTO = -1; // 0xffffffff
1022 field public static final int GROUP_OWNER_INTENT_MAX = 15; // 0xf
1023 field public static final int GROUP_OWNER_INTENT_MIN = 0; // 0x0
1024 field public String deviceAddress;
1025 field @IntRange(from=0, to=15) public int groupOwnerIntent;
1026 field public android.net.wifi.WpsInfo wps;
1027 }
1028
1029 public static final class WifiP2pConfig.Builder {
1030 ctor public WifiP2pConfig.Builder();
1031 method @NonNull public android.net.wifi.p2p.WifiP2pConfig build();
1032 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder enablePersistentMode(boolean);
1033 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setDeviceAddress(@Nullable android.net.MacAddress);
1034 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setGroupOperatingBand(int);
1035 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setGroupOperatingFrequency(int);
1036 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setNetworkName(@NonNull String);
1037 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setPassphrase(@NonNull String);
1038 }
1039
1040 public class WifiP2pDevice implements android.os.Parcelable {
1041 ctor public WifiP2pDevice();
1042 ctor public WifiP2pDevice(android.net.wifi.p2p.WifiP2pDevice);
1043 method public int describeContents();
1044 method @Nullable public android.net.wifi.p2p.WifiP2pWfdInfo getWfdInfo();
1045 method public boolean isGroupOwner();
1046 method public boolean isServiceDiscoveryCapable();
1047 method public void update(@NonNull android.net.wifi.p2p.WifiP2pDevice);
1048 method public boolean wpsDisplaySupported();
1049 method public boolean wpsKeypadSupported();
1050 method public boolean wpsPbcSupported();
1051 method public void writeToParcel(android.os.Parcel, int);
1052 field public static final int AVAILABLE = 3; // 0x3
1053 field public static final int CONNECTED = 0; // 0x0
1054 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pDevice> CREATOR;
1055 field public static final int FAILED = 2; // 0x2
1056 field public static final int INVITED = 1; // 0x1
1057 field public static final int UNAVAILABLE = 4; // 0x4
1058 field public String deviceAddress;
1059 field public String deviceName;
1060 field public String primaryDeviceType;
1061 field public String secondaryDeviceType;
1062 field public int status;
1063 }
1064
1065 public class WifiP2pDeviceList implements android.os.Parcelable {
1066 ctor public WifiP2pDeviceList();
1067 ctor public WifiP2pDeviceList(android.net.wifi.p2p.WifiP2pDeviceList);
1068 method public int describeContents();
1069 method public android.net.wifi.p2p.WifiP2pDevice get(String);
1070 method public java.util.Collection<android.net.wifi.p2p.WifiP2pDevice> getDeviceList();
1071 method public void writeToParcel(android.os.Parcel, int);
1072 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pDeviceList> CREATOR;
1073 }
1074
1075 public class WifiP2pGroup implements android.os.Parcelable {
1076 ctor public WifiP2pGroup();
1077 ctor public WifiP2pGroup(android.net.wifi.p2p.WifiP2pGroup);
1078 method public int describeContents();
1079 method public java.util.Collection<android.net.wifi.p2p.WifiP2pDevice> getClientList();
1080 method public int getFrequency();
1081 method public String getInterface();
1082 method public int getNetworkId();
1083 method public String getNetworkName();
1084 method public android.net.wifi.p2p.WifiP2pDevice getOwner();
1085 method public String getPassphrase();
1086 method public boolean isGroupOwner();
1087 method public void writeToParcel(android.os.Parcel, int);
1088 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pGroup> CREATOR;
1089 field public static final int NETWORK_ID_PERSISTENT = -2; // 0xfffffffe
1090 field public static final int NETWORK_ID_TEMPORARY = -1; // 0xffffffff
1091 }
1092
1093 public class WifiP2pInfo implements android.os.Parcelable {
1094 ctor public WifiP2pInfo();
1095 ctor public WifiP2pInfo(android.net.wifi.p2p.WifiP2pInfo);
1096 method public int describeContents();
1097 method public void writeToParcel(android.os.Parcel, int);
1098 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pInfo> CREATOR;
1099 field public boolean groupFormed;
1100 field public java.net.InetAddress groupOwnerAddress;
1101 field public boolean isGroupOwner;
1102 }
1103
1104 public class WifiP2pManager {
xshu34fe9862021-12-03 18:39:36 -08001105 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void addLocalService(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener);
Anton Hansson180d9562020-01-17 19:03:34 +00001106 method public void addServiceRequest(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceRequest, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1107 method public void cancelConnect(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1108 method public void clearLocalServices(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1109 method public void clearServiceRequests(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
xshu34fe9862021-12-03 18:39:36 -08001110 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void connect(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pConfig, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1111 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void createGroup(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1112 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void createGroup(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pConfig, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
1113 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void discoverPeers(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1114 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void discoverServices(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
Anton Hansson180d9562020-01-17 19:03:34 +00001115 method public android.net.wifi.p2p.WifiP2pManager.Channel initialize(android.content.Context, android.os.Looper, android.net.wifi.p2p.WifiP2pManager.ChannelListener);
1116 method public void removeGroup(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1117 method public void removeLocalService(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1118 method public void removeServiceRequest(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceRequest, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1119 method public void requestConnectionInfo(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ConnectionInfoListener);
xshu34fe9862021-12-03 18:39:36 -08001120 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void requestDeviceInfo(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.DeviceInfoListener);
Anton Hansson180d9562020-01-17 19:03:34 +00001121 method public void requestDiscoveryState(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.DiscoveryStateListener);
xshu34fe9862021-12-03 18:39:36 -08001122 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void requestGroupInfo(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.GroupInfoListener);
Anton Hansson180d9562020-01-17 19:03:34 +00001123 method public void requestNetworkInfo(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.NetworkInfoListener);
1124 method public void requestP2pState(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.P2pStateListener);
xshu34fe9862021-12-03 18:39:36 -08001125 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void requestPeers(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.PeerListListener);
Anton Hansson180d9562020-01-17 19:03:34 +00001126 method public void setDnsSdResponseListeners(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.DnsSdServiceResponseListener, android.net.wifi.p2p.WifiP2pManager.DnsSdTxtRecordListener);
1127 method public void setServiceResponseListener(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ServiceResponseListener);
1128 method public void setUpnpServiceResponseListener(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.UpnpServiceResponseListener);
xshu63f3e8f2021-12-09 12:25:44 -08001129 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void startListening(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
Jimmy Chen4e68cbe2021-11-19 16:06:59 +08001130 method public void stopListening(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
Anton Hansson180d9562020-01-17 19:03:34 +00001131 method public void stopPeerDiscovery(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1132 field public static final int BUSY = 2; // 0x2
1133 field public static final int ERROR = 0; // 0x0
1134 field public static final String EXTRA_DISCOVERY_STATE = "discoveryState";
1135 field public static final String EXTRA_NETWORK_INFO = "networkInfo";
1136 field public static final String EXTRA_P2P_DEVICE_LIST = "wifiP2pDeviceList";
1137 field public static final String EXTRA_WIFI_P2P_DEVICE = "wifiP2pDevice";
1138 field public static final String EXTRA_WIFI_P2P_GROUP = "p2pGroupInfo";
1139 field public static final String EXTRA_WIFI_P2P_INFO = "wifiP2pInfo";
1140 field public static final String EXTRA_WIFI_STATE = "wifi_p2p_state";
1141 field public static final int NO_SERVICE_REQUESTS = 3; // 0x3
1142 field public static final int P2P_UNSUPPORTED = 1; // 0x1
1143 field public static final String WIFI_P2P_CONNECTION_CHANGED_ACTION = "android.net.wifi.p2p.CONNECTION_STATE_CHANGE";
1144 field public static final String WIFI_P2P_DISCOVERY_CHANGED_ACTION = "android.net.wifi.p2p.DISCOVERY_STATE_CHANGE";
1145 field public static final int WIFI_P2P_DISCOVERY_STARTED = 2; // 0x2
1146 field public static final int WIFI_P2P_DISCOVERY_STOPPED = 1; // 0x1
1147 field public static final String WIFI_P2P_PEERS_CHANGED_ACTION = "android.net.wifi.p2p.PEERS_CHANGED";
1148 field public static final String WIFI_P2P_STATE_CHANGED_ACTION = "android.net.wifi.p2p.STATE_CHANGED";
1149 field public static final int WIFI_P2P_STATE_DISABLED = 1; // 0x1
1150 field public static final int WIFI_P2P_STATE_ENABLED = 2; // 0x2
1151 field public static final String WIFI_P2P_THIS_DEVICE_CHANGED_ACTION = "android.net.wifi.p2p.THIS_DEVICE_CHANGED";
1152 }
1153
1154 public static interface WifiP2pManager.ActionListener {
1155 method public void onFailure(int);
1156 method public void onSuccess();
1157 }
1158
1159 public static class WifiP2pManager.Channel implements java.lang.AutoCloseable {
1160 method public void close();
1161 }
1162
1163 public static interface WifiP2pManager.ChannelListener {
1164 method public void onChannelDisconnected();
1165 }
1166
1167 public static interface WifiP2pManager.ConnectionInfoListener {
1168 method public void onConnectionInfoAvailable(android.net.wifi.p2p.WifiP2pInfo);
1169 }
1170
1171 public static interface WifiP2pManager.DeviceInfoListener {
1172 method public void onDeviceInfoAvailable(@Nullable android.net.wifi.p2p.WifiP2pDevice);
1173 }
1174
1175 public static interface WifiP2pManager.DiscoveryStateListener {
1176 method public void onDiscoveryStateAvailable(int);
1177 }
1178
1179 public static interface WifiP2pManager.DnsSdServiceResponseListener {
1180 method public void onDnsSdServiceAvailable(String, String, android.net.wifi.p2p.WifiP2pDevice);
1181 }
1182
1183 public static interface WifiP2pManager.DnsSdTxtRecordListener {
1184 method public void onDnsSdTxtRecordAvailable(String, java.util.Map<java.lang.String,java.lang.String>, android.net.wifi.p2p.WifiP2pDevice);
1185 }
1186
1187 public static interface WifiP2pManager.GroupInfoListener {
1188 method public void onGroupInfoAvailable(android.net.wifi.p2p.WifiP2pGroup);
1189 }
1190
1191 public static interface WifiP2pManager.NetworkInfoListener {
1192 method public void onNetworkInfoAvailable(@NonNull android.net.NetworkInfo);
1193 }
1194
1195 public static interface WifiP2pManager.P2pStateListener {
1196 method public void onP2pStateAvailable(int);
1197 }
1198
1199 public static interface WifiP2pManager.PeerListListener {
1200 method public void onPeersAvailable(android.net.wifi.p2p.WifiP2pDeviceList);
1201 }
1202
1203 public static interface WifiP2pManager.ServiceResponseListener {
1204 method public void onServiceAvailable(int, byte[], android.net.wifi.p2p.WifiP2pDevice);
1205 }
1206
1207 public static interface WifiP2pManager.UpnpServiceResponseListener {
1208 method public void onUpnpServiceAvailable(java.util.List<java.lang.String>, android.net.wifi.p2p.WifiP2pDevice);
1209 }
1210
1211 public final class WifiP2pWfdInfo implements android.os.Parcelable {
1212 ctor public WifiP2pWfdInfo();
1213 ctor public WifiP2pWfdInfo(@Nullable android.net.wifi.p2p.WifiP2pWfdInfo);
1214 method public int describeContents();
1215 method public int getControlPort();
Jimmy Chen4ada7922021-03-23 14:31:03 +08001216 method public int getDeviceInfo();
Anton Hansson180d9562020-01-17 19:03:34 +00001217 method public int getDeviceType();
1218 method public int getMaxThroughput();
Jimmy Chen4ada7922021-03-23 14:31:03 +08001219 method public int getR2DeviceInfo();
Jimmy Chen7ddb4502021-03-18 12:30:13 +08001220 method public int getR2DeviceType();
Anton Hansson180d9562020-01-17 19:03:34 +00001221 method public boolean isContentProtectionSupported();
Jimmy Chena5e551b2021-03-05 16:42:39 +08001222 method public boolean isCoupledSinkSupportedAtSink();
1223 method public boolean isCoupledSinkSupportedAtSource();
Anton Hansson180d9562020-01-17 19:03:34 +00001224 method public boolean isEnabled();
Jimmy Chenec558292021-03-18 17:41:06 +08001225 method public boolean isR2Supported();
Anton Hansson180d9562020-01-17 19:03:34 +00001226 method public boolean isSessionAvailable();
1227 method public void setContentProtectionSupported(boolean);
1228 method public void setControlPort(@IntRange(from=0) int);
Jimmy Chena5e551b2021-03-05 16:42:39 +08001229 method public void setCoupledSinkSupportAtSink(boolean);
1230 method public void setCoupledSinkSupportAtSource(boolean);
Anton Hansson180d9562020-01-17 19:03:34 +00001231 method public boolean setDeviceType(int);
1232 method public void setEnabled(boolean);
1233 method public void setMaxThroughput(@IntRange(from=0) int);
Jimmy Chenec558292021-03-18 17:41:06 +08001234 method public boolean setR2DeviceType(int);
Anton Hansson180d9562020-01-17 19:03:34 +00001235 method public void setSessionAvailable(boolean);
1236 method public void writeToParcel(@NonNull android.os.Parcel, int);
1237 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pWfdInfo> CREATOR;
Jimmy Chen012448d2021-03-30 17:37:52 +08001238 field public static final int DEVICE_INFO_AUDIO_ONLY_SUPPORT_AT_SOURCE = 2048; // 0x800
1239 field public static final int DEVICE_INFO_AUDIO_UNSUPPORTED_AT_PRIMARY_SINK = 1024; // 0x400
1240 field public static final int DEVICE_INFO_CONTENT_PROTECTION_SUPPORT = 256; // 0x100
1241 field public static final int DEVICE_INFO_COUPLED_SINK_SUPPORT_AT_SINK = 8; // 0x8
1242 field public static final int DEVICE_INFO_COUPLED_SINK_SUPPORT_AT_SOURCE = 4; // 0x4
1243 field public static final int DEVICE_INFO_DEVICE_TYPE_MASK = 3; // 0x3
1244 field public static final int DEVICE_INFO_PREFERRED_CONNECTIVITY_MASK = 128; // 0x80
1245 field public static final int DEVICE_INFO_SESSION_AVAILABLE_MASK = 48; // 0x30
1246 field public static final int DEVICE_INFO_TDLS_PERSISTENT_GROUP = 4096; // 0x1000
1247 field public static final int DEVICE_INFO_TDLS_PERSISTENT_GROUP_REINVOKE = 8192; // 0x2000
1248 field public static final int DEVICE_INFO_TIME_SYNCHRONIZATION_SUPPORT = 512; // 0x200
1249 field public static final int DEVICE_INFO_WFD_SERVICE_DISCOVERY_SUPPORT = 64; // 0x40
Anton Hansson180d9562020-01-17 19:03:34 +00001250 field public static final int DEVICE_TYPE_PRIMARY_SINK = 1; // 0x1
1251 field public static final int DEVICE_TYPE_SECONDARY_SINK = 2; // 0x2
1252 field public static final int DEVICE_TYPE_SOURCE_OR_PRIMARY_SINK = 3; // 0x3
1253 field public static final int DEVICE_TYPE_WFD_SOURCE = 0; // 0x0
Jimmy Chen4ada7922021-03-23 14:31:03 +08001254 field public static final int PREFERRED_CONNECTIVITY_P2P = 0; // 0x0
1255 field public static final int PREFERRED_CONNECTIVITY_TDLS = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +00001256 }
1257
1258}
1259
1260package android.net.wifi.p2p.nsd {
1261
1262 public class WifiP2pDnsSdServiceInfo extends android.net.wifi.p2p.nsd.WifiP2pServiceInfo {
1263 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceInfo newInstance(String, String, java.util.Map<java.lang.String,java.lang.String>);
1264 }
1265
1266 public class WifiP2pDnsSdServiceRequest extends android.net.wifi.p2p.nsd.WifiP2pServiceRequest {
1267 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance();
1268 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance(String);
1269 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance(String, String);
1270 }
1271
1272 public class WifiP2pServiceInfo implements android.os.Parcelable {
1273 method public int describeContents();
1274 method public void writeToParcel(android.os.Parcel, int);
1275 field public static final int SERVICE_TYPE_ALL = 0; // 0x0
1276 field public static final int SERVICE_TYPE_BONJOUR = 1; // 0x1
1277 field public static final int SERVICE_TYPE_UPNP = 2; // 0x2
1278 field public static final int SERVICE_TYPE_VENDOR_SPECIFIC = 255; // 0xff
1279 }
1280
1281 public class WifiP2pServiceRequest implements android.os.Parcelable {
1282 method public int describeContents();
1283 method public static android.net.wifi.p2p.nsd.WifiP2pServiceRequest newInstance(int, String);
1284 method public static android.net.wifi.p2p.nsd.WifiP2pServiceRequest newInstance(int);
1285 method public void writeToParcel(android.os.Parcel, int);
1286 }
1287
1288 public class WifiP2pUpnpServiceInfo extends android.net.wifi.p2p.nsd.WifiP2pServiceInfo {
1289 method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceInfo newInstance(String, String, java.util.List<java.lang.String>);
1290 }
1291
1292 public class WifiP2pUpnpServiceRequest extends android.net.wifi.p2p.nsd.WifiP2pServiceRequest {
1293 method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest newInstance();
1294 method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest newInstance(String);
1295 }
1296
1297}
1298
1299package android.net.wifi.rtt {
1300
1301 public class CivicLocationKeys {
1302 field public static final int ADDITIONAL_CODE = 32; // 0x20
1303 field public static final int APT = 26; // 0x1a
1304 field public static final int BOROUGH = 4; // 0x4
1305 field public static final int BRANCH_ROAD_NAME = 36; // 0x24
1306 field public static final int BUILDING = 25; // 0x19
1307 field public static final int CITY = 3; // 0x3
1308 field public static final int COUNTY = 2; // 0x2
1309 field public static final int DESK = 33; // 0x21
1310 field public static final int FLOOR = 27; // 0x1b
1311 field public static final int GROUP_OF_STREETS = 6; // 0x6
1312 field public static final int HNO = 19; // 0x13
1313 field public static final int HNS = 20; // 0x14
1314 field public static final int LANGUAGE = 0; // 0x0
1315 field public static final int LMK = 21; // 0x15
1316 field public static final int LOC = 22; // 0x16
1317 field public static final int NAM = 23; // 0x17
1318 field public static final int NEIGHBORHOOD = 5; // 0x5
1319 field public static final int PCN = 30; // 0x1e
1320 field public static final int POD = 17; // 0x11
1321 field public static final int POSTAL_CODE = 24; // 0x18
1322 field public static final int PO_BOX = 31; // 0x1f
1323 field public static final int PRD = 16; // 0x10
1324 field public static final int PRIMARY_ROAD_NAME = 34; // 0x22
1325 field public static final int ROAD_SECTION = 35; // 0x23
1326 field public static final int ROOM = 28; // 0x1c
1327 field public static final int SCRIPT = 128; // 0x80
1328 field public static final int STATE = 1; // 0x1
1329 field public static final int STREET_NAME_POST_MODIFIER = 39; // 0x27
1330 field public static final int STREET_NAME_PRE_MODIFIER = 38; // 0x26
1331 field public static final int STS = 18; // 0x12
1332 field public static final int SUBBRANCH_ROAD_NAME = 37; // 0x25
1333 field public static final int TYPE_OF_PLACE = 29; // 0x1d
1334 }
1335
1336 public final class RangingRequest implements android.os.Parcelable {
1337 method public int describeContents();
Roy Wantdd5825e2020-12-08 21:24:04 -08001338 method public static int getDefaultRttBurstSize();
Anton Hansson180d9562020-01-17 19:03:34 +00001339 method public static int getMaxPeers();
Roy Wantdd5825e2020-12-08 21:24:04 -08001340 method public static int getMaxRttBurstSize();
1341 method public static int getMinRttBurstSize();
1342 method public int getRttBurstSize();
Anton Hansson180d9562020-01-17 19:03:34 +00001343 method public void writeToParcel(android.os.Parcel, int);
1344 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.RangingRequest> CREATOR;
1345 }
1346
1347 public static final class RangingRequest.Builder {
1348 ctor public RangingRequest.Builder();
Roy Want50deac12021-12-19 15:15:35 -08001349 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addAccessPoint(@NonNull android.net.wifi.ScanResult);
1350 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addAccessPoints(@NonNull java.util.List<android.net.wifi.ScanResult>);
Roy Want8e5dea02020-12-18 19:56:30 -08001351 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addNon80211mcCapableAccessPoint(@NonNull android.net.wifi.ScanResult);
1352 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addNon80211mcCapableAccessPoints(@NonNull java.util.List<android.net.wifi.ScanResult>);
Roy Want50deac12021-12-19 15:15:35 -08001353 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addResponder(@NonNull android.net.wifi.rtt.ResponderConfig);
1354 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addResponders(@NonNull java.util.List<android.net.wifi.rtt.ResponderConfig>);
Anton Hansson180d9562020-01-17 19:03:34 +00001355 method public android.net.wifi.rtt.RangingRequest.Builder addWifiAwarePeer(@NonNull android.net.MacAddress);
1356 method public android.net.wifi.rtt.RangingRequest.Builder addWifiAwarePeer(@NonNull android.net.wifi.aware.PeerHandle);
1357 method public android.net.wifi.rtt.RangingRequest build();
Roy Wantdd5825e2020-12-08 21:24:04 -08001358 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder setRttBurstSize(int);
Anton Hansson180d9562020-01-17 19:03:34 +00001359 }
1360
1361 public final class RangingResult implements android.os.Parcelable {
1362 method public int describeContents();
1363 method public int getDistanceMm();
1364 method public int getDistanceStdDevMm();
1365 method @Nullable public android.net.MacAddress getMacAddress();
1366 method public int getNumAttemptedMeasurements();
1367 method public int getNumSuccessfulMeasurements();
1368 method @Nullable public android.net.wifi.aware.PeerHandle getPeerHandle();
1369 method public long getRangingTimestampMillis();
1370 method public int getRssi();
1371 method public int getStatus();
1372 method @Nullable public android.net.wifi.rtt.ResponderLocation getUnverifiedResponderLocation();
Roy Want8e5dea02020-12-18 19:56:30 -08001373 method public boolean is80211mcMeasurement();
Anton Hansson180d9562020-01-17 19:03:34 +00001374 method public void writeToParcel(android.os.Parcel, int);
1375 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.RangingResult> CREATOR;
1376 field public static final int STATUS_FAIL = 1; // 0x1
1377 field public static final int STATUS_RESPONDER_DOES_NOT_SUPPORT_IEEE80211MC = 2; // 0x2
1378 field public static final int STATUS_SUCCESS = 0; // 0x0
1379 }
1380
1381 public abstract class RangingResultCallback {
1382 ctor public RangingResultCallback();
1383 method public abstract void onRangingFailure(int);
1384 method public abstract void onRangingResults(@NonNull java.util.List<android.net.wifi.rtt.RangingResult>);
1385 field public static final int STATUS_CODE_FAIL = 1; // 0x1
1386 field public static final int STATUS_CODE_FAIL_RTT_NOT_AVAILABLE = 2; // 0x2
1387 }
1388
Roy Want50deac12021-12-19 15:15:35 -08001389 public final class ResponderConfig implements android.os.Parcelable {
1390 method public int describeContents();
1391 method @NonNull public static android.net.wifi.rtt.ResponderConfig fromScanResult(@NonNull android.net.wifi.ScanResult);
1392 method public int getCenterFreq0Mhz();
1393 method public int getCenterFreq1Mhz();
1394 method public int getChannelWidth();
1395 method public int getFrequencyMhz();
1396 method @Nullable public android.net.MacAddress getMacAddress();
1397 method public int getPreamble();
1398 method public boolean is80211mcSupported();
1399 method public void writeToParcel(@NonNull android.os.Parcel, int);
1400 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderConfig> CREATOR;
1401 }
1402
1403 public static final class ResponderConfig.Builder {
1404 ctor public ResponderConfig.Builder();
1405 method @NonNull public android.net.wifi.rtt.ResponderConfig build();
1406 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder set80211mcSupported(boolean);
1407 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setCenterFreq0Mhz(int);
1408 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setCenterFreq1Mhz(int);
1409 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setChannelWidth(int);
1410 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setFrequencyMhz(int);
1411 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setMacAddress(@NonNull android.net.MacAddress);
1412 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setPreamble(int);
1413 }
1414
Anton Hansson180d9562020-01-17 19:03:34 +00001415 public final class ResponderLocation implements android.os.Parcelable {
1416 method public int describeContents();
1417 method public double getAltitude();
1418 method public int getAltitudeType();
1419 method public double getAltitudeUncertainty();
1420 method public java.util.List<android.net.MacAddress> getColocatedBssids();
1421 method public int getDatum();
1422 method public int getExpectedToMove();
1423 method public double getFloorNumber();
1424 method public double getHeightAboveFloorMeters();
1425 method public double getHeightAboveFloorUncertaintyMeters();
1426 method public double getLatitude();
1427 method public double getLatitudeUncertainty();
1428 method public int getLciVersion();
1429 method public double getLongitude();
1430 method public double getLongitudeUncertainty();
1431 method @Nullable public String getMapImageMimeType();
1432 method @Nullable public android.net.Uri getMapImageUri();
1433 method public boolean getRegisteredLocationAgreementIndication();
1434 method public boolean isLciSubelementValid();
1435 method public boolean isZaxisSubelementValid();
1436 method @Nullable public android.location.Address toCivicLocationAddress();
1437 method @Nullable public android.util.SparseArray<java.lang.String> toCivicLocationSparseArray();
1438 method @NonNull public android.location.Location toLocation();
1439 method public void writeToParcel(android.os.Parcel, int);
1440 field public static final int ALTITUDE_FLOORS = 2; // 0x2
1441 field public static final int ALTITUDE_METERS = 1; // 0x1
1442 field public static final int ALTITUDE_UNDEFINED = 0; // 0x0
1443 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderLocation> CREATOR;
1444 field public static final int DATUM_NAD83_MLLW = 3; // 0x3
1445 field public static final int DATUM_NAD83_NAV88 = 2; // 0x2
1446 field public static final int DATUM_UNDEFINED = 0; // 0x0
1447 field public static final int DATUM_WGS84 = 1; // 0x1
1448 field public static final int LCI_VERSION_1 = 1; // 0x1
1449 field public static final int LOCATION_FIXED = 0; // 0x0
1450 field public static final int LOCATION_MOVEMENT_UNKNOWN = 2; // 0x2
1451 field public static final int LOCATION_RESERVED = 3; // 0x3
1452 field public static final int LOCATION_VARIABLE = 1; // 0x1
1453 }
1454
1455 public class WifiRttManager {
1456 method public boolean isAvailable();
xshu9d932842021-11-18 17:20:38 -08001457 method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.CHANGE_WIFI_STATE, android.Manifest.permission.ACCESS_WIFI_STATE, android.Manifest.permission.NEARBY_WIFI_DEVICES}) public void startRanging(@NonNull android.net.wifi.rtt.RangingRequest, @NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.rtt.RangingResultCallback);
Anton Hansson180d9562020-01-17 19:03:34 +00001458 field public static final String ACTION_WIFI_RTT_STATE_CHANGED = "android.net.wifi.rtt.action.WIFI_RTT_STATE_CHANGED";
1459 }
1460
1461}
1462