blob: 3ed0f43d6e99d2a36e7d35150375adbbe8d2a7cc [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
Ahmed ElArabawy9a1bf192021-12-20 11:02:46 -080037 field public static final int CHANNEL_WIDTH_320MHZ = 5; // 0x5
Anton Hansson180d9562020-01-17 19:03:34 +000038 field public static final int CHANNEL_WIDTH_40MHZ = 1; // 0x1
39 field public static final int CHANNEL_WIDTH_80MHZ = 2; // 0x2
40 field public static final int CHANNEL_WIDTH_80MHZ_PLUS_MHZ = 4; // 0x4
41 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.ScanResult> CREATOR;
Ahmed ElArabawy9a1bf192021-12-20 11:02:46 -080042 field public static final int PREAMBLE_EHT = 4; // 0x4
Roy Want50deac12021-12-19 15:15:35 -080043 field public static final int PREAMBLE_HE = 3; // 0x3
44 field public static final int PREAMBLE_HT = 1; // 0x1
45 field public static final int PREAMBLE_LEGACY = 0; // 0x0
46 field public static final int PREAMBLE_VHT = 2; // 0x2
Quang Luong38dc3ea2021-10-12 14:44:18 -070047 field @Deprecated public String SSID;
lesl4c3ff122021-02-05 10:59:25 +080048 field public static final int UNSPECIFIED = -1; // 0xffffffff
49 field public static final int WIFI_BAND_24_GHZ = 1; // 0x1
50 field public static final int WIFI_BAND_5_GHZ = 2; // 0x2
51 field public static final int WIFI_BAND_60_GHZ = 16; // 0x10
52 field public static final int WIFI_BAND_6_GHZ = 8; // 0x8
Anton Hansson180d9562020-01-17 19:03:34 +000053 field public static final int WIFI_STANDARD_11AC = 5; // 0x5
Jimmy Chen6713cb02020-11-05 16:31:29 +080054 field public static final int WIFI_STANDARD_11AD = 7; // 0x7
Anton Hansson180d9562020-01-17 19:03:34 +000055 field public static final int WIFI_STANDARD_11AX = 6; // 0x6
Ahmed ElArabawy9a1bf192021-12-20 11:02:46 -080056 field public static final int WIFI_STANDARD_11BE = 8; // 0x8
Anton Hansson180d9562020-01-17 19:03:34 +000057 field public static final int WIFI_STANDARD_11N = 4; // 0x4
58 field public static final int WIFI_STANDARD_LEGACY = 1; // 0x1
59 field public static final int WIFI_STANDARD_UNKNOWN = 0; // 0x0
60 field public String capabilities;
61 field public int centerFreq0;
62 field public int centerFreq1;
63 field public int channelWidth;
64 field public int frequency;
65 field public int level;
Hai Shalom29706142020-12-30 14:46:11 -080066 field @Deprecated public CharSequence operatorFriendlyName;
Anton Hansson180d9562020-01-17 19:03:34 +000067 field public long timestamp;
Hai Shalom29706142020-12-30 14:46:11 -080068 field @Deprecated public CharSequence venueName;
Anton Hansson180d9562020-01-17 19:03:34 +000069 }
70
Roshan Piusc610e1f2021-01-13 15:17:18 +000071 public static class ScanResult.InformationElement implements android.os.Parcelable {
Serik Beketayev29a41e52022-01-31 12:51:49 -080072 ctor public ScanResult.InformationElement(int, int, @NonNull byte[]);
Anton Hansson180d9562020-01-17 19:03:34 +000073 ctor public ScanResult.InformationElement(@NonNull android.net.wifi.ScanResult.InformationElement);
Roshan Piusc610e1f2021-01-13 15:17:18 +000074 method public int describeContents();
Anton Hansson180d9562020-01-17 19:03:34 +000075 method @NonNull public java.nio.ByteBuffer getBytes();
76 method public int getId();
77 method public int getIdExt();
Roshan Piusc610e1f2021-01-13 15:17:18 +000078 method public void writeToParcel(android.os.Parcel, int);
79 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.ScanResult.InformationElement> CREATOR;
Anton Hansson180d9562020-01-17 19:03:34 +000080 }
81
82 public final class SoftApConfiguration implements android.os.Parcelable {
83 method public int describeContents();
84 method @Nullable public android.net.MacAddress getBssid();
85 method @Nullable public String getPassphrase();
86 method public int getSecurityType();
Quang Luongfedab902021-10-05 15:15:51 -070087 method @Deprecated @Nullable public String getSsid();
88 method @Nullable public android.net.wifi.WifiSsid getWifiSsid();
Anton Hansson180d9562020-01-17 19:03:34 +000089 method public boolean isHiddenSsid();
90 method public void writeToParcel(@NonNull android.os.Parcel, int);
91 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.SoftApConfiguration> CREATOR;
92 field public static final int SECURITY_TYPE_OPEN = 0; // 0x0
93 field public static final int SECURITY_TYPE_WPA2_PSK = 1; // 0x1
Ahmed ElArabawyf835ae82022-02-04 11:37:00 -080094 field public static final int SECURITY_TYPE_WPA3_OWE = 5; // 0x5
Purushottam Kushwahae57c5e12021-12-23 12:43:56 +053095 field public static final int SECURITY_TYPE_WPA3_OWE_TRANSITION = 4; // 0x4
Anton Hansson180d9562020-01-17 19:03:34 +000096 field public static final int SECURITY_TYPE_WPA3_SAE = 3; // 0x3
97 field public static final int SECURITY_TYPE_WPA3_SAE_TRANSITION = 2; // 0x2
98 }
99
100 public enum SupplicantState implements android.os.Parcelable {
101 method public int describeContents();
102 method public static boolean isValidState(android.net.wifi.SupplicantState);
103 method public void writeToParcel(android.os.Parcel, int);
104 enum_constant public static final android.net.wifi.SupplicantState ASSOCIATED;
105 enum_constant public static final android.net.wifi.SupplicantState ASSOCIATING;
106 enum_constant public static final android.net.wifi.SupplicantState AUTHENTICATING;
107 enum_constant public static final android.net.wifi.SupplicantState COMPLETED;
108 enum_constant public static final android.net.wifi.SupplicantState DISCONNECTED;
109 enum_constant public static final android.net.wifi.SupplicantState DORMANT;
110 enum_constant public static final android.net.wifi.SupplicantState FOUR_WAY_HANDSHAKE;
111 enum_constant public static final android.net.wifi.SupplicantState GROUP_HANDSHAKE;
112 enum_constant public static final android.net.wifi.SupplicantState INACTIVE;
113 enum_constant public static final android.net.wifi.SupplicantState INTERFACE_DISABLED;
114 enum_constant public static final android.net.wifi.SupplicantState INVALID;
115 enum_constant public static final android.net.wifi.SupplicantState SCANNING;
116 enum_constant public static final android.net.wifi.SupplicantState UNINITIALIZED;
117 }
118
119 @Deprecated public class WifiConfiguration implements android.os.Parcelable {
120 ctor @Deprecated public WifiConfiguration();
121 ctor @Deprecated public WifiConfiguration(@NonNull android.net.wifi.WifiConfiguration);
122 method public int describeContents();
123 method @Deprecated public android.net.ProxyInfo getHttpProxy();
124 method @Deprecated @NonNull public String getKey();
Stephanie Bak1ccc1bc2021-12-30 05:13:38 +0000125 method @Deprecated public int getMacRandomizationSetting();
Anton Hansson180d9562020-01-17 19:03:34 +0000126 method @Deprecated @NonNull public android.net.MacAddress getRandomizedMacAddress();
127 method @Deprecated public boolean isPasspoint();
128 method @Deprecated public void setHttpProxy(android.net.ProxyInfo);
Etan Cohenbb8da022022-02-06 20:50:48 +0000129 method @Deprecated public void setIpConfiguration(@Nullable android.net.IpConfiguration);
Stephanie Bak1ccc1bc2021-12-30 05:13:38 +0000130 method @Deprecated public void setMacRandomizationSetting(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000131 method @Deprecated public void setSecurityParams(int);
132 method public void writeToParcel(android.os.Parcel, int);
133 field @Deprecated public String BSSID;
134 field @Deprecated public String FQDN;
Stephanie Bak1ccc1bc2021-12-30 05:13:38 +0000135 field @Deprecated public static final int RANDOMIZATION_AUTO = 3; // 0x3
136 field @Deprecated public static final int RANDOMIZATION_NONE = 0; // 0x0
137 field @Deprecated public static final int RANDOMIZATION_NON_PERSISTENT = 2; // 0x2
138 field @Deprecated public static final int RANDOMIZATION_PERSISTENT = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +0000139 field @Deprecated public static final int SECURITY_TYPE_EAP = 3; // 0x3
140 field @Deprecated public static final int SECURITY_TYPE_EAP_SUITE_B = 5; // 0x5
Jimmy Chen74b574b2020-10-20 16:15:46 +0800141 field @Deprecated public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE = 9; // 0x9
Jimmy Chenf88f4392020-11-03 15:10:18 +0800142 field @Deprecated public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT = 5; // 0x5
Anton Hansson180d9562020-01-17 19:03:34 +0000143 field @Deprecated public static final int SECURITY_TYPE_OPEN = 0; // 0x0
144 field @Deprecated public static final int SECURITY_TYPE_OWE = 6; // 0x6
145 field @Deprecated public static final int SECURITY_TYPE_PSK = 2; // 0x2
146 field @Deprecated public static final int SECURITY_TYPE_SAE = 4; // 0x4
147 field @Deprecated public static final int SECURITY_TYPE_WAPI_CERT = 8; // 0x8
148 field @Deprecated public static final int SECURITY_TYPE_WAPI_PSK = 7; // 0x7
149 field @Deprecated public static final int SECURITY_TYPE_WEP = 1; // 0x1
150 field @Deprecated public String SSID;
151 field @Deprecated @NonNull public java.util.BitSet allowedAuthAlgorithms;
152 field @Deprecated @NonNull public java.util.BitSet allowedGroupCiphers;
153 field @Deprecated @NonNull public java.util.BitSet allowedGroupManagementCiphers;
154 field @Deprecated @NonNull public java.util.BitSet allowedKeyManagement;
155 field @Deprecated @NonNull public java.util.BitSet allowedPairwiseCiphers;
156 field @Deprecated @NonNull public java.util.BitSet allowedProtocols;
157 field @Deprecated @NonNull public java.util.BitSet allowedSuiteBCiphers;
158 field @Deprecated public android.net.wifi.WifiEnterpriseConfig enterpriseConfig;
159 field @Deprecated public boolean hiddenSSID;
160 field @Deprecated public boolean isHomeProviderNetwork;
161 field @Deprecated public int networkId;
162 field @Deprecated public String preSharedKey;
163 field @Deprecated public int priority;
164 field @Deprecated public String providerFriendlyName;
165 field @Deprecated public long[] roamingConsortiumIds;
166 field @Deprecated public int status;
167 field @Deprecated public String[] wepKeys;
168 field @Deprecated public int wepTxKeyIndex;
169 }
170
171 @Deprecated public static class WifiConfiguration.AuthAlgorithm {
172 field @Deprecated public static final int LEAP = 2; // 0x2
173 field @Deprecated public static final int OPEN = 0; // 0x0
174 field @Deprecated public static final int SAE = 3; // 0x3
175 field @Deprecated public static final int SHARED = 1; // 0x1
176 field @Deprecated public static final String[] strings;
177 field @Deprecated public static final String varName = "auth_alg";
178 }
179
180 @Deprecated public static class WifiConfiguration.GroupCipher {
181 field @Deprecated public static final int CCMP = 3; // 0x3
Jimmy Chendf2c5872020-01-07 17:54:09 +0200182 field @Deprecated public static final int GCMP_128 = 7; // 0x7
Anton Hansson180d9562020-01-17 19:03:34 +0000183 field @Deprecated public static final int GCMP_256 = 5; // 0x5
184 field @Deprecated public static final int SMS4 = 6; // 0x6
185 field @Deprecated public static final int TKIP = 2; // 0x2
186 field @Deprecated public static final int WEP104 = 1; // 0x1
187 field @Deprecated public static final int WEP40 = 0; // 0x0
188 field @Deprecated public static final String[] strings;
189 field @Deprecated public static final String varName = "group";
190 }
191
192 @Deprecated public static class WifiConfiguration.GroupMgmtCipher {
193 field @Deprecated public static final int BIP_CMAC_256 = 0; // 0x0
194 field @Deprecated public static final int BIP_GMAC_128 = 1; // 0x1
195 field @Deprecated public static final int BIP_GMAC_256 = 2; // 0x2
196 }
197
198 @Deprecated public static class WifiConfiguration.KeyMgmt {
199 field @Deprecated public static final int IEEE8021X = 3; // 0x3
200 field @Deprecated public static final int NONE = 0; // 0x0
201 field @Deprecated public static final int OWE = 9; // 0x9
202 field @Deprecated public static final int SAE = 8; // 0x8
203 field @Deprecated public static final int SUITE_B_192 = 10; // 0xa
204 field @Deprecated public static final int WPA_EAP = 2; // 0x2
205 field @Deprecated public static final int WPA_PSK = 1; // 0x1
206 field @Deprecated public static final String[] strings;
207 field @Deprecated public static final String varName = "key_mgmt";
208 }
209
210 @Deprecated public static class WifiConfiguration.PairwiseCipher {
211 field @Deprecated public static final int CCMP = 2; // 0x2
Jimmy Chendf2c5872020-01-07 17:54:09 +0200212 field @Deprecated public static final int GCMP_128 = 5; // 0x5
Anton Hansson180d9562020-01-17 19:03:34 +0000213 field @Deprecated public static final int GCMP_256 = 3; // 0x3
214 field @Deprecated public static final int NONE = 0; // 0x0
215 field @Deprecated public static final int SMS4 = 4; // 0x4
216 field @Deprecated public static final int TKIP = 1; // 0x1
217 field @Deprecated public static final String[] strings;
218 field @Deprecated public static final String varName = "pairwise";
219 }
220
221 @Deprecated public static class WifiConfiguration.Protocol {
222 field @Deprecated public static final int RSN = 1; // 0x1
223 field @Deprecated public static final int WAPI = 3; // 0x3
224 field @Deprecated public static final int WPA = 0; // 0x0
225 field @Deprecated public static final String[] strings;
226 field @Deprecated public static final String varName = "proto";
227 }
228
229 @Deprecated public static class WifiConfiguration.Status {
230 field @Deprecated public static final int CURRENT = 0; // 0x0
231 field @Deprecated public static final int DISABLED = 1; // 0x1
232 field @Deprecated public static final int ENABLED = 2; // 0x2
233 field @Deprecated public static final String[] strings;
234 }
235
236 public class WifiEnterpriseConfig implements android.os.Parcelable {
237 ctor public WifiEnterpriseConfig();
238 ctor public WifiEnterpriseConfig(android.net.wifi.WifiEnterpriseConfig);
239 method public int describeContents();
Jimmy Chen05ac9a82021-11-04 22:42:23 +0800240 method public void enableTrustOnFirstUse(boolean);
Anton Hansson180d9562020-01-17 19:03:34 +0000241 method public String getAltSubjectMatch();
242 method public String getAnonymousIdentity();
243 method @Nullable public java.security.cert.X509Certificate getCaCertificate();
244 method @Nullable public java.security.cert.X509Certificate[] getCaCertificates();
245 method public java.security.cert.X509Certificate getClientCertificate();
246 method @Nullable public java.security.cert.X509Certificate[] getClientCertificateChain();
Pavel Grafov5563d8e2021-01-18 14:23:56 +0000247 method @Nullable public String getClientKeyPairAlias();
Anton Hansson180d9562020-01-17 19:03:34 +0000248 method @Nullable public java.security.PrivateKey getClientPrivateKey();
Hai Shalom1c6098e2021-04-14 17:50:44 -0700249 method @Nullable public String getDecoratedIdentityPrefix();
Anton Hansson180d9562020-01-17 19:03:34 +0000250 method public String getDomainSuffixMatch();
251 method public int getEapMethod();
252 method public String getIdentity();
253 method public String getPassword();
254 method public int getPhase2Method();
255 method public String getPlmn();
256 method public String getRealm();
257 method @Deprecated public String getSubjectMatch();
Jimmy Chen05ac9a82021-11-04 22:42:23 +0800258 method public boolean hasCaCertificate();
Anton Hansson180d9562020-01-17 19:03:34 +0000259 method public boolean isAuthenticationSimBased();
Nate Jiang3e6e2f22021-03-05 12:35:31 -0800260 method public boolean isEapMethodServerCertUsed();
Nate Jiangbfc47c52020-12-22 17:11:12 -0800261 method public boolean isServerCertValidationEnabled();
Jimmy Chen05ac9a82021-11-04 22:42:23 +0800262 method public boolean isTrustOnFirstUseEnabled();
Anton Hansson180d9562020-01-17 19:03:34 +0000263 method public void setAltSubjectMatch(String);
264 method public void setAnonymousIdentity(String);
265 method public void setCaCertificate(@Nullable java.security.cert.X509Certificate);
266 method public void setCaCertificates(@Nullable java.security.cert.X509Certificate[]);
267 method public void setClientKeyEntry(java.security.PrivateKey, java.security.cert.X509Certificate);
268 method public void setClientKeyEntryWithCertificateChain(java.security.PrivateKey, java.security.cert.X509Certificate[]);
Pavel Grafov5563d8e2021-01-18 14:23:56 +0000269 method public void setClientKeyPairAlias(@NonNull String);
Hai Shalom1d362632021-03-12 15:00:50 -0800270 method public void setDecoratedIdentityPrefix(@Nullable String);
Anton Hansson180d9562020-01-17 19:03:34 +0000271 method public void setDomainSuffixMatch(String);
272 method public void setEapMethod(int);
273 method public void setIdentity(String);
274 method public void setPassword(String);
275 method public void setPhase2Method(int);
276 method public void setPlmn(String);
277 method public void setRealm(String);
278 method @Deprecated public void setSubjectMatch(String);
279 method public void writeToParcel(android.os.Parcel, int);
280 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiEnterpriseConfig> CREATOR;
281 field public static final String EXTRA_WAPI_AS_CERTIFICATE_DATA = "android.net.wifi.extra.WAPI_AS_CERTIFICATE_DATA";
282 field public static final String EXTRA_WAPI_AS_CERTIFICATE_NAME = "android.net.wifi.extra.WAPI_AS_CERTIFICATE_NAME";
283 field public static final String EXTRA_WAPI_USER_CERTIFICATE_DATA = "android.net.wifi.extra.WAPI_USER_CERTIFICATE_DATA";
284 field public static final String EXTRA_WAPI_USER_CERTIFICATE_NAME = "android.net.wifi.extra.WAPI_USER_CERTIFICATE_NAME";
285 field public static final String WAPI_AS_CERTIFICATE = "WAPIAS_";
286 field public static final String WAPI_USER_CERTIFICATE = "WAPIUSR_";
287 }
288
289 public static final class WifiEnterpriseConfig.Eap {
290 field public static final int AKA = 5; // 0x5
291 field public static final int AKA_PRIME = 6; // 0x6
292 field public static final int NONE = -1; // 0xffffffff
293 field public static final int PEAP = 0; // 0x0
294 field public static final int PWD = 3; // 0x3
295 field public static final int SIM = 4; // 0x4
296 field public static final int TLS = 1; // 0x1
297 field public static final int TTLS = 2; // 0x2
298 field public static final int UNAUTH_TLS = 7; // 0x7
299 field public static final int WAPI_CERT = 8; // 0x8
300 }
301
302 public static final class WifiEnterpriseConfig.Phase2 {
303 field public static final int AKA = 6; // 0x6
304 field public static final int AKA_PRIME = 7; // 0x7
305 field public static final int GTC = 4; // 0x4
306 field public static final int MSCHAP = 2; // 0x2
307 field public static final int MSCHAPV2 = 3; // 0x3
308 field public static final int NONE = 0; // 0x0
309 field public static final int PAP = 1; // 0x1
310 field public static final int SIM = 5; // 0x5
311 }
312
Roshan Piuscf919922020-08-14 07:17:59 -0700313 public class WifiInfo implements android.os.Parcelable android.net.TransportInfo {
Anton Hansson180d9562020-01-17 19:03:34 +0000314 method public int describeContents();
315 method public String getBSSID();
Hai Shalom46a7a672021-03-17 14:58:55 -0700316 method public int getCurrentSecurityType();
Anton Hansson180d9562020-01-17 19:03:34 +0000317 method public static android.net.NetworkInfo.DetailedState getDetailedStateOf(android.net.wifi.SupplicantState);
318 method public int getFrequency();
319 method public boolean getHiddenSSID();
Roshan Piusc610e1f2021-01-13 15:17:18 +0000320 method @Nullable public java.util.List<android.net.wifi.ScanResult.InformationElement> getInformationElements();
Roshan Pius2fa57f02020-12-30 13:15:50 -0800321 method @Deprecated public int getIpAddress();
Anton Hansson180d9562020-01-17 19:03:34 +0000322 method public int getLinkSpeed();
Anton Hanssonb43f5dc2021-10-20 13:21:00 +0100323 method public String getMacAddress();
Anton Hansson180d9562020-01-17 19:03:34 +0000324 method public int getMaxSupportedRxLinkSpeedMbps();
325 method public int getMaxSupportedTxLinkSpeedMbps();
326 method public int getNetworkId();
327 method @Nullable public String getPasspointFqdn();
328 method @Nullable public String getPasspointProviderFriendlyName();
329 method public int getRssi();
330 method @IntRange(from=0xffffffff) public int getRxLinkSpeedMbps();
331 method public String getSSID();
Nate Jiangd17ab1b2021-01-11 14:48:12 -0800332 method public int getSubscriptionId();
Anton Hansson180d9562020-01-17 19:03:34 +0000333 method public android.net.wifi.SupplicantState getSupplicantState();
334 method @IntRange(from=0xffffffff) public int getTxLinkSpeedMbps();
335 method public int getWifiStandard();
Nate Jiang2a788802021-11-10 10:48:05 -0800336 method public boolean isRestricted();
Roshan Piuse16f0d42021-02-23 08:49:29 -0800337 method @NonNull public android.net.wifi.WifiInfo makeCopy(long);
Anton Hansson180d9562020-01-17 19:03:34 +0000338 method public void writeToParcel(android.os.Parcel, int);
339 field public static final String FREQUENCY_UNITS = "MHz";
340 field public static final String LINK_SPEED_UNITS = "Mbps";
341 field public static final int LINK_SPEED_UNKNOWN = -1; // 0xffffffff
Hai Shalom46a7a672021-03-17 14:58:55 -0700342 field public static final int SECURITY_TYPE_EAP = 3; // 0x3
343 field public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE = 9; // 0x9
344 field public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT = 5; // 0x5
345 field public static final int SECURITY_TYPE_OPEN = 0; // 0x0
346 field public static final int SECURITY_TYPE_OSEN = 10; // 0xa
347 field public static final int SECURITY_TYPE_OWE = 6; // 0x6
348 field public static final int SECURITY_TYPE_PASSPOINT_R1_R2 = 11; // 0xb
349 field public static final int SECURITY_TYPE_PASSPOINT_R3 = 12; // 0xc
350 field public static final int SECURITY_TYPE_PSK = 2; // 0x2
351 field public static final int SECURITY_TYPE_SAE = 4; // 0x4
352 field public static final int SECURITY_TYPE_UNKNOWN = -1; // 0xffffffff
353 field public static final int SECURITY_TYPE_WAPI_CERT = 8; // 0x8
354 field public static final int SECURITY_TYPE_WAPI_PSK = 7; // 0x7
355 field public static final int SECURITY_TYPE_WEP = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +0000356 }
357
358 public static final class WifiInfo.Builder {
359 ctor public WifiInfo.Builder();
360 method @NonNull public android.net.wifi.WifiInfo build();
361 method @NonNull public android.net.wifi.WifiInfo.Builder setBssid(@NonNull String);
Hai Shalom46a7a672021-03-17 14:58:55 -0700362 method @NonNull public android.net.wifi.WifiInfo.Builder setCurrentSecurityType(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000363 method @NonNull public android.net.wifi.WifiInfo.Builder setNetworkId(int);
364 method @NonNull public android.net.wifi.WifiInfo.Builder setRssi(int);
365 method @NonNull public android.net.wifi.WifiInfo.Builder setSsid(@NonNull byte[]);
366 }
367
368 public class WifiManager {
369 method @Deprecated public int addNetwork(android.net.wifi.WifiConfiguration);
Anton Hanssonb43f5dc2021-10-20 13:21:00 +0100370 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 +0000371 method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int addNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>);
372 method public void addOrUpdatePasspointConfiguration(android.net.wifi.hotspot2.PasspointConfiguration);
373 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 -0800374 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void addSuggestionUserApprovalStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SuggestionUserApprovalStatusListener);
Stephanie Bak9a28f2c2022-02-04 05:30:58 +0000375 method public void allowAutojoinGlobal(boolean);
Anton Hansson180d9562020-01-17 19:03:34 +0000376 method @Deprecated public static int calculateSignalLevel(int, int);
377 method @IntRange(from=0) public int calculateSignalLevel(int);
378 method @Deprecated public void cancelWps(android.net.wifi.WifiManager.WpsCallback);
379 method public static int compareSignalLevel(int, int);
380 method public android.net.wifi.WifiManager.MulticastLock createMulticastLock(String);
381 method public android.net.wifi.WifiManager.WifiLock createWifiLock(int, String);
382 method @Deprecated public android.net.wifi.WifiManager.WifiLock createWifiLock(String);
383 method @Deprecated public boolean disableNetwork(int);
384 method @Deprecated public boolean disconnect();
385 method @Deprecated public boolean enableNetwork(int, boolean);
Anton Hanssonb43f5dc2021-10-20 13:21:00 +0100386 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 +0000387 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 +0000388 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 -0700389 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 -0800390 method @Deprecated public android.net.DhcpInfo getDhcpInfo();
Anton Hansson180d9562020-01-17 19:03:34 +0000391 method public int getMaxNumberOfNetworkSuggestionsPerApp();
392 method @IntRange(from=0) public int getMaxSignalLevel();
393 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 +0100394 method @Deprecated public java.util.List<android.net.wifi.hotspot2.PasspointConfiguration> getPasspointConfigurations();
xshu1c3ee3e2021-11-03 20:03:10 -0700395 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 -0800396 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public int getStaConcurrencyForMultiInternetMode();
Anton Hansson180d9562020-01-17 19:03:34 +0000397 method public int getWifiState();
lesl053a69e2021-02-04 17:09:22 +0800398 method public boolean is24GHzBandSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000399 method public boolean is5GHzBandSupported();
Jimmy Chen049baa52021-01-26 01:29:19 +0800400 method public boolean is60GHzBandSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000401 method public boolean is6GHzBandSupported();
402 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isAutoWakeupEnabled();
lesl6d565cd2020-11-27 13:05:04 +0800403 method public boolean isBridgedApConcurrencySupported();
Nate Jiangdc80ce82021-03-16 14:37:40 -0700404 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isCarrierNetworkOffloadEnabled(int, boolean);
Hai Shalom1d362632021-03-12 15:00:50 -0800405 method public boolean isDecoratedIdentitySupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000406 method @Deprecated public boolean isDeviceToApRttSupported();
Sunil Ravi42b7f932021-02-24 17:13:41 -0800407 method public boolean isEasyConnectEnrolleeResponderModeSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000408 method public boolean isEasyConnectSupported();
409 method public boolean isEnhancedOpenSupported();
410 method public boolean isEnhancedPowerReportingSupported();
Roshan Pius022f3b62021-02-26 14:11:18 -0800411 method public boolean isMakeBeforeBreakWifiSwitchingSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000412 method public boolean isP2pSupported();
Hai Shalom9a7adff2021-03-01 19:05:17 -0800413 method public boolean isPasspointTermsAndConditionsSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000414 method public boolean isPreferredNetworkOffloadSupported();
415 method @Deprecated public boolean isScanAlwaysAvailable();
416 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isScanThrottleEnabled();
417 method public boolean isStaApConcurrencySupported();
lesl6d565cd2020-11-27 13:05:04 +0800418 method public boolean isStaBridgedApConcurrencySupported();
Roshan Pius022f3b62021-02-26 14:11:18 -0800419 method public boolean isStaConcurrencyForLocalOnlyConnectionsSupported();
Chris Yef47b5932021-12-03 16:07:34 -0800420 method public boolean isStaConcurrencyForMultiInternetSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000421 method public boolean isTdlsSupported();
Jimmy Chen05ac9a82021-11-04 22:42:23 +0800422 method public boolean isTrustOnFirstUseSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000423 method public boolean isWapiSupported();
Jimmy Chend9fb5fb2021-03-04 14:42:49 +0800424 method public boolean isWifiDisplayR2Supported();
Anton Hansson180d9562020-01-17 19:03:34 +0000425 method public boolean isWifiEnabled();
Chris Ye4ef08dd2021-06-14 23:21:45 -0700426 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isWifiPasspointEnabled();
Anton Hansson180d9562020-01-17 19:03:34 +0000427 method public boolean isWifiStandardSupported(int);
Jimmy Chen8b6b2462021-02-23 10:27:51 +0800428 method public boolean isWpa3SaeH2eSupported();
Jimmy Chena4c3f892021-02-23 09:50:20 +0800429 method public boolean isWpa3SaePublicKeySupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000430 method public boolean isWpa3SaeSupported();
431 method public boolean isWpa3SuiteBSupported();
432 method @Deprecated public boolean pingSupplicant();
433 method @Deprecated public boolean reassociate();
434 method @Deprecated public boolean reconnect();
435 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 -0800436 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 +0000437 method @Deprecated public boolean removeNetwork(int);
Nate Jiang1c407132022-01-25 11:03:41 -0800438 method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int removeNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>);
Nate Jiange29c4732021-11-22 11:47:15 -0800439 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 +0000440 method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public boolean removeNonCallerConfiguredNetworks();
Anton Hanssonb43f5dc2021-10-20 13:21:00 +0100441 method @Deprecated public void removePasspointConfiguration(String);
Anton Hansson180d9562020-01-17 19:03:34 +0000442 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void removeSuggestionConnectionStatusListener(@NonNull android.net.wifi.WifiManager.SuggestionConnectionStatusListener);
Nate Jiangd1519d72020-12-09 22:43:33 -0800443 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void removeSuggestionUserApprovalStatusListener(@NonNull android.net.wifi.WifiManager.SuggestionUserApprovalStatusListener);
Anton Hansson180d9562020-01-17 19:03:34 +0000444 method @Deprecated public boolean saveConfiguration();
445 method public void setTdlsEnabled(java.net.InetAddress, boolean);
446 method public void setTdlsEnabledWithMacAddress(String, boolean);
447 method @Deprecated public boolean setWifiEnabled(boolean);
xshu25c63302022-01-11 16:26:55 -0800448 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 +0000449 method @Deprecated public boolean startScan();
450 method @Deprecated public void startWps(android.net.wifi.WpsInfo, android.net.wifi.WifiManager.WpsCallback);
451 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void unregisterScanResultsCallback(@NonNull android.net.wifi.WifiManager.ScanResultsCallback);
Etan Cohen9c0688d2021-02-12 01:42:09 +0000452 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void unregisterSubsystemRestartTrackingCallback(@NonNull android.net.wifi.WifiManager.SubsystemRestartTrackingCallback);
Anton Hansson180d9562020-01-17 19:03:34 +0000453 method @Deprecated public int updateNetwork(android.net.wifi.WifiConfiguration);
454 field public static final String ACTION_PICK_WIFI_NETWORK = "android.net.wifi.PICK_WIFI_NETWORK";
Nate Jiange29c4732021-11-22 11:47:15 -0800455 field public static final int ACTION_REMOVE_SUGGESTION_DISCONNECT = 2; // 0x2
456 field public static final int ACTION_REMOVE_SUGGESTION_LINGER = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +0000457 field public static final String ACTION_REQUEST_SCAN_ALWAYS_AVAILABLE = "android.net.wifi.action.REQUEST_SCAN_ALWAYS_AVAILABLE";
458 field public static final String ACTION_WIFI_NETWORK_SUGGESTION_POST_CONNECTION = "android.net.wifi.action.WIFI_NETWORK_SUGGESTION_POST_CONNECTION";
459 field public static final String ACTION_WIFI_SCAN_AVAILABILITY_CHANGED = "android.net.wifi.action.WIFI_SCAN_AVAILABILITY_CHANGED";
460 field @Deprecated public static final int ERROR_AUTHENTICATING = 1; // 0x1
461 field @Deprecated public static final String EXTRA_BSSID = "bssid";
462 field public static final String EXTRA_NETWORK_INFO = "networkInfo";
463 field public static final String EXTRA_NETWORK_SUGGESTION = "android.net.wifi.extra.NETWORK_SUGGESTION";
464 field public static final String EXTRA_NEW_RSSI = "newRssi";
465 field @Deprecated public static final String EXTRA_NEW_STATE = "newState";
466 field public static final String EXTRA_PREVIOUS_WIFI_STATE = "previous_wifi_state";
467 field public static final String EXTRA_RESULTS_UPDATED = "resultsUpdated";
468 field public static final String EXTRA_SCAN_AVAILABLE = "android.net.wifi.extra.SCAN_AVAILABLE";
469 field @Deprecated public static final String EXTRA_SUPPLICANT_CONNECTED = "connected";
470 field @Deprecated public static final String EXTRA_SUPPLICANT_ERROR = "supplicantError";
471 field @Deprecated public static final String EXTRA_WIFI_INFO = "wifiInfo";
472 field public static final String EXTRA_WIFI_STATE = "wifi_state";
473 field public static final String NETWORK_IDS_CHANGED_ACTION = "android.net.wifi.NETWORK_IDS_CHANGED";
474 field public static final String NETWORK_STATE_CHANGED_ACTION = "android.net.wifi.STATE_CHANGE";
475 field public static final String RSSI_CHANGED_ACTION = "android.net.wifi.RSSI_CHANGED";
476 field public static final String SCAN_RESULTS_AVAILABLE_ACTION = "android.net.wifi.SCAN_RESULTS";
477 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_DUPLICATE = 3; // 0x3
478 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_EXCEEDS_MAX_PER_APP = 4; // 0x4
479 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_INVALID = 7; // 0x7
480 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_ADD_NOT_ALLOWED = 6; // 0x6
481 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_APP_DISALLOWED = 2; // 0x2
482 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_INTERNAL = 1; // 0x1
483 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_REMOVE_INVALID = 5; // 0x5
Stephanie Bak1c6ba1b2022-01-08 10:58:27 +0000484 field public static final int STATUS_NETWORK_SUGGESTIONS_ERROR_RESTRICTED_BY_ADMIN = 8; // 0x8
Anton Hansson180d9562020-01-17 19:03:34 +0000485 field public static final int STATUS_NETWORK_SUGGESTIONS_SUCCESS = 0; // 0x0
Nate Jiangd2ad1f42020-11-10 17:30:14 -0800486 field public static final int STATUS_SUGGESTION_APPROVAL_APPROVED_BY_CARRIER_PRIVILEGE = 4; // 0x4
487 field public static final int STATUS_SUGGESTION_APPROVAL_APPROVED_BY_USER = 2; // 0x2
488 field public static final int STATUS_SUGGESTION_APPROVAL_PENDING = 1; // 0x1
489 field public static final int STATUS_SUGGESTION_APPROVAL_REJECTED_BY_USER = 3; // 0x3
490 field public static final int STATUS_SUGGESTION_APPROVAL_UNKNOWN = 0; // 0x0
Anton Hansson180d9562020-01-17 19:03:34 +0000491 field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_ASSOCIATION = 1; // 0x1
492 field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_AUTHENTICATION = 2; // 0x2
493 field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_IP_PROVISIONING = 3; // 0x3
494 field public static final int STATUS_SUGGESTION_CONNECTION_FAILURE_UNKNOWN = 0; // 0x0
495 field @Deprecated public static final String SUPPLICANT_CONNECTION_CHANGE_ACTION = "android.net.wifi.supplicant.CONNECTION_CHANGE";
496 field @Deprecated public static final String SUPPLICANT_STATE_CHANGED_ACTION = "android.net.wifi.supplicant.STATE_CHANGE";
497 field public static final String UNKNOWN_SSID = "<unknown ssid>";
498 field @Deprecated public static final int WIFI_MODE_FULL = 1; // 0x1
499 field public static final int WIFI_MODE_FULL_HIGH_PERF = 3; // 0x3
500 field public static final int WIFI_MODE_FULL_LOW_LATENCY = 4; // 0x4
501 field @Deprecated public static final int WIFI_MODE_SCAN_ONLY = 2; // 0x2
Chris Yef47b5932021-12-03 16:07:34 -0800502 field public static final int WIFI_MULTI_INTERNET_MODE_DBS_AP = 1; // 0x1
503 field public static final int WIFI_MULTI_INTERNET_MODE_DISABLED = 0; // 0x0
504 field public static final int WIFI_MULTI_INTERNET_MODE_MULTI_AP = 2; // 0x2
Anton Hansson180d9562020-01-17 19:03:34 +0000505 field public static final String WIFI_STATE_CHANGED_ACTION = "android.net.wifi.WIFI_STATE_CHANGED";
506 field public static final int WIFI_STATE_DISABLED = 1; // 0x1
507 field public static final int WIFI_STATE_DISABLING = 0; // 0x0
508 field public static final int WIFI_STATE_ENABLED = 3; // 0x3
509 field public static final int WIFI_STATE_ENABLING = 2; // 0x2
510 field public static final int WIFI_STATE_UNKNOWN = 4; // 0x4
511 field @Deprecated public static final int WPS_AUTH_FAILURE = 6; // 0x6
512 field @Deprecated public static final int WPS_OVERLAP_ERROR = 3; // 0x3
513 field @Deprecated public static final int WPS_TIMED_OUT = 7; // 0x7
514 field @Deprecated public static final int WPS_TKIP_ONLY_PROHIBITED = 5; // 0x5
515 field @Deprecated public static final int WPS_WEP_PROHIBITED = 4; // 0x4
516 }
517
xshu18bf8152021-03-18 21:07:30 -0700518 public static final class WifiManager.AddNetworkResult implements android.os.Parcelable {
519 ctor public WifiManager.AddNetworkResult(int, int);
520 method public int describeContents();
521 method public void writeToParcel(@NonNull android.os.Parcel, int);
522 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiManager.AddNetworkResult> CREATOR;
523 field public static final int STATUS_ADD_PASSPOINT_FAILURE = 3; // 0x3
524 field public static final int STATUS_ADD_WIFI_CONFIG_FAILURE = 4; // 0x4
525 field public static final int STATUS_FAILURE_UNKNOWN = 1; // 0x1
526 field public static final int STATUS_FAILURE_UPDATE_NETWORK_KEYS = 9; // 0x9
527 field public static final int STATUS_INVALID_CONFIGURATION = 5; // 0x5
528 field public static final int STATUS_INVALID_CONFIGURATION_ENTERPRISE = 10; // 0xa
529 field public static final int STATUS_NO_PERMISSION = 2; // 0x2
530 field public static final int STATUS_NO_PERMISSION_MODIFY_CONFIG = 6; // 0x6
531 field public static final int STATUS_NO_PERMISSION_MODIFY_MAC_RANDOMIZATION = 8; // 0x8
532 field public static final int STATUS_NO_PERMISSION_MODIFY_PROXY_SETTING = 7; // 0x7
533 field public static final int STATUS_SUCCESS = 0; // 0x0
534 field public final int networkId;
535 field public final int statusCode;
536 }
537
Anton Hansson180d9562020-01-17 19:03:34 +0000538 public static class WifiManager.LocalOnlyHotspotCallback {
539 ctor public WifiManager.LocalOnlyHotspotCallback();
540 method public void onFailed(int);
541 method public void onStarted(android.net.wifi.WifiManager.LocalOnlyHotspotReservation);
542 method public void onStopped();
543 field public static final int ERROR_GENERIC = 2; // 0x2
544 field public static final int ERROR_INCOMPATIBLE_MODE = 3; // 0x3
545 field public static final int ERROR_NO_CHANNEL = 1; // 0x1
546 field public static final int ERROR_TETHERING_DISALLOWED = 4; // 0x4
547 }
548
549 public class WifiManager.LocalOnlyHotspotReservation implements java.lang.AutoCloseable {
550 method public void close();
551 method @NonNull public android.net.wifi.SoftApConfiguration getSoftApConfiguration();
552 method @Deprecated @Nullable public android.net.wifi.WifiConfiguration getWifiConfiguration();
553 }
554
555 public class WifiManager.MulticastLock {
556 method public void acquire();
557 method public boolean isHeld();
558 method public void release();
559 method public void setReferenceCounted(boolean);
560 }
561
562 public abstract static class WifiManager.ScanResultsCallback {
563 ctor public WifiManager.ScanResultsCallback();
564 method public abstract void onScanResultsAvailable();
565 }
566
xshu3b715d42022-01-25 15:36:06 -0800567 public static class WifiManager.ScreenOnScanSchedule {
568 ctor public WifiManager.ScreenOnScanSchedule(int, int);
569 }
570
Etan Cohen591aeb52021-01-06 13:17:32 -0800571 public abstract static class WifiManager.SubsystemRestartTrackingCallback {
572 ctor public WifiManager.SubsystemRestartTrackingCallback();
573 method public abstract void onSubsystemRestarted();
574 method public abstract void onSubsystemRestarting();
575 }
576
Anton Hansson180d9562020-01-17 19:03:34 +0000577 public static interface WifiManager.SuggestionConnectionStatusListener {
578 method public void onConnectionStatus(@NonNull android.net.wifi.WifiNetworkSuggestion, int);
579 }
580
Nate Jiangd1519d72020-12-09 22:43:33 -0800581 public static interface WifiManager.SuggestionUserApprovalStatusListener {
Nate Jiang97874a22021-01-28 09:42:02 -0800582 method public void onUserApprovalStatusChange(int);
Nate Jiangd1519d72020-12-09 22:43:33 -0800583 }
584
Anton Hansson180d9562020-01-17 19:03:34 +0000585 public class WifiManager.WifiLock {
586 method public void acquire();
587 method public boolean isHeld();
588 method public void release();
589 method public void setReferenceCounted(boolean);
590 method public void setWorkSource(android.os.WorkSource);
591 }
592
593 @Deprecated public abstract static class WifiManager.WpsCallback {
594 ctor @Deprecated public WifiManager.WpsCallback();
595 method @Deprecated public abstract void onFailed(int);
596 method @Deprecated public abstract void onStarted(String);
597 method @Deprecated public abstract void onSucceeded();
598 }
599
600 public final class WifiNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
601 method public int describeContents();
Chalard Jean2c6d14d2021-05-12 22:22:06 +0900602 method public int getBand();
Anton Hansson180d9562020-01-17 19:03:34 +0000603 method public void writeToParcel(android.os.Parcel, int);
604 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiNetworkSpecifier> CREATOR;
605 }
606
607 public static final class WifiNetworkSpecifier.Builder {
608 ctor public WifiNetworkSpecifier.Builder();
609 method @NonNull public android.net.wifi.WifiNetworkSpecifier build();
Chalard Jean2c6d14d2021-05-12 22:22:06 +0900610 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setBand(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000611 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setBssid(@NonNull android.net.MacAddress);
612 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setBssidPattern(@NonNull android.net.MacAddress, @NonNull android.net.MacAddress);
613 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setIsEnhancedOpen(boolean);
614 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setIsHiddenSsid(boolean);
615 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setSsid(@NonNull String);
616 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setSsidPattern(@NonNull android.os.PatternMatcher);
617 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa2EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
618 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa2Passphrase(@NonNull String);
Jimmy Chen049bf532020-10-16 14:15:11 +0800619 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3Enterprise192BitModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
620 method @Deprecated @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
621 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3EnterpriseStandardModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
Anton Hansson180d9562020-01-17 19:03:34 +0000622 method @NonNull public android.net.wifi.WifiNetworkSpecifier.Builder setWpa3Passphrase(@NonNull String);
623 }
624
625 public final class WifiNetworkSuggestion implements android.os.Parcelable {
626 method public int describeContents();
627 method @Nullable public android.net.MacAddress getBssid();
628 method @Nullable public android.net.wifi.WifiEnterpriseConfig getEnterpriseConfig();
Nate Jiangd5bd85d2021-09-24 15:29:46 -0700629 method public int getMacRandomizationSetting();
Anton Hansson180d9562020-01-17 19:03:34 +0000630 method @Nullable public String getPassphrase();
631 method @Nullable public android.net.wifi.hotspot2.PasspointConfiguration getPasspointConfig();
632 method @IntRange(from=0) public int getPriority();
Nate Jiang34101422021-03-03 17:53:06 -0800633 method @IntRange(from=0) public int getPriorityGroup();
Anton Hansson180d9562020-01-17 19:03:34 +0000634 method @Nullable public String getSsid();
Nate Jiangf54facb2021-11-22 11:47:15 -0800635 method @Nullable public android.os.ParcelUuid getSubscriptionGroup();
Nate Jiang5fab3cb2020-09-16 17:48:16 -0700636 method public int getSubscriptionId();
Nate Jiangd5ec9552022-01-26 16:40:51 -0800637 method @Nullable public android.net.wifi.WifiSsid getWifiSsid();
Anton Hansson180d9562020-01-17 19:03:34 +0000638 method public boolean isAppInteractionRequired();
Nate Jiangd7ed9df2020-11-10 13:00:07 -0800639 method public boolean isCarrierMerged();
Anton Hansson180d9562020-01-17 19:03:34 +0000640 method public boolean isCredentialSharedWithUser();
641 method public boolean isEnhancedOpen();
642 method public boolean isHiddenSsid();
643 method public boolean isInitialAutojoinEnabled();
644 method public boolean isMetered();
Nate Jiang2d9907c2021-11-05 11:42:57 -0700645 method public boolean isRestricted();
Anton Hansson180d9562020-01-17 19:03:34 +0000646 method public boolean isUntrusted();
647 method public boolean isUserInteractionRequired();
648 method public void writeToParcel(android.os.Parcel, int);
649 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiNetworkSuggestion> CREATOR;
xshud92896d2021-02-12 17:07:06 -0800650 field public static final int RANDOMIZATION_NON_PERSISTENT = 1; // 0x1
651 field public static final int RANDOMIZATION_PERSISTENT = 0; // 0x0
Anton Hansson180d9562020-01-17 19:03:34 +0000652 }
653
654 public static final class WifiNetworkSuggestion.Builder {
655 ctor public WifiNetworkSuggestion.Builder();
656 method @NonNull public android.net.wifi.WifiNetworkSuggestion build();
657 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setBssid(@NonNull android.net.MacAddress);
Nate Jiangd7ed9df2020-11-10 13:00:07 -0800658 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setCarrierMerged(boolean);
Anton Hansson180d9562020-01-17 19:03:34 +0000659 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setCredentialSharedWithUser(boolean);
660 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsAppInteractionRequired(boolean);
661 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsEnhancedOpen(boolean);
662 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsHiddenSsid(boolean);
663 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsInitialAutojoinEnabled(boolean);
664 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsMetered(boolean);
665 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsUserInteractionRequired(boolean);
Jimmy Chenc5be43d2021-03-18 13:01:50 +0800666 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setIsWpa3SaeH2eOnlyModeEnabled(boolean);
xshud92896d2021-02-12 17:07:06 -0800667 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setMacRandomizationSetting(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000668 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPasspointConfig(@NonNull android.net.wifi.hotspot2.PasspointConfiguration);
669 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPriority(@IntRange(from=0) int);
Nate Jiang34101422021-03-03 17:53:06 -0800670 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setPriorityGroup(@IntRange(from=0) int);
Nate Jiang2d9907c2021-11-05 11:42:57 -0700671 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setRestricted(boolean);
Anton Hansson180d9562020-01-17 19:03:34 +0000672 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setSsid(@NonNull String);
Nate Jiangf54facb2021-11-22 11:47:15 -0800673 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setSubscriptionGroup(@NonNull android.os.ParcelUuid);
Nate Jiang5fab3cb2020-09-16 17:48:16 -0700674 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setSubscriptionId(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000675 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setUntrusted(boolean);
676 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWapiEnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
677 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWapiPassphrase(@NonNull String);
Nate Jiangd5ec9552022-01-26 16:40:51 -0800678 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWifiSsid(@NonNull android.net.wifi.WifiSsid);
Anton Hansson180d9562020-01-17 19:03:34 +0000679 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa2EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
680 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa2Passphrase(@NonNull String);
Jimmy Chen049bf532020-10-16 14:15:11 +0800681 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3Enterprise192BitModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
682 method @Deprecated @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3EnterpriseConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
683 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3EnterpriseStandardModeConfig(@NonNull android.net.wifi.WifiEnterpriseConfig);
Anton Hansson180d9562020-01-17 19:03:34 +0000684 method @NonNull public android.net.wifi.WifiNetworkSuggestion.Builder setWpa3Passphrase(@NonNull String);
685 }
686
Quang Luongab00ba22021-10-07 16:12:10 -0700687 public final class WifiSsid implements android.os.Parcelable {
688 method public int describeContents();
689 method @NonNull public static android.net.wifi.WifiSsid fromBytes(@Nullable byte[]);
Quang Luongab00ba22021-10-07 16:12:10 -0700690 method @NonNull public byte[] getBytes();
Quang Luongab00ba22021-10-07 16:12:10 -0700691 method public void writeToParcel(@NonNull android.os.Parcel, int);
692 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WifiSsid> CREATOR;
693 }
694
Anton Hansson180d9562020-01-17 19:03:34 +0000695 public class WpsInfo implements android.os.Parcelable {
696 ctor public WpsInfo();
697 ctor public WpsInfo(android.net.wifi.WpsInfo);
698 method public int describeContents();
699 method public void writeToParcel(android.os.Parcel, int);
700 field public String BSSID;
701 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.WpsInfo> CREATOR;
702 field public static final int DISPLAY = 1; // 0x1
703 field public static final int INVALID = 4; // 0x4
704 field public static final int KEYPAD = 2; // 0x2
705 field public static final int LABEL = 3; // 0x3
706 field public static final int PBC = 0; // 0x0
707 field public String pin;
708 field public int setup;
709 }
710
711}
712
713package android.net.wifi.aware {
714
715 public class AttachCallback {
716 ctor public AttachCallback();
717 method public void onAttachFailed();
718 method public void onAttached(android.net.wifi.aware.WifiAwareSession);
Nate Jiangc7820a12022-01-31 13:41:04 -0800719 method public void onAwareSessionTerminated();
Anton Hansson180d9562020-01-17 19:03:34 +0000720 }
721
Nate Jiang702d6172020-10-19 15:29:29 -0700722 public final class AwareResources implements android.os.Parcelable {
Nate Jiang88247122021-03-03 18:27:37 -0800723 ctor public AwareResources(@IntRange(from=0) int, @IntRange(from=0) int, @IntRange(from=0) int);
Nate Jiang702d6172020-10-19 15:29:29 -0700724 method public int describeContents();
Nate Jiangaf770eb2021-01-12 13:15:37 -0800725 method @IntRange(from=0) public int getAvailableDataPathsCount();
726 method @IntRange(from=0) public int getAvailablePublishSessionsCount();
727 method @IntRange(from=0) public int getAvailableSubscribeSessionsCount();
Nate Jiang702d6172020-10-19 15:29:29 -0700728 method public void writeToParcel(@NonNull android.os.Parcel, int);
729 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.AwareResources> CREATOR;
730 }
731
Anton Hansson180d9562020-01-17 19:03:34 +0000732 public final class Characteristics implements android.os.Parcelable {
733 method public int describeContents();
734 method public int getMaxMatchFilterLength();
735 method public int getMaxServiceNameLength();
736 method public int getMaxServiceSpecificInfoLength();
Nate Jiang4b6e5352021-11-10 16:29:26 -0800737 method @IntRange(from=1) public int getNumberOfSupportedDataInterfaces();
738 method @IntRange(from=1) public int getNumberOfSupportedDataPaths();
739 method @IntRange(from=1) public int getNumberOfSupportedPublishSessions();
740 method @IntRange(from=1) public int getNumberOfSupportedSubscribeSessions();
Anton Hansson180d9562020-01-17 19:03:34 +0000741 method public int getSupportedCipherSuites();
Nate Jiangecdc6582020-10-09 11:33:04 -0700742 method public boolean isInstantCommunicationModeSupported();
Anton Hansson180d9562020-01-17 19:03:34 +0000743 method public void writeToParcel(android.os.Parcel, int);
744 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.Characteristics> CREATOR;
Nate Jiang292e6632022-01-12 15:49:10 -0800745 field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_PK_128 = 4; // 0x4
746 field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_PK_256 = 8; // 0x8
Anton Hansson180d9562020-01-17 19:03:34 +0000747 field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_128 = 1; // 0x1
748 field public static final int WIFI_AWARE_CIPHER_SUITE_NCS_SK_256 = 2; // 0x2
Nate Jiang1050bea2022-01-21 19:03:50 -0800749 field public static final int WIFI_AWARE_CIPHER_SUITE_NONE = 0; // 0x0
Anton Hansson180d9562020-01-17 19:03:34 +0000750 }
751
752 public class DiscoverySession implements java.lang.AutoCloseable {
753 method public void close();
754 method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierOpen(@NonNull android.net.wifi.aware.PeerHandle);
755 method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPassphrase(@NonNull android.net.wifi.aware.PeerHandle, @NonNull String);
756 method public void sendMessage(@NonNull android.net.wifi.aware.PeerHandle, int, @Nullable byte[]);
757 }
758
759 public class DiscoverySessionCallback {
760 ctor public DiscoverySessionCallback();
761 method public void onMessageReceived(android.net.wifi.aware.PeerHandle, byte[]);
762 method public void onMessageSendFailed(int);
763 method public void onMessageSendSucceeded(int);
764 method public void onPublishStarted(@NonNull android.net.wifi.aware.PublishDiscoverySession);
765 method public void onServiceDiscovered(android.net.wifi.aware.PeerHandle, byte[], java.util.List<byte[]>);
Nate Jiang1050bea2022-01-21 19:03:50 -0800766 method public void onServiceDiscovered(@NonNull android.net.wifi.aware.ServiceDiscoveryInfo);
Anton Hansson180d9562020-01-17 19:03:34 +0000767 method public void onServiceDiscoveredWithinRange(android.net.wifi.aware.PeerHandle, byte[], java.util.List<byte[]>, int);
Nate Jiang1050bea2022-01-21 19:03:50 -0800768 method public void onServiceDiscoveredWithinRange(@NonNull android.net.wifi.aware.ServiceDiscoveryInfo, int);
Nate Jiangf9a50c02020-10-14 14:35:52 -0700769 method public void onServiceLost(@NonNull android.net.wifi.aware.PeerHandle, int);
Anton Hansson180d9562020-01-17 19:03:34 +0000770 method public void onSessionConfigFailed();
771 method public void onSessionConfigUpdated();
772 method public void onSessionTerminated();
773 method public void onSubscribeStarted(@NonNull android.net.wifi.aware.SubscribeDiscoverySession);
774 }
775
776 public class IdentityChangedListener {
777 ctor public IdentityChangedListener();
778 method public void onIdentityChanged(byte[]);
779 }
780
781 public final class ParcelablePeerHandle extends android.net.wifi.aware.PeerHandle implements android.os.Parcelable {
782 ctor public ParcelablePeerHandle(@NonNull android.net.wifi.aware.PeerHandle);
783 method public int describeContents();
784 method public void writeToParcel(android.os.Parcel, int);
785 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.ParcelablePeerHandle> CREATOR;
786 }
787
788 public class PeerHandle {
789 }
790
791 public final class PublishConfig implements android.os.Parcelable {
792 method public int describeContents();
Nate Jiangef4f8f62022-01-21 00:11:51 -0800793 method public int getInstantCommunicationBand();
Nate Jiang1050bea2022-01-21 19:03:50 -0800794 method @Nullable public android.net.wifi.aware.WifiAwareDataPathSecurityConfig getSecurityConfig();
Nate Jiang6dcd7bd2022-02-02 15:21:32 -0800795 method public boolean isInstantCommunicationModeEnabled();
Anton Hansson180d9562020-01-17 19:03:34 +0000796 method public void writeToParcel(android.os.Parcel, int);
797 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.PublishConfig> CREATOR;
798 field public static final int PUBLISH_TYPE_SOLICITED = 1; // 0x1
799 field public static final int PUBLISH_TYPE_UNSOLICITED = 0; // 0x0
800 }
801
802 public static final class PublishConfig.Builder {
803 ctor public PublishConfig.Builder();
804 method public android.net.wifi.aware.PublishConfig build();
Nate Jiang1050bea2022-01-21 19:03:50 -0800805 method @NonNull public android.net.wifi.aware.PublishConfig.Builder setDataPathSecurityConfig(@NonNull android.net.wifi.aware.WifiAwareDataPathSecurityConfig);
Nate Jiangef4f8f62022-01-21 00:11:51 -0800806 method @NonNull public android.net.wifi.aware.PublishConfig.Builder setInstantCommunicationModeEnabled(boolean, int);
Anton Hansson180d9562020-01-17 19:03:34 +0000807 method public android.net.wifi.aware.PublishConfig.Builder setMatchFilter(@Nullable java.util.List<byte[]>);
808 method public android.net.wifi.aware.PublishConfig.Builder setPublishType(int);
809 method public android.net.wifi.aware.PublishConfig.Builder setRangingEnabled(boolean);
810 method public android.net.wifi.aware.PublishConfig.Builder setServiceName(@NonNull String);
811 method public android.net.wifi.aware.PublishConfig.Builder setServiceSpecificInfo(@Nullable byte[]);
812 method public android.net.wifi.aware.PublishConfig.Builder setTerminateNotificationEnabled(boolean);
813 method public android.net.wifi.aware.PublishConfig.Builder setTtlSec(int);
814 }
815
816 public class PublishDiscoverySession extends android.net.wifi.aware.DiscoverySession {
817 method public void updatePublish(@NonNull android.net.wifi.aware.PublishConfig);
818 }
819
Nate Jiang6dcd7bd2022-02-02 15:21:32 -0800820 public final class ServiceDiscoveryInfo {
Nate Jiang1050bea2022-01-21 19:03:50 -0800821 method @NonNull public java.util.List<byte[]> getMatchFilters();
822 method public int getPeerCipherSuite();
823 method @NonNull public android.net.wifi.aware.PeerHandle getPeerHandle();
824 method @Nullable public byte[] getScid();
825 method @Nullable public byte[] getServiceSpecificInfo();
826 }
827
Anton Hansson180d9562020-01-17 19:03:34 +0000828 public final class SubscribeConfig implements android.os.Parcelable {
829 method public int describeContents();
Nate Jiangef4f8f62022-01-21 00:11:51 -0800830 method public int getInstantCommunicationBand();
Nate Jiang6dcd7bd2022-02-02 15:21:32 -0800831 method public boolean isInstantCommunicationModeEnabled();
Anton Hansson180d9562020-01-17 19:03:34 +0000832 method public void writeToParcel(android.os.Parcel, int);
833 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.SubscribeConfig> CREATOR;
834 field public static final int SUBSCRIBE_TYPE_ACTIVE = 1; // 0x1
835 field public static final int SUBSCRIBE_TYPE_PASSIVE = 0; // 0x0
836 }
837
838 public static final class SubscribeConfig.Builder {
839 ctor public SubscribeConfig.Builder();
840 method public android.net.wifi.aware.SubscribeConfig build();
Nate Jiangef4f8f62022-01-21 00:11:51 -0800841 method @NonNull public android.net.wifi.aware.SubscribeConfig.Builder setInstantCommunicationModeEnabled(boolean, int);
Anton Hansson180d9562020-01-17 19:03:34 +0000842 method public android.net.wifi.aware.SubscribeConfig.Builder setMatchFilter(@Nullable java.util.List<byte[]>);
843 method public android.net.wifi.aware.SubscribeConfig.Builder setMaxDistanceMm(int);
844 method public android.net.wifi.aware.SubscribeConfig.Builder setMinDistanceMm(int);
845 method public android.net.wifi.aware.SubscribeConfig.Builder setServiceName(@NonNull String);
846 method public android.net.wifi.aware.SubscribeConfig.Builder setServiceSpecificInfo(@Nullable byte[]);
847 method public android.net.wifi.aware.SubscribeConfig.Builder setSubscribeType(int);
848 method public android.net.wifi.aware.SubscribeConfig.Builder setTerminateNotificationEnabled(boolean);
849 method public android.net.wifi.aware.SubscribeConfig.Builder setTtlSec(int);
850 }
851
852 public class SubscribeDiscoverySession extends android.net.wifi.aware.DiscoverySession {
853 method public void updateSubscribe(@NonNull android.net.wifi.aware.SubscribeConfig);
854 }
855
Nate Jiangdcc6f022022-01-11 12:31:56 -0800856 public final class WifiAwareChannelInfo implements android.os.Parcelable {
857 method public int describeContents();
858 method @IntRange(from=0) public int getChannelBandwidth();
Nate Jianga8778d02022-01-31 13:24:45 -0800859 method @IntRange(from=0) public int getChannelFrequencyMhz();
860 method @IntRange(from=0) public int getSpatialStreamCount();
Nate Jiangdcc6f022022-01-11 12:31:56 -0800861 method public void writeToParcel(@NonNull android.os.Parcel, int);
862 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareChannelInfo> CREATOR;
863 }
864
Nate Jiang292e6632022-01-12 15:49:10 -0800865 public final class WifiAwareDataPathSecurityConfig implements android.os.Parcelable {
866 method public int describeContents();
867 method public int getCipherSuite();
868 method @Nullable public byte[] getPmk();
869 method @Nullable public byte[] getPmkId();
870 method @Nullable public String getPskPassphrase();
871 method public void writeToParcel(@NonNull android.os.Parcel, int);
872 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareDataPathSecurityConfig> CREATOR;
873 }
874
875 public static final class WifiAwareDataPathSecurityConfig.Builder {
876 ctor public WifiAwareDataPathSecurityConfig.Builder(int);
877 method @NonNull public android.net.wifi.aware.WifiAwareDataPathSecurityConfig build();
878 method @NonNull public android.net.wifi.aware.WifiAwareDataPathSecurityConfig.Builder setPmk(@NonNull byte[]);
879 method @NonNull public android.net.wifi.aware.WifiAwareDataPathSecurityConfig.Builder setPmkId(@NonNull byte[]);
880 method @NonNull public android.net.wifi.aware.WifiAwareDataPathSecurityConfig.Builder setPskPassphrase(@NonNull String);
881 }
882
Anton Hansson180d9562020-01-17 19:03:34 +0000883 public class WifiAwareManager {
xshuc16c5d02021-11-17 18:47:57 -0800884 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);
885 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 -0800886 method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.aware.AwareResources getAvailableAwareResources();
887 method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public android.net.wifi.aware.Characteristics getCharacteristics();
888 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isAvailable();
889 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isDeviceAttached();
890 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isInstantCommunicationModeEnabled();
891 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public boolean isSetChannelOnDataPathSupported();
Nate Jiang59e3e022022-01-24 18:05:00 -0800892 field @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public static final String ACTION_WIFI_AWARE_RESOURCE_CHANGED = "android.net.wifi.aware.action.WIFI_AWARE_RESOURCE_CHANGED";
Anton Hansson180d9562020-01-17 19:03:34 +0000893 field public static final String ACTION_WIFI_AWARE_STATE_CHANGED = "android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED";
Nate Jiang59e3e022022-01-24 18:05:00 -0800894 field public static final String EXTRA_AWARE_RESOURCES = "android.net.wifi.aware.extra.AWARE_RESOURCES";
Anton Hansson180d9562020-01-17 19:03:34 +0000895 field public static final int WIFI_AWARE_DATA_PATH_ROLE_INITIATOR = 0; // 0x0
896 field public static final int WIFI_AWARE_DATA_PATH_ROLE_RESPONDER = 1; // 0x1
Nate Jiangf9a50c02020-10-14 14:35:52 -0700897 field public static final int WIFI_AWARE_DISCOVERY_LOST_REASON_PEER_NOT_VISIBLE = 1; // 0x1
898 field public static final int WIFI_AWARE_DISCOVERY_LOST_REASON_UNKNOWN = 0; // 0x0
Anton Hansson180d9562020-01-17 19:03:34 +0000899 }
900
901 public final class WifiAwareNetworkInfo implements android.os.Parcelable android.net.TransportInfo {
902 method public int describeContents();
Nate Jianga8778d02022-01-31 13:24:45 -0800903 method @NonNull public java.util.List<android.net.wifi.aware.WifiAwareChannelInfo> getChannelInfoList();
Anton Hansson180d9562020-01-17 19:03:34 +0000904 method @Nullable public java.net.Inet6Address getPeerIpv6Addr();
905 method public int getPort();
906 method public int getTransportProtocol();
907 method public void writeToParcel(android.os.Parcel, int);
908 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareNetworkInfo> CREATOR;
909 }
910
911 public final class WifiAwareNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
912 method public int describeContents();
Nate Jianga8778d02022-01-31 13:24:45 -0800913 method @IntRange(from=0) public int getChannelFrequencyMhz();
Nate Jiang292e6632022-01-12 15:49:10 -0800914 method @Nullable public android.net.wifi.aware.WifiAwareDataPathSecurityConfig getWifiAwareDataPathSecurityConfig();
Nate Jiang38b1ec22022-01-11 15:10:22 -0800915 method public boolean isChannelRequired();
Anton Hansson180d9562020-01-17 19:03:34 +0000916 method public void writeToParcel(android.os.Parcel, int);
917 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.aware.WifiAwareNetworkSpecifier> CREATOR;
918 }
919
920 public static final class WifiAwareNetworkSpecifier.Builder {
921 ctor public WifiAwareNetworkSpecifier.Builder(@NonNull android.net.wifi.aware.DiscoverySession, @NonNull android.net.wifi.aware.PeerHandle);
Nate Jiangef614452021-01-11 16:23:01 -0800922 ctor public WifiAwareNetworkSpecifier.Builder(@NonNull android.net.wifi.aware.PublishDiscoverySession);
Anton Hansson180d9562020-01-17 19:03:34 +0000923 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier build();
Nate Jianga8778d02022-01-31 13:24:45 -0800924 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setChannelFrequencyMhz(@IntRange(from=0) int, boolean);
Nate Jiang1050bea2022-01-21 19:03:50 -0800925 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setDataPathSecurityConfig(@NonNull android.net.wifi.aware.WifiAwareDataPathSecurityConfig);
Anton Hansson180d9562020-01-17 19:03:34 +0000926 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPmk(@NonNull byte[]);
927 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPort(@IntRange(from=0, to=65535) int);
928 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setPskPassphrase(@NonNull String);
929 method @NonNull public android.net.wifi.aware.WifiAwareNetworkSpecifier.Builder setTransportProtocol(@IntRange(from=0, to=255) int);
930 }
931
932 public class WifiAwareSession implements java.lang.AutoCloseable {
933 method public void close();
Nate Jiang6b3ae392021-03-01 15:16:18 -0800934 method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierOpen(int, @NonNull byte[]);
935 method @Deprecated public android.net.NetworkSpecifier createNetworkSpecifierPassphrase(int, @NonNull byte[], @NonNull String);
xshuc16c5d02021-11-17 18:47:57 -0800936 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);
937 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 +0000938 }
939
940}
941
942package android.net.wifi.hotspot2 {
943
944 public final class ConfigParser {
945 method public static android.net.wifi.hotspot2.PasspointConfiguration parsePasspointConfig(String, byte[]);
946 }
947
948 public final class PasspointConfiguration implements android.os.Parcelable {
949 ctor public PasspointConfiguration();
950 ctor public PasspointConfiguration(android.net.wifi.hotspot2.PasspointConfiguration);
951 method public int describeContents();
952 method public android.net.wifi.hotspot2.pps.Credential getCredential();
Hai Shalom1d362632021-03-12 15:00:50 -0800953 method @Nullable public String getDecoratedIdentityPrefix();
Anton Hansson180d9562020-01-17 19:03:34 +0000954 method public android.net.wifi.hotspot2.pps.HomeSp getHomeSp();
955 method public long getSubscriptionExpirationTimeMillis();
956 method @NonNull public String getUniqueId();
957 method public boolean isOsuProvisioned();
958 method public void setCredential(android.net.wifi.hotspot2.pps.Credential);
Hai Shalom1d362632021-03-12 15:00:50 -0800959 method public void setDecoratedIdentityPrefix(@Nullable String);
Anton Hansson180d9562020-01-17 19:03:34 +0000960 method public void setHomeSp(android.net.wifi.hotspot2.pps.HomeSp);
Hai Shalom0e159412022-02-03 19:38:31 -0800961 method public void setSubscriptionExpirationTimeInMillis(long);
Anton Hansson180d9562020-01-17 19:03:34 +0000962 method public void writeToParcel(android.os.Parcel, int);
963 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.PasspointConfiguration> CREATOR;
964 }
965
966}
967
968package android.net.wifi.hotspot2.omadm {
969
970 public final class PpsMoParser {
971 method public static android.net.wifi.hotspot2.PasspointConfiguration parseMoText(String);
972 }
973
974}
975
976package android.net.wifi.hotspot2.pps {
977
978 public final class Credential implements android.os.Parcelable {
979 ctor public Credential();
980 ctor public Credential(android.net.wifi.hotspot2.pps.Credential);
981 method public int describeContents();
982 method public java.security.cert.X509Certificate getCaCertificate();
983 method public android.net.wifi.hotspot2.pps.Credential.CertificateCredential getCertCredential();
984 method public java.security.cert.X509Certificate[] getClientCertificateChain();
985 method public java.security.PrivateKey getClientPrivateKey();
986 method public String getRealm();
987 method public android.net.wifi.hotspot2.pps.Credential.SimCredential getSimCredential();
988 method public android.net.wifi.hotspot2.pps.Credential.UserCredential getUserCredential();
989 method public void setCaCertificate(java.security.cert.X509Certificate);
990 method public void setCertCredential(android.net.wifi.hotspot2.pps.Credential.CertificateCredential);
991 method public void setClientCertificateChain(java.security.cert.X509Certificate[]);
992 method public void setClientPrivateKey(java.security.PrivateKey);
993 method public void setRealm(String);
994 method public void setSimCredential(android.net.wifi.hotspot2.pps.Credential.SimCredential);
995 method public void setUserCredential(android.net.wifi.hotspot2.pps.Credential.UserCredential);
996 method public void writeToParcel(android.os.Parcel, int);
997 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential> CREATOR;
998 }
999
1000 public static final class Credential.CertificateCredential implements android.os.Parcelable {
1001 ctor public Credential.CertificateCredential();
1002 ctor public Credential.CertificateCredential(android.net.wifi.hotspot2.pps.Credential.CertificateCredential);
1003 method public int describeContents();
1004 method public byte[] getCertSha256Fingerprint();
1005 method public String getCertType();
1006 method public void setCertSha256Fingerprint(byte[]);
1007 method public void setCertType(String);
1008 method public void writeToParcel(android.os.Parcel, int);
1009 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.CertificateCredential> CREATOR;
1010 }
1011
1012 public static final class Credential.SimCredential implements android.os.Parcelable {
1013 ctor public Credential.SimCredential();
1014 ctor public Credential.SimCredential(android.net.wifi.hotspot2.pps.Credential.SimCredential);
1015 method public int describeContents();
1016 method public int getEapType();
1017 method public String getImsi();
1018 method public void setEapType(int);
1019 method public void setImsi(String);
1020 method public void writeToParcel(android.os.Parcel, int);
1021 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.SimCredential> CREATOR;
1022 }
1023
1024 public static final class Credential.UserCredential implements android.os.Parcelable {
1025 ctor public Credential.UserCredential();
1026 ctor public Credential.UserCredential(android.net.wifi.hotspot2.pps.Credential.UserCredential);
1027 method public int describeContents();
1028 method public int getEapType();
1029 method public String getNonEapInnerMethod();
1030 method public String getPassword();
1031 method public String getUsername();
1032 method public void setEapType(int);
1033 method public void setNonEapInnerMethod(String);
1034 method public void setPassword(String);
1035 method public void setUsername(String);
1036 method public void writeToParcel(android.os.Parcel, int);
1037 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.UserCredential> CREATOR;
1038 }
1039
1040 public final class HomeSp implements android.os.Parcelable {
1041 ctor public HomeSp();
1042 ctor public HomeSp(android.net.wifi.hotspot2.pps.HomeSp);
1043 method public int describeContents();
1044 method public String getFqdn();
1045 method public String getFriendlyName();
Hai Shalomac2e9dc2020-09-15 15:32:11 -07001046 method @Nullable public long[] getMatchAllOis();
1047 method @Nullable public long[] getMatchAnyOis();
Hai Shalome2853f12020-10-14 18:21:52 -07001048 method @NonNull public java.util.Collection<java.lang.String> getOtherHomePartnersList();
Anton Hansson180d9562020-01-17 19:03:34 +00001049 method public long[] getRoamingConsortiumOis();
1050 method public void setFqdn(String);
1051 method public void setFriendlyName(String);
Hai Shalomac2e9dc2020-09-15 15:32:11 -07001052 method public void setMatchAllOis(@Nullable long[]);
1053 method public void setMatchAnyOis(@Nullable long[]);
Hai Shalome2853f12020-10-14 18:21:52 -07001054 method public void setOtherHomePartnersList(@NonNull java.util.Collection<java.lang.String>);
Anton Hansson180d9562020-01-17 19:03:34 +00001055 method public void setRoamingConsortiumOis(long[]);
1056 method public void writeToParcel(android.os.Parcel, int);
1057 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.HomeSp> CREATOR;
1058 }
1059
1060}
1061
1062package android.net.wifi.p2p {
1063
1064 public class WifiP2pConfig implements android.os.Parcelable {
1065 ctor public WifiP2pConfig();
1066 ctor public WifiP2pConfig(android.net.wifi.p2p.WifiP2pConfig);
1067 method public int describeContents();
1068 method public int getGroupOwnerBand();
1069 method public int getNetworkId();
1070 method @Nullable public String getNetworkName();
1071 method @Nullable public String getPassphrase();
1072 method public void writeToParcel(android.os.Parcel, int);
1073 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pConfig> CREATOR;
1074 field public static final int GROUP_OWNER_BAND_2GHZ = 1; // 0x1
1075 field public static final int GROUP_OWNER_BAND_5GHZ = 2; // 0x2
1076 field public static final int GROUP_OWNER_BAND_AUTO = 0; // 0x0
1077 field public static final int GROUP_OWNER_INTENT_AUTO = -1; // 0xffffffff
1078 field public static final int GROUP_OWNER_INTENT_MAX = 15; // 0xf
1079 field public static final int GROUP_OWNER_INTENT_MIN = 0; // 0x0
1080 field public String deviceAddress;
1081 field @IntRange(from=0, to=15) public int groupOwnerIntent;
1082 field public android.net.wifi.WpsInfo wps;
1083 }
1084
1085 public static final class WifiP2pConfig.Builder {
1086 ctor public WifiP2pConfig.Builder();
1087 method @NonNull public android.net.wifi.p2p.WifiP2pConfig build();
1088 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder enablePersistentMode(boolean);
1089 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setDeviceAddress(@Nullable android.net.MacAddress);
1090 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setGroupOperatingBand(int);
1091 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setGroupOperatingFrequency(int);
1092 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setNetworkName(@NonNull String);
1093 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setPassphrase(@NonNull String);
1094 }
1095
1096 public class WifiP2pDevice implements android.os.Parcelable {
1097 ctor public WifiP2pDevice();
1098 ctor public WifiP2pDevice(android.net.wifi.p2p.WifiP2pDevice);
1099 method public int describeContents();
1100 method @Nullable public android.net.wifi.p2p.WifiP2pWfdInfo getWfdInfo();
1101 method public boolean isGroupOwner();
1102 method public boolean isServiceDiscoveryCapable();
1103 method public void update(@NonNull android.net.wifi.p2p.WifiP2pDevice);
1104 method public boolean wpsDisplaySupported();
1105 method public boolean wpsKeypadSupported();
1106 method public boolean wpsPbcSupported();
1107 method public void writeToParcel(android.os.Parcel, int);
1108 field public static final int AVAILABLE = 3; // 0x3
1109 field public static final int CONNECTED = 0; // 0x0
1110 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pDevice> CREATOR;
1111 field public static final int FAILED = 2; // 0x2
1112 field public static final int INVITED = 1; // 0x1
1113 field public static final int UNAVAILABLE = 4; // 0x4
1114 field public String deviceAddress;
1115 field public String deviceName;
1116 field public String primaryDeviceType;
1117 field public String secondaryDeviceType;
1118 field public int status;
1119 }
1120
1121 public class WifiP2pDeviceList implements android.os.Parcelable {
1122 ctor public WifiP2pDeviceList();
1123 ctor public WifiP2pDeviceList(android.net.wifi.p2p.WifiP2pDeviceList);
1124 method public int describeContents();
1125 method public android.net.wifi.p2p.WifiP2pDevice get(String);
1126 method public java.util.Collection<android.net.wifi.p2p.WifiP2pDevice> getDeviceList();
1127 method public void writeToParcel(android.os.Parcel, int);
1128 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pDeviceList> CREATOR;
1129 }
1130
1131 public class WifiP2pGroup implements android.os.Parcelable {
1132 ctor public WifiP2pGroup();
1133 ctor public WifiP2pGroup(android.net.wifi.p2p.WifiP2pGroup);
1134 method public int describeContents();
1135 method public java.util.Collection<android.net.wifi.p2p.WifiP2pDevice> getClientList();
1136 method public int getFrequency();
1137 method public String getInterface();
1138 method public int getNetworkId();
1139 method public String getNetworkName();
1140 method public android.net.wifi.p2p.WifiP2pDevice getOwner();
1141 method public String getPassphrase();
1142 method public boolean isGroupOwner();
1143 method public void writeToParcel(android.os.Parcel, int);
1144 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pGroup> CREATOR;
1145 field public static final int NETWORK_ID_PERSISTENT = -2; // 0xfffffffe
1146 field public static final int NETWORK_ID_TEMPORARY = -1; // 0xffffffff
1147 }
1148
1149 public class WifiP2pInfo implements android.os.Parcelable {
1150 ctor public WifiP2pInfo();
1151 ctor public WifiP2pInfo(android.net.wifi.p2p.WifiP2pInfo);
1152 method public int describeContents();
1153 method public void writeToParcel(android.os.Parcel, int);
1154 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pInfo> CREATOR;
1155 field public boolean groupFormed;
1156 field public java.net.InetAddress groupOwnerAddress;
1157 field public boolean isGroupOwner;
1158 }
1159
1160 public class WifiP2pManager {
Jimmy Chen1cfdc7b2022-02-09 13:16:24 +08001161 method @RequiresPermission(android.Manifest.permission.MANAGE_WIFI_AUTO_JOIN) public void addExternalApprover(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.MacAddress, @NonNull android.net.wifi.p2p.WifiP2pManager.ExternalApproverRequestListener);
xshu34fe9862021-12-03 18:39:36 -08001162 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 +00001163 method public void addServiceRequest(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceRequest, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1164 method public void cancelConnect(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1165 method public void clearLocalServices(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1166 method public void clearServiceRequests(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
xshu34fe9862021-12-03 18:39:36 -08001167 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);
1168 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);
1169 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);
1170 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);
Jimmy Chen3beccd52021-12-24 14:30:38 +08001171 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void discoverPeersOnSocialChannels(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
1172 method @RequiresPermission(allOf={android.Manifest.permission.NEARBY_WIFI_DEVICES, android.Manifest.permission.ACCESS_FINE_LOCATION}, conditional=true) public void discoverPeersOnSpecificFrequency(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, int, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
xshu34fe9862021-12-03 18:39:36 -08001173 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 +00001174 method public android.net.wifi.p2p.WifiP2pManager.Channel initialize(android.content.Context, android.os.Looper, android.net.wifi.p2p.WifiP2pManager.ChannelListener);
Miaf26b6792021-12-02 05:49:06 +00001175 method public void removeClient(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.MacAddress, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
Jimmy Chen1cfdc7b2022-02-09 13:16:24 +08001176 method @RequiresPermission(android.Manifest.permission.MANAGE_WIFI_AUTO_JOIN) public void removeExternalApprover(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.MacAddress, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
Anton Hansson180d9562020-01-17 19:03:34 +00001177 method public void removeGroup(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1178 method public void removeLocalService(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1179 method public void removeServiceRequest(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceRequest, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1180 method public void requestConnectionInfo(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ConnectionInfoListener);
xshu34fe9862021-12-03 18:39:36 -08001181 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 +00001182 method public void requestDiscoveryState(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.DiscoveryStateListener);
xshu34fe9862021-12-03 18:39:36 -08001183 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 +00001184 method public void requestNetworkInfo(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.NetworkInfoListener);
1185 method public void requestP2pState(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.P2pStateListener);
xshu34fe9862021-12-03 18:39:36 -08001186 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);
Jimmy Chen1cfdc7b2022-02-09 13:16:24 +08001187 method @RequiresPermission(android.Manifest.permission.MANAGE_WIFI_AUTO_JOIN) public void setConnectionRequestResult(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.MacAddress, int, @Nullable android.net.wifi.p2p.WifiP2pManager.ActionListener);
Anton Hansson180d9562020-01-17 19:03:34 +00001188 method public void setDnsSdResponseListeners(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.DnsSdServiceResponseListener, android.net.wifi.p2p.WifiP2pManager.DnsSdTxtRecordListener);
1189 method public void setServiceResponseListener(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ServiceResponseListener);
1190 method public void setUpnpServiceResponseListener(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.UpnpServiceResponseListener);
xshu63f3e8f2021-12-09 12:25:44 -08001191 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 +08001192 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 +00001193 method public void stopPeerDiscovery(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1194 field public static final int BUSY = 2; // 0x2
Jimmy Chen1cfdc7b2022-02-09 13:16:24 +08001195 field public static final int CONNECTION_REQUEST_ACCEPT = 0; // 0x0
1196 field public static final int CONNECTION_REQUEST_DEFER_SHOW_PIN_TO_SERVICE = 3; // 0x3
1197 field public static final int CONNECTION_REQUEST_DEFER_TO_SERVICE = 2; // 0x2
1198 field public static final int CONNECTION_REQUEST_REJECT = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +00001199 field public static final int ERROR = 0; // 0x0
1200 field public static final String EXTRA_DISCOVERY_STATE = "discoveryState";
1201 field public static final String EXTRA_NETWORK_INFO = "networkInfo";
1202 field public static final String EXTRA_P2P_DEVICE_LIST = "wifiP2pDeviceList";
1203 field public static final String EXTRA_WIFI_P2P_DEVICE = "wifiP2pDevice";
1204 field public static final String EXTRA_WIFI_P2P_GROUP = "p2pGroupInfo";
1205 field public static final String EXTRA_WIFI_P2P_INFO = "wifiP2pInfo";
1206 field public static final String EXTRA_WIFI_STATE = "wifi_p2p_state";
1207 field public static final int NO_SERVICE_REQUESTS = 3; // 0x3
1208 field public static final int P2P_UNSUPPORTED = 1; // 0x1
1209 field public static final String WIFI_P2P_CONNECTION_CHANGED_ACTION = "android.net.wifi.p2p.CONNECTION_STATE_CHANGE";
1210 field public static final String WIFI_P2P_DISCOVERY_CHANGED_ACTION = "android.net.wifi.p2p.DISCOVERY_STATE_CHANGE";
1211 field public static final int WIFI_P2P_DISCOVERY_STARTED = 2; // 0x2
1212 field public static final int WIFI_P2P_DISCOVERY_STOPPED = 1; // 0x1
1213 field public static final String WIFI_P2P_PEERS_CHANGED_ACTION = "android.net.wifi.p2p.PEERS_CHANGED";
1214 field public static final String WIFI_P2P_STATE_CHANGED_ACTION = "android.net.wifi.p2p.STATE_CHANGED";
1215 field public static final int WIFI_P2P_STATE_DISABLED = 1; // 0x1
1216 field public static final int WIFI_P2P_STATE_ENABLED = 2; // 0x2
1217 field public static final String WIFI_P2P_THIS_DEVICE_CHANGED_ACTION = "android.net.wifi.p2p.THIS_DEVICE_CHANGED";
1218 }
1219
1220 public static interface WifiP2pManager.ActionListener {
1221 method public void onFailure(int);
1222 method public void onSuccess();
1223 }
1224
1225 public static class WifiP2pManager.Channel implements java.lang.AutoCloseable {
1226 method public void close();
1227 }
1228
1229 public static interface WifiP2pManager.ChannelListener {
1230 method public void onChannelDisconnected();
1231 }
1232
1233 public static interface WifiP2pManager.ConnectionInfoListener {
1234 method public void onConnectionInfoAvailable(android.net.wifi.p2p.WifiP2pInfo);
1235 }
1236
1237 public static interface WifiP2pManager.DeviceInfoListener {
1238 method public void onDeviceInfoAvailable(@Nullable android.net.wifi.p2p.WifiP2pDevice);
1239 }
1240
1241 public static interface WifiP2pManager.DiscoveryStateListener {
1242 method public void onDiscoveryStateAvailable(int);
1243 }
1244
1245 public static interface WifiP2pManager.DnsSdServiceResponseListener {
1246 method public void onDnsSdServiceAvailable(String, String, android.net.wifi.p2p.WifiP2pDevice);
1247 }
1248
1249 public static interface WifiP2pManager.DnsSdTxtRecordListener {
1250 method public void onDnsSdTxtRecordAvailable(String, java.util.Map<java.lang.String,java.lang.String>, android.net.wifi.p2p.WifiP2pDevice);
1251 }
1252
Jimmy Chen1cfdc7b2022-02-09 13:16:24 +08001253 public static interface WifiP2pManager.ExternalApproverRequestListener {
1254 method public void onAttached(@NonNull android.net.MacAddress);
1255 method public void onConnectionRequested(int, @NonNull android.net.wifi.p2p.WifiP2pConfig, @NonNull android.net.wifi.p2p.WifiP2pDevice);
1256 method public void onDetached(@NonNull android.net.MacAddress, int);
1257 method public void onPinGenerated(@NonNull android.net.MacAddress, @NonNull String);
1258 field public static final int APPROVER_DETACH_REASON_CLOSE = 3; // 0x3
1259 field public static final int APPROVER_DETACH_REASON_FAILURE = 1; // 0x1
1260 field public static final int APPROVER_DETACH_REASON_REMOVE = 0; // 0x0
1261 field public static final int APPROVER_DETACH_REASON_REPLACE = 2; // 0x2
1262 field public static final int REQUEST_TYPE_INVITATION = 1; // 0x1
1263 field public static final int REQUEST_TYPE_JOIN = 2; // 0x2
1264 field public static final int REQUEST_TYPE_NEGOTIATION = 0; // 0x0
1265 }
1266
Anton Hansson180d9562020-01-17 19:03:34 +00001267 public static interface WifiP2pManager.GroupInfoListener {
1268 method public void onGroupInfoAvailable(android.net.wifi.p2p.WifiP2pGroup);
1269 }
1270
1271 public static interface WifiP2pManager.NetworkInfoListener {
1272 method public void onNetworkInfoAvailable(@NonNull android.net.NetworkInfo);
1273 }
1274
1275 public static interface WifiP2pManager.P2pStateListener {
1276 method public void onP2pStateAvailable(int);
1277 }
1278
1279 public static interface WifiP2pManager.PeerListListener {
1280 method public void onPeersAvailable(android.net.wifi.p2p.WifiP2pDeviceList);
1281 }
1282
1283 public static interface WifiP2pManager.ServiceResponseListener {
1284 method public void onServiceAvailable(int, byte[], android.net.wifi.p2p.WifiP2pDevice);
1285 }
1286
1287 public static interface WifiP2pManager.UpnpServiceResponseListener {
1288 method public void onUpnpServiceAvailable(java.util.List<java.lang.String>, android.net.wifi.p2p.WifiP2pDevice);
1289 }
1290
1291 public final class WifiP2pWfdInfo implements android.os.Parcelable {
1292 ctor public WifiP2pWfdInfo();
1293 ctor public WifiP2pWfdInfo(@Nullable android.net.wifi.p2p.WifiP2pWfdInfo);
1294 method public int describeContents();
1295 method public int getControlPort();
Jimmy Chen4ada7922021-03-23 14:31:03 +08001296 method public int getDeviceInfo();
Anton Hansson180d9562020-01-17 19:03:34 +00001297 method public int getDeviceType();
1298 method public int getMaxThroughput();
Jimmy Chen4ada7922021-03-23 14:31:03 +08001299 method public int getR2DeviceInfo();
Jimmy Chen7ddb4502021-03-18 12:30:13 +08001300 method public int getR2DeviceType();
Anton Hansson180d9562020-01-17 19:03:34 +00001301 method public boolean isContentProtectionSupported();
Jimmy Chena5e551b2021-03-05 16:42:39 +08001302 method public boolean isCoupledSinkSupportedAtSink();
1303 method public boolean isCoupledSinkSupportedAtSource();
Anton Hansson180d9562020-01-17 19:03:34 +00001304 method public boolean isEnabled();
Jimmy Chenec558292021-03-18 17:41:06 +08001305 method public boolean isR2Supported();
Anton Hansson180d9562020-01-17 19:03:34 +00001306 method public boolean isSessionAvailable();
1307 method public void setContentProtectionSupported(boolean);
1308 method public void setControlPort(@IntRange(from=0) int);
Jimmy Chena5e551b2021-03-05 16:42:39 +08001309 method public void setCoupledSinkSupportAtSink(boolean);
1310 method public void setCoupledSinkSupportAtSource(boolean);
Anton Hansson180d9562020-01-17 19:03:34 +00001311 method public boolean setDeviceType(int);
1312 method public void setEnabled(boolean);
1313 method public void setMaxThroughput(@IntRange(from=0) int);
Jimmy Chenec558292021-03-18 17:41:06 +08001314 method public boolean setR2DeviceType(int);
Anton Hansson180d9562020-01-17 19:03:34 +00001315 method public void setSessionAvailable(boolean);
1316 method public void writeToParcel(@NonNull android.os.Parcel, int);
1317 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pWfdInfo> CREATOR;
Jimmy Chen012448d2021-03-30 17:37:52 +08001318 field public static final int DEVICE_INFO_AUDIO_ONLY_SUPPORT_AT_SOURCE = 2048; // 0x800
1319 field public static final int DEVICE_INFO_AUDIO_UNSUPPORTED_AT_PRIMARY_SINK = 1024; // 0x400
1320 field public static final int DEVICE_INFO_CONTENT_PROTECTION_SUPPORT = 256; // 0x100
1321 field public static final int DEVICE_INFO_COUPLED_SINK_SUPPORT_AT_SINK = 8; // 0x8
1322 field public static final int DEVICE_INFO_COUPLED_SINK_SUPPORT_AT_SOURCE = 4; // 0x4
1323 field public static final int DEVICE_INFO_DEVICE_TYPE_MASK = 3; // 0x3
1324 field public static final int DEVICE_INFO_PREFERRED_CONNECTIVITY_MASK = 128; // 0x80
1325 field public static final int DEVICE_INFO_SESSION_AVAILABLE_MASK = 48; // 0x30
1326 field public static final int DEVICE_INFO_TDLS_PERSISTENT_GROUP = 4096; // 0x1000
1327 field public static final int DEVICE_INFO_TDLS_PERSISTENT_GROUP_REINVOKE = 8192; // 0x2000
1328 field public static final int DEVICE_INFO_TIME_SYNCHRONIZATION_SUPPORT = 512; // 0x200
1329 field public static final int DEVICE_INFO_WFD_SERVICE_DISCOVERY_SUPPORT = 64; // 0x40
Anton Hansson180d9562020-01-17 19:03:34 +00001330 field public static final int DEVICE_TYPE_PRIMARY_SINK = 1; // 0x1
1331 field public static final int DEVICE_TYPE_SECONDARY_SINK = 2; // 0x2
1332 field public static final int DEVICE_TYPE_SOURCE_OR_PRIMARY_SINK = 3; // 0x3
1333 field public static final int DEVICE_TYPE_WFD_SOURCE = 0; // 0x0
Jimmy Chen4ada7922021-03-23 14:31:03 +08001334 field public static final int PREFERRED_CONNECTIVITY_P2P = 0; // 0x0
1335 field public static final int PREFERRED_CONNECTIVITY_TDLS = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +00001336 }
1337
1338}
1339
1340package android.net.wifi.p2p.nsd {
1341
1342 public class WifiP2pDnsSdServiceInfo extends android.net.wifi.p2p.nsd.WifiP2pServiceInfo {
1343 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceInfo newInstance(String, String, java.util.Map<java.lang.String,java.lang.String>);
1344 }
1345
1346 public class WifiP2pDnsSdServiceRequest extends android.net.wifi.p2p.nsd.WifiP2pServiceRequest {
1347 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance();
1348 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance(String);
1349 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance(String, String);
1350 }
1351
1352 public class WifiP2pServiceInfo implements android.os.Parcelable {
1353 method public int describeContents();
1354 method public void writeToParcel(android.os.Parcel, int);
1355 field public static final int SERVICE_TYPE_ALL = 0; // 0x0
1356 field public static final int SERVICE_TYPE_BONJOUR = 1; // 0x1
1357 field public static final int SERVICE_TYPE_UPNP = 2; // 0x2
1358 field public static final int SERVICE_TYPE_VENDOR_SPECIFIC = 255; // 0xff
1359 }
1360
1361 public class WifiP2pServiceRequest implements android.os.Parcelable {
1362 method public int describeContents();
1363 method public static android.net.wifi.p2p.nsd.WifiP2pServiceRequest newInstance(int, String);
1364 method public static android.net.wifi.p2p.nsd.WifiP2pServiceRequest newInstance(int);
1365 method public void writeToParcel(android.os.Parcel, int);
1366 }
1367
1368 public class WifiP2pUpnpServiceInfo extends android.net.wifi.p2p.nsd.WifiP2pServiceInfo {
1369 method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceInfo newInstance(String, String, java.util.List<java.lang.String>);
1370 }
1371
1372 public class WifiP2pUpnpServiceRequest extends android.net.wifi.p2p.nsd.WifiP2pServiceRequest {
1373 method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest newInstance();
1374 method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest newInstance(String);
1375 }
1376
1377}
1378
1379package android.net.wifi.rtt {
1380
1381 public class CivicLocationKeys {
1382 field public static final int ADDITIONAL_CODE = 32; // 0x20
1383 field public static final int APT = 26; // 0x1a
1384 field public static final int BOROUGH = 4; // 0x4
1385 field public static final int BRANCH_ROAD_NAME = 36; // 0x24
1386 field public static final int BUILDING = 25; // 0x19
1387 field public static final int CITY = 3; // 0x3
1388 field public static final int COUNTY = 2; // 0x2
1389 field public static final int DESK = 33; // 0x21
1390 field public static final int FLOOR = 27; // 0x1b
1391 field public static final int GROUP_OF_STREETS = 6; // 0x6
1392 field public static final int HNO = 19; // 0x13
1393 field public static final int HNS = 20; // 0x14
1394 field public static final int LANGUAGE = 0; // 0x0
1395 field public static final int LMK = 21; // 0x15
1396 field public static final int LOC = 22; // 0x16
1397 field public static final int NAM = 23; // 0x17
1398 field public static final int NEIGHBORHOOD = 5; // 0x5
1399 field public static final int PCN = 30; // 0x1e
1400 field public static final int POD = 17; // 0x11
1401 field public static final int POSTAL_CODE = 24; // 0x18
1402 field public static final int PO_BOX = 31; // 0x1f
1403 field public static final int PRD = 16; // 0x10
1404 field public static final int PRIMARY_ROAD_NAME = 34; // 0x22
1405 field public static final int ROAD_SECTION = 35; // 0x23
1406 field public static final int ROOM = 28; // 0x1c
1407 field public static final int SCRIPT = 128; // 0x80
1408 field public static final int STATE = 1; // 0x1
1409 field public static final int STREET_NAME_POST_MODIFIER = 39; // 0x27
1410 field public static final int STREET_NAME_PRE_MODIFIER = 38; // 0x26
1411 field public static final int STS = 18; // 0x12
1412 field public static final int SUBBRANCH_ROAD_NAME = 37; // 0x25
1413 field public static final int TYPE_OF_PLACE = 29; // 0x1d
1414 }
1415
1416 public final class RangingRequest implements android.os.Parcelable {
1417 method public int describeContents();
Roy Wantdd5825e2020-12-08 21:24:04 -08001418 method public static int getDefaultRttBurstSize();
Anton Hansson180d9562020-01-17 19:03:34 +00001419 method public static int getMaxPeers();
Roy Wantdd5825e2020-12-08 21:24:04 -08001420 method public static int getMaxRttBurstSize();
1421 method public static int getMinRttBurstSize();
1422 method public int getRttBurstSize();
Anton Hansson180d9562020-01-17 19:03:34 +00001423 method public void writeToParcel(android.os.Parcel, int);
1424 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.RangingRequest> CREATOR;
1425 }
1426
1427 public static final class RangingRequest.Builder {
1428 ctor public RangingRequest.Builder();
Roy Want50deac12021-12-19 15:15:35 -08001429 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addAccessPoint(@NonNull android.net.wifi.ScanResult);
1430 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 -08001431 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addNon80211mcCapableAccessPoint(@NonNull android.net.wifi.ScanResult);
1432 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 -08001433 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addResponder(@NonNull android.net.wifi.rtt.ResponderConfig);
1434 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 +00001435 method public android.net.wifi.rtt.RangingRequest.Builder addWifiAwarePeer(@NonNull android.net.MacAddress);
1436 method public android.net.wifi.rtt.RangingRequest.Builder addWifiAwarePeer(@NonNull android.net.wifi.aware.PeerHandle);
1437 method public android.net.wifi.rtt.RangingRequest build();
Roy Wantdd5825e2020-12-08 21:24:04 -08001438 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder setRttBurstSize(int);
Anton Hansson180d9562020-01-17 19:03:34 +00001439 }
1440
1441 public final class RangingResult implements android.os.Parcelable {
1442 method public int describeContents();
1443 method public int getDistanceMm();
1444 method public int getDistanceStdDevMm();
1445 method @Nullable public android.net.MacAddress getMacAddress();
1446 method public int getNumAttemptedMeasurements();
1447 method public int getNumSuccessfulMeasurements();
1448 method @Nullable public android.net.wifi.aware.PeerHandle getPeerHandle();
1449 method public long getRangingTimestampMillis();
1450 method public int getRssi();
1451 method public int getStatus();
1452 method @Nullable public android.net.wifi.rtt.ResponderLocation getUnverifiedResponderLocation();
Roy Want8e5dea02020-12-18 19:56:30 -08001453 method public boolean is80211mcMeasurement();
Anton Hansson180d9562020-01-17 19:03:34 +00001454 method public void writeToParcel(android.os.Parcel, int);
1455 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.RangingResult> CREATOR;
1456 field public static final int STATUS_FAIL = 1; // 0x1
1457 field public static final int STATUS_RESPONDER_DOES_NOT_SUPPORT_IEEE80211MC = 2; // 0x2
1458 field public static final int STATUS_SUCCESS = 0; // 0x0
1459 }
1460
1461 public abstract class RangingResultCallback {
1462 ctor public RangingResultCallback();
1463 method public abstract void onRangingFailure(int);
1464 method public abstract void onRangingResults(@NonNull java.util.List<android.net.wifi.rtt.RangingResult>);
1465 field public static final int STATUS_CODE_FAIL = 1; // 0x1
1466 field public static final int STATUS_CODE_FAIL_RTT_NOT_AVAILABLE = 2; // 0x2
1467 }
1468
Roy Want50deac12021-12-19 15:15:35 -08001469 public final class ResponderConfig implements android.os.Parcelable {
1470 method public int describeContents();
1471 method @NonNull public static android.net.wifi.rtt.ResponderConfig fromScanResult(@NonNull android.net.wifi.ScanResult);
1472 method public int getCenterFreq0Mhz();
1473 method public int getCenterFreq1Mhz();
1474 method public int getChannelWidth();
1475 method public int getFrequencyMhz();
1476 method @Nullable public android.net.MacAddress getMacAddress();
1477 method public int getPreamble();
1478 method public boolean is80211mcSupported();
1479 method public void writeToParcel(@NonNull android.os.Parcel, int);
1480 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderConfig> CREATOR;
1481 }
1482
1483 public static final class ResponderConfig.Builder {
1484 ctor public ResponderConfig.Builder();
1485 method @NonNull public android.net.wifi.rtt.ResponderConfig build();
1486 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder set80211mcSupported(boolean);
1487 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setCenterFreq0Mhz(int);
1488 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setCenterFreq1Mhz(int);
1489 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setChannelWidth(int);
1490 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setFrequencyMhz(int);
1491 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setMacAddress(@NonNull android.net.MacAddress);
1492 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setPreamble(int);
1493 }
1494
Anton Hansson180d9562020-01-17 19:03:34 +00001495 public final class ResponderLocation implements android.os.Parcelable {
1496 method public int describeContents();
1497 method public double getAltitude();
1498 method public int getAltitudeType();
1499 method public double getAltitudeUncertainty();
1500 method public java.util.List<android.net.MacAddress> getColocatedBssids();
1501 method public int getDatum();
1502 method public int getExpectedToMove();
1503 method public double getFloorNumber();
1504 method public double getHeightAboveFloorMeters();
1505 method public double getHeightAboveFloorUncertaintyMeters();
1506 method public double getLatitude();
1507 method public double getLatitudeUncertainty();
1508 method public int getLciVersion();
1509 method public double getLongitude();
1510 method public double getLongitudeUncertainty();
1511 method @Nullable public String getMapImageMimeType();
1512 method @Nullable public android.net.Uri getMapImageUri();
1513 method public boolean getRegisteredLocationAgreementIndication();
1514 method public boolean isLciSubelementValid();
1515 method public boolean isZaxisSubelementValid();
1516 method @Nullable public android.location.Address toCivicLocationAddress();
1517 method @Nullable public android.util.SparseArray<java.lang.String> toCivicLocationSparseArray();
1518 method @NonNull public android.location.Location toLocation();
1519 method public void writeToParcel(android.os.Parcel, int);
1520 field public static final int ALTITUDE_FLOORS = 2; // 0x2
1521 field public static final int ALTITUDE_METERS = 1; // 0x1
1522 field public static final int ALTITUDE_UNDEFINED = 0; // 0x0
1523 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderLocation> CREATOR;
1524 field public static final int DATUM_NAD83_MLLW = 3; // 0x3
1525 field public static final int DATUM_NAD83_NAV88 = 2; // 0x2
1526 field public static final int DATUM_UNDEFINED = 0; // 0x0
1527 field public static final int DATUM_WGS84 = 1; // 0x1
1528 field public static final int LCI_VERSION_1 = 1; // 0x1
1529 field public static final int LOCATION_FIXED = 0; // 0x0
1530 field public static final int LOCATION_MOVEMENT_UNKNOWN = 2; // 0x2
1531 field public static final int LOCATION_RESERVED = 3; // 0x3
1532 field public static final int LOCATION_VARIABLE = 1; // 0x1
1533 }
1534
1535 public class WifiRttManager {
1536 method public boolean isAvailable();
xshu9d932842021-11-18 17:20:38 -08001537 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 +00001538 field public static final String ACTION_WIFI_RTT_STATE_CHANGED = "android.net.wifi.rtt.action.WIFI_RTT_STATE_CHANGED";
1539 }
1540
1541}
1542