blob: 727b1902bef884dc997af862919f31958d825e56 [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
Purushottam Kushwahae57c5e12021-12-23 12:43:56 +053094 field public static final int SECURITY_TYPE_WPA3_OWE_TRANSITION = 4; // 0x4
Anton Hansson180d9562020-01-17 19:03:34 +000095 field public static final int SECURITY_TYPE_WPA3_SAE = 3; // 0x3
96 field public static final int SECURITY_TYPE_WPA3_SAE_TRANSITION = 2; // 0x2
97 }
98
99 public enum SupplicantState implements android.os.Parcelable {
100 method public int describeContents();
101 method public static boolean isValidState(android.net.wifi.SupplicantState);
102 method public void writeToParcel(android.os.Parcel, int);
103 enum_constant public static final android.net.wifi.SupplicantState ASSOCIATED;
104 enum_constant public static final android.net.wifi.SupplicantState ASSOCIATING;
105 enum_constant public static final android.net.wifi.SupplicantState AUTHENTICATING;
106 enum_constant public static final android.net.wifi.SupplicantState COMPLETED;
107 enum_constant public static final android.net.wifi.SupplicantState DISCONNECTED;
108 enum_constant public static final android.net.wifi.SupplicantState DORMANT;
109 enum_constant public static final android.net.wifi.SupplicantState FOUR_WAY_HANDSHAKE;
110 enum_constant public static final android.net.wifi.SupplicantState GROUP_HANDSHAKE;
111 enum_constant public static final android.net.wifi.SupplicantState INACTIVE;
112 enum_constant public static final android.net.wifi.SupplicantState INTERFACE_DISABLED;
113 enum_constant public static final android.net.wifi.SupplicantState INVALID;
114 enum_constant public static final android.net.wifi.SupplicantState SCANNING;
115 enum_constant public static final android.net.wifi.SupplicantState UNINITIALIZED;
116 }
117
118 @Deprecated public class WifiConfiguration implements android.os.Parcelable {
119 ctor @Deprecated public WifiConfiguration();
120 ctor @Deprecated public WifiConfiguration(@NonNull android.net.wifi.WifiConfiguration);
121 method public int describeContents();
122 method @Deprecated public android.net.ProxyInfo getHttpProxy();
123 method @Deprecated @NonNull public String getKey();
Stephanie Bak1ccc1bc2021-12-30 05:13:38 +0000124 method @Deprecated public int getMacRandomizationSetting();
Anton Hansson180d9562020-01-17 19:03:34 +0000125 method @Deprecated @NonNull public android.net.MacAddress getRandomizedMacAddress();
Sunil Ravi07723e22022-02-10 13:47:34 -0800126 method @Deprecated public boolean isDppConfigurator();
Anton Hansson180d9562020-01-17 19:03:34 +0000127 method @Deprecated public boolean isPasspoint();
128 method @Deprecated public void setHttpProxy(android.net.ProxyInfo);
Stephanie Bak1ccc1bc2021-12-30 05:13:38 +0000129 method @Deprecated public void setMacRandomizationSetting(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000130 method @Deprecated public void setSecurityParams(int);
131 method public void writeToParcel(android.os.Parcel, int);
132 field @Deprecated public String BSSID;
133 field @Deprecated public String FQDN;
Stephanie Bak1ccc1bc2021-12-30 05:13:38 +0000134 field @Deprecated public static final int RANDOMIZATION_AUTO = 3; // 0x3
135 field @Deprecated public static final int RANDOMIZATION_NONE = 0; // 0x0
136 field @Deprecated public static final int RANDOMIZATION_NON_PERSISTENT = 2; // 0x2
137 field @Deprecated public static final int RANDOMIZATION_PERSISTENT = 1; // 0x1
Sunil Ravi07723e22022-02-10 13:47:34 -0800138 field @Deprecated public static final int SECURITY_TYPE_DPP = 13; // 0xd
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
Sunil Ravi07723e22022-02-10 13:47:34 -0800342 field public static final int SECURITY_TYPE_DPP = 13; // 0xd
Hai Shalom46a7a672021-03-17 14:58:55 -0700343 field public static final int SECURITY_TYPE_EAP = 3; // 0x3
344 field public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE = 9; // 0x9
345 field public static final int SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT = 5; // 0x5
346 field public static final int SECURITY_TYPE_OPEN = 0; // 0x0
347 field public static final int SECURITY_TYPE_OSEN = 10; // 0xa
348 field public static final int SECURITY_TYPE_OWE = 6; // 0x6
349 field public static final int SECURITY_TYPE_PASSPOINT_R1_R2 = 11; // 0xb
350 field public static final int SECURITY_TYPE_PASSPOINT_R3 = 12; // 0xc
351 field public static final int SECURITY_TYPE_PSK = 2; // 0x2
352 field public static final int SECURITY_TYPE_SAE = 4; // 0x4
353 field public static final int SECURITY_TYPE_UNKNOWN = -1; // 0xffffffff
354 field public static final int SECURITY_TYPE_WAPI_CERT = 8; // 0x8
355 field public static final int SECURITY_TYPE_WAPI_PSK = 7; // 0x7
356 field public static final int SECURITY_TYPE_WEP = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +0000357 }
358
359 public static final class WifiInfo.Builder {
360 ctor public WifiInfo.Builder();
361 method @NonNull public android.net.wifi.WifiInfo build();
362 method @NonNull public android.net.wifi.WifiInfo.Builder setBssid(@NonNull String);
Hai Shalom46a7a672021-03-17 14:58:55 -0700363 method @NonNull public android.net.wifi.WifiInfo.Builder setCurrentSecurityType(int);
Anton Hansson180d9562020-01-17 19:03:34 +0000364 method @NonNull public android.net.wifi.WifiInfo.Builder setNetworkId(int);
365 method @NonNull public android.net.wifi.WifiInfo.Builder setRssi(int);
366 method @NonNull public android.net.wifi.WifiInfo.Builder setSsid(@NonNull byte[]);
367 }
368
369 public class WifiManager {
370 method @Deprecated public int addNetwork(android.net.wifi.WifiConfiguration);
Anton Hanssonb43f5dc2021-10-20 13:21:00 +0100371 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 +0000372 method @RequiresPermission(android.Manifest.permission.CHANGE_WIFI_STATE) public int addNetworkSuggestions(@NonNull java.util.List<android.net.wifi.WifiNetworkSuggestion>);
373 method public void addOrUpdatePasspointConfiguration(android.net.wifi.hotspot2.PasspointConfiguration);
374 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 -0800375 method @RequiresPermission(android.Manifest.permission.ACCESS_WIFI_STATE) public void addSuggestionUserApprovalStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.wifi.WifiManager.SuggestionUserApprovalStatusListener);
Anton Hansson180d9562020-01-17 19:03:34 +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);
961 method public void writeToParcel(android.os.Parcel, int);
962 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.PasspointConfiguration> CREATOR;
963 }
964
965}
966
967package android.net.wifi.hotspot2.omadm {
968
969 public final class PpsMoParser {
970 method public static android.net.wifi.hotspot2.PasspointConfiguration parseMoText(String);
971 }
972
973}
974
975package android.net.wifi.hotspot2.pps {
976
977 public final class Credential implements android.os.Parcelable {
978 ctor public Credential();
979 ctor public Credential(android.net.wifi.hotspot2.pps.Credential);
980 method public int describeContents();
981 method public java.security.cert.X509Certificate getCaCertificate();
982 method public android.net.wifi.hotspot2.pps.Credential.CertificateCredential getCertCredential();
983 method public java.security.cert.X509Certificate[] getClientCertificateChain();
984 method public java.security.PrivateKey getClientPrivateKey();
985 method public String getRealm();
986 method public android.net.wifi.hotspot2.pps.Credential.SimCredential getSimCredential();
987 method public android.net.wifi.hotspot2.pps.Credential.UserCredential getUserCredential();
988 method public void setCaCertificate(java.security.cert.X509Certificate);
989 method public void setCertCredential(android.net.wifi.hotspot2.pps.Credential.CertificateCredential);
990 method public void setClientCertificateChain(java.security.cert.X509Certificate[]);
991 method public void setClientPrivateKey(java.security.PrivateKey);
992 method public void setRealm(String);
993 method public void setSimCredential(android.net.wifi.hotspot2.pps.Credential.SimCredential);
994 method public void setUserCredential(android.net.wifi.hotspot2.pps.Credential.UserCredential);
995 method public void writeToParcel(android.os.Parcel, int);
996 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential> CREATOR;
997 }
998
999 public static final class Credential.CertificateCredential implements android.os.Parcelable {
1000 ctor public Credential.CertificateCredential();
1001 ctor public Credential.CertificateCredential(android.net.wifi.hotspot2.pps.Credential.CertificateCredential);
1002 method public int describeContents();
1003 method public byte[] getCertSha256Fingerprint();
1004 method public String getCertType();
1005 method public void setCertSha256Fingerprint(byte[]);
1006 method public void setCertType(String);
1007 method public void writeToParcel(android.os.Parcel, int);
1008 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.CertificateCredential> CREATOR;
1009 }
1010
1011 public static final class Credential.SimCredential implements android.os.Parcelable {
1012 ctor public Credential.SimCredential();
1013 ctor public Credential.SimCredential(android.net.wifi.hotspot2.pps.Credential.SimCredential);
1014 method public int describeContents();
1015 method public int getEapType();
1016 method public String getImsi();
1017 method public void setEapType(int);
1018 method public void setImsi(String);
1019 method public void writeToParcel(android.os.Parcel, int);
1020 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.SimCredential> CREATOR;
1021 }
1022
1023 public static final class Credential.UserCredential implements android.os.Parcelable {
1024 ctor public Credential.UserCredential();
1025 ctor public Credential.UserCredential(android.net.wifi.hotspot2.pps.Credential.UserCredential);
1026 method public int describeContents();
1027 method public int getEapType();
1028 method public String getNonEapInnerMethod();
1029 method public String getPassword();
1030 method public String getUsername();
1031 method public void setEapType(int);
1032 method public void setNonEapInnerMethod(String);
1033 method public void setPassword(String);
1034 method public void setUsername(String);
1035 method public void writeToParcel(android.os.Parcel, int);
1036 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.Credential.UserCredential> CREATOR;
1037 }
1038
1039 public final class HomeSp implements android.os.Parcelable {
1040 ctor public HomeSp();
1041 ctor public HomeSp(android.net.wifi.hotspot2.pps.HomeSp);
1042 method public int describeContents();
1043 method public String getFqdn();
1044 method public String getFriendlyName();
Hai Shalomac2e9dc2020-09-15 15:32:11 -07001045 method @Nullable public long[] getMatchAllOis();
1046 method @Nullable public long[] getMatchAnyOis();
Hai Shalome2853f12020-10-14 18:21:52 -07001047 method @NonNull public java.util.Collection<java.lang.String> getOtherHomePartnersList();
Anton Hansson180d9562020-01-17 19:03:34 +00001048 method public long[] getRoamingConsortiumOis();
1049 method public void setFqdn(String);
1050 method public void setFriendlyName(String);
Hai Shalomac2e9dc2020-09-15 15:32:11 -07001051 method public void setMatchAllOis(@Nullable long[]);
1052 method public void setMatchAnyOis(@Nullable long[]);
Hai Shalome2853f12020-10-14 18:21:52 -07001053 method public void setOtherHomePartnersList(@NonNull java.util.Collection<java.lang.String>);
Anton Hansson180d9562020-01-17 19:03:34 +00001054 method public void setRoamingConsortiumOis(long[]);
1055 method public void writeToParcel(android.os.Parcel, int);
1056 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.hotspot2.pps.HomeSp> CREATOR;
1057 }
1058
1059}
1060
1061package android.net.wifi.p2p {
1062
1063 public class WifiP2pConfig implements android.os.Parcelable {
1064 ctor public WifiP2pConfig();
1065 ctor public WifiP2pConfig(android.net.wifi.p2p.WifiP2pConfig);
1066 method public int describeContents();
1067 method public int getGroupOwnerBand();
1068 method public int getNetworkId();
1069 method @Nullable public String getNetworkName();
1070 method @Nullable public String getPassphrase();
1071 method public void writeToParcel(android.os.Parcel, int);
1072 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pConfig> CREATOR;
1073 field public static final int GROUP_OWNER_BAND_2GHZ = 1; // 0x1
1074 field public static final int GROUP_OWNER_BAND_5GHZ = 2; // 0x2
1075 field public static final int GROUP_OWNER_BAND_AUTO = 0; // 0x0
1076 field public static final int GROUP_OWNER_INTENT_AUTO = -1; // 0xffffffff
1077 field public static final int GROUP_OWNER_INTENT_MAX = 15; // 0xf
1078 field public static final int GROUP_OWNER_INTENT_MIN = 0; // 0x0
1079 field public String deviceAddress;
1080 field @IntRange(from=0, to=15) public int groupOwnerIntent;
1081 field public android.net.wifi.WpsInfo wps;
1082 }
1083
1084 public static final class WifiP2pConfig.Builder {
1085 ctor public WifiP2pConfig.Builder();
1086 method @NonNull public android.net.wifi.p2p.WifiP2pConfig build();
1087 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder enablePersistentMode(boolean);
1088 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setDeviceAddress(@Nullable android.net.MacAddress);
1089 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setGroupOperatingBand(int);
1090 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setGroupOperatingFrequency(int);
1091 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setNetworkName(@NonNull String);
1092 method @NonNull public android.net.wifi.p2p.WifiP2pConfig.Builder setPassphrase(@NonNull String);
1093 }
1094
1095 public class WifiP2pDevice implements android.os.Parcelable {
1096 ctor public WifiP2pDevice();
1097 ctor public WifiP2pDevice(android.net.wifi.p2p.WifiP2pDevice);
1098 method public int describeContents();
1099 method @Nullable public android.net.wifi.p2p.WifiP2pWfdInfo getWfdInfo();
1100 method public boolean isGroupOwner();
1101 method public boolean isServiceDiscoveryCapable();
1102 method public void update(@NonNull android.net.wifi.p2p.WifiP2pDevice);
1103 method public boolean wpsDisplaySupported();
1104 method public boolean wpsKeypadSupported();
1105 method public boolean wpsPbcSupported();
1106 method public void writeToParcel(android.os.Parcel, int);
1107 field public static final int AVAILABLE = 3; // 0x3
1108 field public static final int CONNECTED = 0; // 0x0
1109 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pDevice> CREATOR;
1110 field public static final int FAILED = 2; // 0x2
1111 field public static final int INVITED = 1; // 0x1
1112 field public static final int UNAVAILABLE = 4; // 0x4
1113 field public String deviceAddress;
1114 field public String deviceName;
1115 field public String primaryDeviceType;
1116 field public String secondaryDeviceType;
1117 field public int status;
1118 }
1119
1120 public class WifiP2pDeviceList implements android.os.Parcelable {
1121 ctor public WifiP2pDeviceList();
1122 ctor public WifiP2pDeviceList(android.net.wifi.p2p.WifiP2pDeviceList);
1123 method public int describeContents();
1124 method public android.net.wifi.p2p.WifiP2pDevice get(String);
1125 method public java.util.Collection<android.net.wifi.p2p.WifiP2pDevice> getDeviceList();
1126 method public void writeToParcel(android.os.Parcel, int);
1127 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pDeviceList> CREATOR;
1128 }
1129
1130 public class WifiP2pGroup implements android.os.Parcelable {
1131 ctor public WifiP2pGroup();
1132 ctor public WifiP2pGroup(android.net.wifi.p2p.WifiP2pGroup);
1133 method public int describeContents();
1134 method public java.util.Collection<android.net.wifi.p2p.WifiP2pDevice> getClientList();
1135 method public int getFrequency();
1136 method public String getInterface();
1137 method public int getNetworkId();
1138 method public String getNetworkName();
1139 method public android.net.wifi.p2p.WifiP2pDevice getOwner();
1140 method public String getPassphrase();
1141 method public boolean isGroupOwner();
1142 method public void writeToParcel(android.os.Parcel, int);
1143 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pGroup> CREATOR;
1144 field public static final int NETWORK_ID_PERSISTENT = -2; // 0xfffffffe
1145 field public static final int NETWORK_ID_TEMPORARY = -1; // 0xffffffff
1146 }
1147
1148 public class WifiP2pInfo implements android.os.Parcelable {
1149 ctor public WifiP2pInfo();
1150 ctor public WifiP2pInfo(android.net.wifi.p2p.WifiP2pInfo);
1151 method public int describeContents();
1152 method public void writeToParcel(android.os.Parcel, int);
1153 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pInfo> CREATOR;
1154 field public boolean groupFormed;
1155 field public java.net.InetAddress groupOwnerAddress;
1156 field public boolean isGroupOwner;
1157 }
1158
1159 public class WifiP2pManager {
xshu34fe9862021-12-03 18:39:36 -08001160 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 +00001161 method public void addServiceRequest(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceRequest, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1162 method public void cancelConnect(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1163 method public void clearLocalServices(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1164 method public void clearServiceRequests(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
xshu34fe9862021-12-03 18:39:36 -08001165 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);
1166 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);
1167 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);
1168 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 +08001169 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);
1170 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 -08001171 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 +00001172 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 +00001173 method public void removeClient(@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 +00001174 method public void removeGroup(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1175 method public void removeLocalService(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceInfo, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1176 method public void removeServiceRequest(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.nsd.WifiP2pServiceRequest, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1177 method public void requestConnectionInfo(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ConnectionInfoListener);
xshu34fe9862021-12-03 18:39:36 -08001178 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 +00001179 method public void requestDiscoveryState(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.DiscoveryStateListener);
xshu34fe9862021-12-03 18:39:36 -08001180 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 +00001181 method public void requestNetworkInfo(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.NetworkInfoListener);
1182 method public void requestP2pState(@NonNull android.net.wifi.p2p.WifiP2pManager.Channel, @NonNull android.net.wifi.p2p.WifiP2pManager.P2pStateListener);
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 requestPeers(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.PeerListListener);
Anton Hansson180d9562020-01-17 19:03:34 +00001184 method public void setDnsSdResponseListeners(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.DnsSdServiceResponseListener, android.net.wifi.p2p.WifiP2pManager.DnsSdTxtRecordListener);
1185 method public void setServiceResponseListener(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ServiceResponseListener);
1186 method public void setUpnpServiceResponseListener(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.UpnpServiceResponseListener);
xshu63f3e8f2021-12-09 12:25:44 -08001187 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 +08001188 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 +00001189 method public void stopPeerDiscovery(android.net.wifi.p2p.WifiP2pManager.Channel, android.net.wifi.p2p.WifiP2pManager.ActionListener);
1190 field public static final int BUSY = 2; // 0x2
1191 field public static final int ERROR = 0; // 0x0
1192 field public static final String EXTRA_DISCOVERY_STATE = "discoveryState";
1193 field public static final String EXTRA_NETWORK_INFO = "networkInfo";
1194 field public static final String EXTRA_P2P_DEVICE_LIST = "wifiP2pDeviceList";
1195 field public static final String EXTRA_WIFI_P2P_DEVICE = "wifiP2pDevice";
1196 field public static final String EXTRA_WIFI_P2P_GROUP = "p2pGroupInfo";
1197 field public static final String EXTRA_WIFI_P2P_INFO = "wifiP2pInfo";
1198 field public static final String EXTRA_WIFI_STATE = "wifi_p2p_state";
1199 field public static final int NO_SERVICE_REQUESTS = 3; // 0x3
1200 field public static final int P2P_UNSUPPORTED = 1; // 0x1
1201 field public static final String WIFI_P2P_CONNECTION_CHANGED_ACTION = "android.net.wifi.p2p.CONNECTION_STATE_CHANGE";
1202 field public static final String WIFI_P2P_DISCOVERY_CHANGED_ACTION = "android.net.wifi.p2p.DISCOVERY_STATE_CHANGE";
1203 field public static final int WIFI_P2P_DISCOVERY_STARTED = 2; // 0x2
1204 field public static final int WIFI_P2P_DISCOVERY_STOPPED = 1; // 0x1
1205 field public static final String WIFI_P2P_PEERS_CHANGED_ACTION = "android.net.wifi.p2p.PEERS_CHANGED";
1206 field public static final String WIFI_P2P_STATE_CHANGED_ACTION = "android.net.wifi.p2p.STATE_CHANGED";
1207 field public static final int WIFI_P2P_STATE_DISABLED = 1; // 0x1
1208 field public static final int WIFI_P2P_STATE_ENABLED = 2; // 0x2
1209 field public static final String WIFI_P2P_THIS_DEVICE_CHANGED_ACTION = "android.net.wifi.p2p.THIS_DEVICE_CHANGED";
1210 }
1211
1212 public static interface WifiP2pManager.ActionListener {
1213 method public void onFailure(int);
1214 method public void onSuccess();
1215 }
1216
1217 public static class WifiP2pManager.Channel implements java.lang.AutoCloseable {
1218 method public void close();
1219 }
1220
1221 public static interface WifiP2pManager.ChannelListener {
1222 method public void onChannelDisconnected();
1223 }
1224
1225 public static interface WifiP2pManager.ConnectionInfoListener {
1226 method public void onConnectionInfoAvailable(android.net.wifi.p2p.WifiP2pInfo);
1227 }
1228
1229 public static interface WifiP2pManager.DeviceInfoListener {
1230 method public void onDeviceInfoAvailable(@Nullable android.net.wifi.p2p.WifiP2pDevice);
1231 }
1232
1233 public static interface WifiP2pManager.DiscoveryStateListener {
1234 method public void onDiscoveryStateAvailable(int);
1235 }
1236
1237 public static interface WifiP2pManager.DnsSdServiceResponseListener {
1238 method public void onDnsSdServiceAvailable(String, String, android.net.wifi.p2p.WifiP2pDevice);
1239 }
1240
1241 public static interface WifiP2pManager.DnsSdTxtRecordListener {
1242 method public void onDnsSdTxtRecordAvailable(String, java.util.Map<java.lang.String,java.lang.String>, android.net.wifi.p2p.WifiP2pDevice);
1243 }
1244
1245 public static interface WifiP2pManager.GroupInfoListener {
1246 method public void onGroupInfoAvailable(android.net.wifi.p2p.WifiP2pGroup);
1247 }
1248
1249 public static interface WifiP2pManager.NetworkInfoListener {
1250 method public void onNetworkInfoAvailable(@NonNull android.net.NetworkInfo);
1251 }
1252
1253 public static interface WifiP2pManager.P2pStateListener {
1254 method public void onP2pStateAvailable(int);
1255 }
1256
1257 public static interface WifiP2pManager.PeerListListener {
1258 method public void onPeersAvailable(android.net.wifi.p2p.WifiP2pDeviceList);
1259 }
1260
1261 public static interface WifiP2pManager.ServiceResponseListener {
1262 method public void onServiceAvailable(int, byte[], android.net.wifi.p2p.WifiP2pDevice);
1263 }
1264
1265 public static interface WifiP2pManager.UpnpServiceResponseListener {
1266 method public void onUpnpServiceAvailable(java.util.List<java.lang.String>, android.net.wifi.p2p.WifiP2pDevice);
1267 }
1268
1269 public final class WifiP2pWfdInfo implements android.os.Parcelable {
1270 ctor public WifiP2pWfdInfo();
1271 ctor public WifiP2pWfdInfo(@Nullable android.net.wifi.p2p.WifiP2pWfdInfo);
1272 method public int describeContents();
1273 method public int getControlPort();
Jimmy Chen4ada7922021-03-23 14:31:03 +08001274 method public int getDeviceInfo();
Anton Hansson180d9562020-01-17 19:03:34 +00001275 method public int getDeviceType();
1276 method public int getMaxThroughput();
Jimmy Chen4ada7922021-03-23 14:31:03 +08001277 method public int getR2DeviceInfo();
Jimmy Chen7ddb4502021-03-18 12:30:13 +08001278 method public int getR2DeviceType();
Anton Hansson180d9562020-01-17 19:03:34 +00001279 method public boolean isContentProtectionSupported();
Jimmy Chena5e551b2021-03-05 16:42:39 +08001280 method public boolean isCoupledSinkSupportedAtSink();
1281 method public boolean isCoupledSinkSupportedAtSource();
Anton Hansson180d9562020-01-17 19:03:34 +00001282 method public boolean isEnabled();
Jimmy Chenec558292021-03-18 17:41:06 +08001283 method public boolean isR2Supported();
Anton Hansson180d9562020-01-17 19:03:34 +00001284 method public boolean isSessionAvailable();
1285 method public void setContentProtectionSupported(boolean);
1286 method public void setControlPort(@IntRange(from=0) int);
Jimmy Chena5e551b2021-03-05 16:42:39 +08001287 method public void setCoupledSinkSupportAtSink(boolean);
1288 method public void setCoupledSinkSupportAtSource(boolean);
Anton Hansson180d9562020-01-17 19:03:34 +00001289 method public boolean setDeviceType(int);
1290 method public void setEnabled(boolean);
1291 method public void setMaxThroughput(@IntRange(from=0) int);
Jimmy Chenec558292021-03-18 17:41:06 +08001292 method public boolean setR2DeviceType(int);
Anton Hansson180d9562020-01-17 19:03:34 +00001293 method public void setSessionAvailable(boolean);
1294 method public void writeToParcel(@NonNull android.os.Parcel, int);
1295 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.p2p.WifiP2pWfdInfo> CREATOR;
Jimmy Chen012448d2021-03-30 17:37:52 +08001296 field public static final int DEVICE_INFO_AUDIO_ONLY_SUPPORT_AT_SOURCE = 2048; // 0x800
1297 field public static final int DEVICE_INFO_AUDIO_UNSUPPORTED_AT_PRIMARY_SINK = 1024; // 0x400
1298 field public static final int DEVICE_INFO_CONTENT_PROTECTION_SUPPORT = 256; // 0x100
1299 field public static final int DEVICE_INFO_COUPLED_SINK_SUPPORT_AT_SINK = 8; // 0x8
1300 field public static final int DEVICE_INFO_COUPLED_SINK_SUPPORT_AT_SOURCE = 4; // 0x4
1301 field public static final int DEVICE_INFO_DEVICE_TYPE_MASK = 3; // 0x3
1302 field public static final int DEVICE_INFO_PREFERRED_CONNECTIVITY_MASK = 128; // 0x80
1303 field public static final int DEVICE_INFO_SESSION_AVAILABLE_MASK = 48; // 0x30
1304 field public static final int DEVICE_INFO_TDLS_PERSISTENT_GROUP = 4096; // 0x1000
1305 field public static final int DEVICE_INFO_TDLS_PERSISTENT_GROUP_REINVOKE = 8192; // 0x2000
1306 field public static final int DEVICE_INFO_TIME_SYNCHRONIZATION_SUPPORT = 512; // 0x200
1307 field public static final int DEVICE_INFO_WFD_SERVICE_DISCOVERY_SUPPORT = 64; // 0x40
Anton Hansson180d9562020-01-17 19:03:34 +00001308 field public static final int DEVICE_TYPE_PRIMARY_SINK = 1; // 0x1
1309 field public static final int DEVICE_TYPE_SECONDARY_SINK = 2; // 0x2
1310 field public static final int DEVICE_TYPE_SOURCE_OR_PRIMARY_SINK = 3; // 0x3
1311 field public static final int DEVICE_TYPE_WFD_SOURCE = 0; // 0x0
Jimmy Chen4ada7922021-03-23 14:31:03 +08001312 field public static final int PREFERRED_CONNECTIVITY_P2P = 0; // 0x0
1313 field public static final int PREFERRED_CONNECTIVITY_TDLS = 1; // 0x1
Anton Hansson180d9562020-01-17 19:03:34 +00001314 }
1315
1316}
1317
1318package android.net.wifi.p2p.nsd {
1319
1320 public class WifiP2pDnsSdServiceInfo extends android.net.wifi.p2p.nsd.WifiP2pServiceInfo {
1321 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceInfo newInstance(String, String, java.util.Map<java.lang.String,java.lang.String>);
1322 }
1323
1324 public class WifiP2pDnsSdServiceRequest extends android.net.wifi.p2p.nsd.WifiP2pServiceRequest {
1325 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance();
1326 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance(String);
1327 method public static android.net.wifi.p2p.nsd.WifiP2pDnsSdServiceRequest newInstance(String, String);
1328 }
1329
1330 public class WifiP2pServiceInfo implements android.os.Parcelable {
1331 method public int describeContents();
1332 method public void writeToParcel(android.os.Parcel, int);
1333 field public static final int SERVICE_TYPE_ALL = 0; // 0x0
1334 field public static final int SERVICE_TYPE_BONJOUR = 1; // 0x1
1335 field public static final int SERVICE_TYPE_UPNP = 2; // 0x2
1336 field public static final int SERVICE_TYPE_VENDOR_SPECIFIC = 255; // 0xff
1337 }
1338
1339 public class WifiP2pServiceRequest implements android.os.Parcelable {
1340 method public int describeContents();
1341 method public static android.net.wifi.p2p.nsd.WifiP2pServiceRequest newInstance(int, String);
1342 method public static android.net.wifi.p2p.nsd.WifiP2pServiceRequest newInstance(int);
1343 method public void writeToParcel(android.os.Parcel, int);
1344 }
1345
1346 public class WifiP2pUpnpServiceInfo extends android.net.wifi.p2p.nsd.WifiP2pServiceInfo {
1347 method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceInfo newInstance(String, String, java.util.List<java.lang.String>);
1348 }
1349
1350 public class WifiP2pUpnpServiceRequest extends android.net.wifi.p2p.nsd.WifiP2pServiceRequest {
1351 method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest newInstance();
1352 method public static android.net.wifi.p2p.nsd.WifiP2pUpnpServiceRequest newInstance(String);
1353 }
1354
1355}
1356
1357package android.net.wifi.rtt {
1358
1359 public class CivicLocationKeys {
1360 field public static final int ADDITIONAL_CODE = 32; // 0x20
1361 field public static final int APT = 26; // 0x1a
1362 field public static final int BOROUGH = 4; // 0x4
1363 field public static final int BRANCH_ROAD_NAME = 36; // 0x24
1364 field public static final int BUILDING = 25; // 0x19
1365 field public static final int CITY = 3; // 0x3
1366 field public static final int COUNTY = 2; // 0x2
1367 field public static final int DESK = 33; // 0x21
1368 field public static final int FLOOR = 27; // 0x1b
1369 field public static final int GROUP_OF_STREETS = 6; // 0x6
1370 field public static final int HNO = 19; // 0x13
1371 field public static final int HNS = 20; // 0x14
1372 field public static final int LANGUAGE = 0; // 0x0
1373 field public static final int LMK = 21; // 0x15
1374 field public static final int LOC = 22; // 0x16
1375 field public static final int NAM = 23; // 0x17
1376 field public static final int NEIGHBORHOOD = 5; // 0x5
1377 field public static final int PCN = 30; // 0x1e
1378 field public static final int POD = 17; // 0x11
1379 field public static final int POSTAL_CODE = 24; // 0x18
1380 field public static final int PO_BOX = 31; // 0x1f
1381 field public static final int PRD = 16; // 0x10
1382 field public static final int PRIMARY_ROAD_NAME = 34; // 0x22
1383 field public static final int ROAD_SECTION = 35; // 0x23
1384 field public static final int ROOM = 28; // 0x1c
1385 field public static final int SCRIPT = 128; // 0x80
1386 field public static final int STATE = 1; // 0x1
1387 field public static final int STREET_NAME_POST_MODIFIER = 39; // 0x27
1388 field public static final int STREET_NAME_PRE_MODIFIER = 38; // 0x26
1389 field public static final int STS = 18; // 0x12
1390 field public static final int SUBBRANCH_ROAD_NAME = 37; // 0x25
1391 field public static final int TYPE_OF_PLACE = 29; // 0x1d
1392 }
1393
1394 public final class RangingRequest implements android.os.Parcelable {
1395 method public int describeContents();
Roy Wantdd5825e2020-12-08 21:24:04 -08001396 method public static int getDefaultRttBurstSize();
Anton Hansson180d9562020-01-17 19:03:34 +00001397 method public static int getMaxPeers();
Roy Wantdd5825e2020-12-08 21:24:04 -08001398 method public static int getMaxRttBurstSize();
1399 method public static int getMinRttBurstSize();
1400 method public int getRttBurstSize();
Anton Hansson180d9562020-01-17 19:03:34 +00001401 method public void writeToParcel(android.os.Parcel, int);
1402 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.RangingRequest> CREATOR;
1403 }
1404
1405 public static final class RangingRequest.Builder {
1406 ctor public RangingRequest.Builder();
Roy Want50deac12021-12-19 15:15:35 -08001407 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addAccessPoint(@NonNull android.net.wifi.ScanResult);
1408 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 -08001409 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addNon80211mcCapableAccessPoint(@NonNull android.net.wifi.ScanResult);
1410 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 -08001411 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder addResponder(@NonNull android.net.wifi.rtt.ResponderConfig);
1412 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 +00001413 method public android.net.wifi.rtt.RangingRequest.Builder addWifiAwarePeer(@NonNull android.net.MacAddress);
1414 method public android.net.wifi.rtt.RangingRequest.Builder addWifiAwarePeer(@NonNull android.net.wifi.aware.PeerHandle);
1415 method public android.net.wifi.rtt.RangingRequest build();
Roy Wantdd5825e2020-12-08 21:24:04 -08001416 method @NonNull public android.net.wifi.rtt.RangingRequest.Builder setRttBurstSize(int);
Anton Hansson180d9562020-01-17 19:03:34 +00001417 }
1418
1419 public final class RangingResult implements android.os.Parcelable {
1420 method public int describeContents();
1421 method public int getDistanceMm();
1422 method public int getDistanceStdDevMm();
1423 method @Nullable public android.net.MacAddress getMacAddress();
1424 method public int getNumAttemptedMeasurements();
1425 method public int getNumSuccessfulMeasurements();
1426 method @Nullable public android.net.wifi.aware.PeerHandle getPeerHandle();
1427 method public long getRangingTimestampMillis();
1428 method public int getRssi();
1429 method public int getStatus();
1430 method @Nullable public android.net.wifi.rtt.ResponderLocation getUnverifiedResponderLocation();
Roy Want8e5dea02020-12-18 19:56:30 -08001431 method public boolean is80211mcMeasurement();
Anton Hansson180d9562020-01-17 19:03:34 +00001432 method public void writeToParcel(android.os.Parcel, int);
1433 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.RangingResult> CREATOR;
1434 field public static final int STATUS_FAIL = 1; // 0x1
1435 field public static final int STATUS_RESPONDER_DOES_NOT_SUPPORT_IEEE80211MC = 2; // 0x2
1436 field public static final int STATUS_SUCCESS = 0; // 0x0
1437 }
1438
1439 public abstract class RangingResultCallback {
1440 ctor public RangingResultCallback();
1441 method public abstract void onRangingFailure(int);
1442 method public abstract void onRangingResults(@NonNull java.util.List<android.net.wifi.rtt.RangingResult>);
1443 field public static final int STATUS_CODE_FAIL = 1; // 0x1
1444 field public static final int STATUS_CODE_FAIL_RTT_NOT_AVAILABLE = 2; // 0x2
1445 }
1446
Roy Want50deac12021-12-19 15:15:35 -08001447 public final class ResponderConfig implements android.os.Parcelable {
1448 method public int describeContents();
1449 method @NonNull public static android.net.wifi.rtt.ResponderConfig fromScanResult(@NonNull android.net.wifi.ScanResult);
1450 method public int getCenterFreq0Mhz();
1451 method public int getCenterFreq1Mhz();
1452 method public int getChannelWidth();
1453 method public int getFrequencyMhz();
1454 method @Nullable public android.net.MacAddress getMacAddress();
1455 method public int getPreamble();
1456 method public boolean is80211mcSupported();
1457 method public void writeToParcel(@NonNull android.os.Parcel, int);
1458 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderConfig> CREATOR;
1459 }
1460
1461 public static final class ResponderConfig.Builder {
1462 ctor public ResponderConfig.Builder();
1463 method @NonNull public android.net.wifi.rtt.ResponderConfig build();
1464 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder set80211mcSupported(boolean);
1465 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setCenterFreq0Mhz(int);
1466 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setCenterFreq1Mhz(int);
1467 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setChannelWidth(int);
1468 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setFrequencyMhz(int);
1469 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setMacAddress(@NonNull android.net.MacAddress);
1470 method @NonNull public android.net.wifi.rtt.ResponderConfig.Builder setPreamble(int);
1471 }
1472
Anton Hansson180d9562020-01-17 19:03:34 +00001473 public final class ResponderLocation implements android.os.Parcelable {
1474 method public int describeContents();
1475 method public double getAltitude();
1476 method public int getAltitudeType();
1477 method public double getAltitudeUncertainty();
1478 method public java.util.List<android.net.MacAddress> getColocatedBssids();
1479 method public int getDatum();
1480 method public int getExpectedToMove();
1481 method public double getFloorNumber();
1482 method public double getHeightAboveFloorMeters();
1483 method public double getHeightAboveFloorUncertaintyMeters();
1484 method public double getLatitude();
1485 method public double getLatitudeUncertainty();
1486 method public int getLciVersion();
1487 method public double getLongitude();
1488 method public double getLongitudeUncertainty();
1489 method @Nullable public String getMapImageMimeType();
1490 method @Nullable public android.net.Uri getMapImageUri();
1491 method public boolean getRegisteredLocationAgreementIndication();
1492 method public boolean isLciSubelementValid();
1493 method public boolean isZaxisSubelementValid();
1494 method @Nullable public android.location.Address toCivicLocationAddress();
1495 method @Nullable public android.util.SparseArray<java.lang.String> toCivicLocationSparseArray();
1496 method @NonNull public android.location.Location toLocation();
1497 method public void writeToParcel(android.os.Parcel, int);
1498 field public static final int ALTITUDE_FLOORS = 2; // 0x2
1499 field public static final int ALTITUDE_METERS = 1; // 0x1
1500 field public static final int ALTITUDE_UNDEFINED = 0; // 0x0
1501 field @NonNull public static final android.os.Parcelable.Creator<android.net.wifi.rtt.ResponderLocation> CREATOR;
1502 field public static final int DATUM_NAD83_MLLW = 3; // 0x3
1503 field public static final int DATUM_NAD83_NAV88 = 2; // 0x2
1504 field public static final int DATUM_UNDEFINED = 0; // 0x0
1505 field public static final int DATUM_WGS84 = 1; // 0x1
1506 field public static final int LCI_VERSION_1 = 1; // 0x1
1507 field public static final int LOCATION_FIXED = 0; // 0x0
1508 field public static final int LOCATION_MOVEMENT_UNKNOWN = 2; // 0x2
1509 field public static final int LOCATION_RESERVED = 3; // 0x3
1510 field public static final int LOCATION_VARIABLE = 1; // 0x1
1511 }
1512
1513 public class WifiRttManager {
1514 method public boolean isAvailable();
xshu9d932842021-11-18 17:20:38 -08001515 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 +00001516 field public static final String ACTION_WIFI_RTT_STATE_CHANGED = "android.net.wifi.rtt.action.WIFI_RTT_STATE_CHANGED";
1517 }
1518
1519}
1520