• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /**
2  * Copyright (c) 2008, The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.net.wifi;
18 
19 import android.net.DhcpInfo;
20 import android.net.DhcpOption;
21 import android.net.Network;
22 import android.net.TetheringManager.TetheringRequest;
23 import android.net.wifi.BlockingOption;
24 import android.net.wifi.CoexUnsafeChannel;
25 import android.net.wifi.IActionListener;
26 import android.net.wifi.IBooleanListener;
27 import android.net.wifi.IByteArrayListener;
28 import android.net.wifi.ICoexCallback;
29 import android.net.wifi.IDppCallback;
30 import android.net.wifi.IIntegerListener;
31 import android.net.wifi.IInterfaceCreationInfoCallback;
32 import android.net.wifi.ILastCallerListener;
33 import android.net.wifi.IListListener;
34 import android.net.wifi.ILocalOnlyConnectionStatusListener;
35 import android.net.wifi.ILocalOnlyHotspotCallback;
36 import android.net.wifi.IMacAddressListListener;
37 import android.net.wifi.IMapListener;
38 import android.net.wifi.INetworkRequestMatchCallback;
39 import android.net.wifi.IOnWifiActivityEnergyInfoListener;
40 import android.net.wifi.IOnWifiDriverCountryCodeChangedListener;
41 import android.net.wifi.IOnWifiUsabilityStatsListener;
42 import android.net.wifi.IPnoScanResultsCallback;
43 import android.net.wifi.IScanResultsCallback;
44 import android.net.wifi.ISoftApCallback;
45 import android.net.wifi.IStringListener;
46 import android.net.wifi.ISubsystemRestartCallback;
47 import android.net.wifi.ISuggestionConnectionStatusListener;
48 import android.net.wifi.ISuggestionUserApprovalStatusListener;
49 import android.net.wifi.ITrafficStateCallback;
50 import android.net.wifi.ITwtCallback;
51 import android.net.wifi.ITwtCapabilitiesListener;
52 import android.net.wifi.ITwtStatsListener;
53 import android.net.wifi.IWifiBandsListener;
54 import android.net.wifi.IWifiConnectedNetworkScorer;
55 import android.net.wifi.IWifiLowLatencyLockListener;
56 import android.net.wifi.IWifiNetworkSelectionConfigListener;
57 import android.net.wifi.IWifiNetworkStateChangedListener;
58 import android.net.wifi.IWifiStateChangedListener;
59 import android.net.wifi.IWifiVerboseLoggingStatusChangedListener;
60 import android.net.wifi.MscsParams;
61 import android.net.wifi.QosPolicyParams;
62 import android.net.wifi.ScanResult;
63 import android.net.wifi.SoftApConfiguration;
64 import android.net.wifi.WifiAvailableChannel;
65 import android.net.wifi.WifiConfiguration;
66 import android.net.wifi.WifiInfo;
67 import android.net.wifi.WifiManager;
68 import android.net.wifi.WifiNetworkSelectionConfig;
69 import android.net.wifi.WifiNetworkSuggestion;
70 import android.net.wifi.WifiSsid;
71 import android.net.wifi.hotspot2.IProvisioningCallback;
72 import android.net.wifi.hotspot2.OsuProvider;
73 import android.net.wifi.hotspot2.PasspointConfiguration;
74 import android.net.wifi.twt.TwtRequest;
75 import android.os.Bundle;
76 import android.os.Messenger;
77 import android.os.ResultReceiver;
78 import android.os.WorkSource;
79 import com.android.modules.utils.ParceledListSlice;
80 import com.android.modules.utils.StringParceledListSlice;
81 
82 /**
83  * Interface that allows controlling and querying Wi-Fi connectivity.
84  *
85  * {@hide}
86  */
87 interface IWifiManager {
isFeatureSupported(int feature)88     boolean isFeatureSupported(int feature);
89 
getWifiActivityEnergyInfoAsync(in IOnWifiActivityEnergyInfoListener listener)90     oneway void getWifiActivityEnergyInfoAsync(in IOnWifiActivityEnergyInfoListener listener);
91 
setNetworkSelectionConfig(in WifiNetworkSelectionConfig nsConfig)92     void setNetworkSelectionConfig(in WifiNetworkSelectionConfig nsConfig);
93 
getNetworkSelectionConfig(in IWifiNetworkSelectionConfigListener listener)94     void getNetworkSelectionConfig(in IWifiNetworkSelectionConfigListener listener);
95 
setThirdPartyAppEnablingWifiConfirmationDialogEnabled(boolean enable)96     void setThirdPartyAppEnablingWifiConfirmationDialogEnabled(boolean enable);
97 
isThirdPartyAppEnablingWifiConfirmationDialogEnabled()98     boolean isThirdPartyAppEnablingWifiConfirmationDialogEnabled();
99 
setScreenOnScanSchedule(in int[] scanScheduleSeconds, in int[] scanType)100     void setScreenOnScanSchedule(in int[] scanScheduleSeconds, in int[] scanType);
101 
setOneShotScreenOnConnectivityScanDelayMillis(int delayMs)102     void setOneShotScreenOnConnectivityScanDelayMillis(int delayMs);
103 
getConfiguredNetworks( String packageName, String featureId, boolean callerNetworksOnly)104     ParceledListSlice getConfiguredNetworks(
105             String packageName, String featureId, boolean callerNetworksOnly);
106 
getPrivilegedConfiguredNetworks( String packageName, String featureId, in Bundle extras)107     ParceledListSlice getPrivilegedConfiguredNetworks(
108             String packageName, String featureId, in Bundle extras);
109 
getPrivilegedConnectedNetwork( String packageName, String featureId, in Bundle extras)110     WifiConfiguration getPrivilegedConnectedNetwork(
111             String packageName, String featureId, in Bundle extras);
112 
setSsidsAllowlist(String packageName, in ParceledListSlice<WifiSsid> ssids)113     void setSsidsAllowlist(String packageName, in ParceledListSlice<WifiSsid> ssids);
114 
getSsidsAllowlist(String packageName)115     ParceledListSlice getSsidsAllowlist(String packageName);
116 
getMatchingOsuProviders(in ParceledListSlice<ScanResult> scanResult)117     Map getMatchingOsuProviders(in ParceledListSlice<ScanResult> scanResult);
118 
getMatchingPasspointConfigsForOsuProviders(in ParceledListSlice<OsuProvider> osuProviders)119     Map getMatchingPasspointConfigsForOsuProviders(in ParceledListSlice<OsuProvider> osuProviders);
120 
addOrUpdateNetwork(in WifiConfiguration config, String packageName, in Bundle extras)121     int addOrUpdateNetwork(in WifiConfiguration config, String packageName, in Bundle extras);
122 
addOrUpdateNetworkPrivileged( in WifiConfiguration config, String packageName)123     WifiManager.AddNetworkResult addOrUpdateNetworkPrivileged(
124             in WifiConfiguration config, String packageName);
125 
addOrUpdatePasspointConfiguration(in PasspointConfiguration config, String packageName)126     boolean addOrUpdatePasspointConfiguration(in PasspointConfiguration config, String packageName);
127 
removePasspointConfiguration(in String fqdn, String packageName)128     boolean removePasspointConfiguration(in String fqdn, String packageName);
129 
getPasspointConfigurations(in String packageName)130     ParceledListSlice<PasspointConfiguration> getPasspointConfigurations(in String packageName);
131 
getWifiConfigsForPasspointProfiles( in StringParceledListSlice fqdnList)132     ParceledListSlice<WifiConfiguration> getWifiConfigsForPasspointProfiles(
133             in StringParceledListSlice fqdnList);
134 
queryPasspointIcon(long bssid, String fileName)135     void queryPasspointIcon(long bssid, String fileName);
136 
matchProviderWithCurrentNetwork(String fqdn)137     int matchProviderWithCurrentNetwork(String fqdn);
138 
removeNetwork(int netId, String packageName)139     boolean removeNetwork(int netId, String packageName);
140 
removeNonCallerConfiguredNetworks(String packageName)141     boolean removeNonCallerConfiguredNetworks(String packageName);
142 
enableNetwork(int netId, boolean disableOthers, String packageName)143     boolean enableNetwork(int netId, boolean disableOthers, String packageName);
144 
disableNetwork(int netId, String packageName)145     boolean disableNetwork(int netId, String packageName);
146 
allowAutojoinGlobal(boolean choice, String packageName, in Bundle extras)147     void allowAutojoinGlobal(boolean choice, String packageName, in Bundle extras);
148 
queryAutojoinGlobal(in IBooleanListener listener)149     void queryAutojoinGlobal(in IBooleanListener listener);
150 
allowAutojoin(int netId, boolean choice)151     void allowAutojoin(int netId, boolean choice);
152 
allowAutojoinPasspoint(String fqdn, boolean enableAutoJoin)153     void allowAutojoinPasspoint(String fqdn, boolean enableAutoJoin);
154 
setMacRandomizationSettingPasspointEnabled(String fqdn, boolean enable)155     void setMacRandomizationSettingPasspointEnabled(String fqdn, boolean enable);
156 
setPasspointMeteredOverride(String fqdn, int meteredOverride)157     void setPasspointMeteredOverride(String fqdn, int meteredOverride);
158 
startScan(String packageName, String featureId)159     boolean startScan(String packageName, String featureId);
160 
getScanResults(String callingPackage, String callingFeatureId)161     ParceledListSlice getScanResults(String callingPackage, String callingFeatureId);
162 
getChannelData(in IListListener listener, String packageName, in Bundle extras)163     void getChannelData(in IListListener listener, String packageName, in Bundle extras);
164 
getBssidBlocklist( in ParceledListSlice<WifiSsid> ssids, in IMacAddressListListener listener)165     void getBssidBlocklist(
166             in ParceledListSlice<WifiSsid> ssids, in IMacAddressListListener listener);
167 
disconnect(String packageName)168     boolean disconnect(String packageName);
169 
reconnect(String packageName)170     boolean reconnect(String packageName);
171 
reassociate(String packageName)172     boolean reassociate(String packageName);
173 
getConnectionInfo(String callingPackage, String callingFeatureId)174     WifiInfo getConnectionInfo(String callingPackage, String callingFeatureId);
175 
setWifiEnabled(String packageName, boolean enable)176     boolean setWifiEnabled(String packageName, boolean enable);
177 
getWifiEnabledState()178     int getWifiEnabledState();
179 
addWifiStateChangedListener(in IWifiStateChangedListener listener)180     void addWifiStateChangedListener(in IWifiStateChangedListener listener);
181 
removeWifiStateChangedListener(in IWifiStateChangedListener listener)182     void removeWifiStateChangedListener(in IWifiStateChangedListener listener);
183 
registerDriverCountryCodeChangedListener( in IOnWifiDriverCountryCodeChangedListener listener, String packageName, String featureId)184     void registerDriverCountryCodeChangedListener(
185             in IOnWifiDriverCountryCodeChangedListener listener, String packageName,
186             String featureId);
187 
unregisterDriverCountryCodeChangedListener( in IOnWifiDriverCountryCodeChangedListener listener)188     void unregisterDriverCountryCodeChangedListener(
189             in IOnWifiDriverCountryCodeChangedListener listener);
190 
addWifiNetworkStateChangedListener(in IWifiNetworkStateChangedListener listener)191     void addWifiNetworkStateChangedListener(in IWifiNetworkStateChangedListener listener);
192 
removeWifiNetworkStateChangedListener(in IWifiNetworkStateChangedListener listener)193     void removeWifiNetworkStateChangedListener(in IWifiNetworkStateChangedListener listener);
194 
getCountryCode(in String packageName, in String featureId)195     String getCountryCode(in String packageName, in String featureId);
196 
setOverrideCountryCode(String country)197     void setOverrideCountryCode(String country);
198 
clearOverrideCountryCode()199     void clearOverrideCountryCode();
200 
setDefaultCountryCode(String country)201     void setDefaultCountryCode(String country);
202 
is24GHzBandSupported()203     boolean is24GHzBandSupported();
204 
is5GHzBandSupported()205     boolean is5GHzBandSupported();
206 
is6GHzBandSupported()207     boolean is6GHzBandSupported();
208 
is60GHzBandSupported()209     boolean is60GHzBandSupported();
210 
isWifiStandardSupported(int standard)211     boolean isWifiStandardSupported(int standard);
212 
getDhcpInfo(String packageName)213     DhcpInfo getDhcpInfo(String packageName);
214 
setScanAlwaysAvailable(boolean isAvailable, String packageName)215     void setScanAlwaysAvailable(boolean isAvailable, String packageName);
216 
isScanAlwaysAvailable()217     boolean isScanAlwaysAvailable();
218 
acquireWifiLock(IBinder lock, int lockType, String tag, in WorkSource ws, in String packageName, in Bundle extras)219     boolean acquireWifiLock(IBinder lock, int lockType, String tag, in WorkSource ws,
220             in String packageName, in Bundle extras);
221 
updateWifiLockWorkSource( IBinder lock, in WorkSource ws, in String packageName, in Bundle extras)222     void updateWifiLockWorkSource(
223             IBinder lock, in WorkSource ws, in String packageName, in Bundle extras);
224 
releaseWifiLock(IBinder lock)225     boolean releaseWifiLock(IBinder lock);
226 
initializeMulticastFiltering()227     void initializeMulticastFiltering();
228 
isMulticastEnabled()229     boolean isMulticastEnabled();
230 
acquireMulticastLock( IBinder binder, String lockTag, String attributionTag, String packageName)231     void acquireMulticastLock(
232             IBinder binder, String lockTag, String attributionTag, String packageName);
233 
releaseMulticastLock(IBinder binder, String lockTag)234     void releaseMulticastLock(IBinder binder, String lockTag);
235 
updateInterfaceIpState(String ifaceName, int mode)236     void updateInterfaceIpState(String ifaceName, int mode);
237 
isDefaultCoexAlgorithmEnabled()238     boolean isDefaultCoexAlgorithmEnabled();
239 
setCoexUnsafeChannels( in List<CoexUnsafeChannel> unsafeChannels, int mandatoryRestrictions)240     void setCoexUnsafeChannels(
241             in List<CoexUnsafeChannel> unsafeChannels, int mandatoryRestrictions);
242 
registerCoexCallback(in ICoexCallback callback)243     void registerCoexCallback(in ICoexCallback callback);
244 
unregisterCoexCallback(in ICoexCallback callback)245     void unregisterCoexCallback(in ICoexCallback callback);
246 
startSoftAp(in WifiConfiguration wifiConfig, String packageName)247     boolean startSoftAp(in WifiConfiguration wifiConfig, String packageName);
248 
startTetheredHotspot(in SoftApConfiguration softApConfig, String packageName)249     boolean startTetheredHotspot(in SoftApConfiguration softApConfig, String packageName);
250 
startTetheredHotspotRequest( in TetheringRequest request, in ISoftApCallback callback, String packageName)251     void startTetheredHotspotRequest(
252             in TetheringRequest request, in ISoftApCallback callback, String packageName);
253 
stopSoftAp()254     boolean stopSoftAp();
255 
validateSoftApConfiguration(in SoftApConfiguration config)256     boolean validateSoftApConfiguration(in SoftApConfiguration config);
257 
startLocalOnlyHotspot(in ILocalOnlyHotspotCallback callback, String packageName, String featureId, in SoftApConfiguration customConfig, in Bundle extras, boolean isCalledFromSystemApi)258     int startLocalOnlyHotspot(in ILocalOnlyHotspotCallback callback, String packageName,
259             String featureId, in SoftApConfiguration customConfig, in Bundle extras,
260             boolean isCalledFromSystemApi);
261 
stopLocalOnlyHotspot()262     void stopLocalOnlyHotspot();
263 
registerLocalOnlyHotspotSoftApCallback(in ISoftApCallback callback, in Bundle extras)264     void registerLocalOnlyHotspotSoftApCallback(in ISoftApCallback callback, in Bundle extras);
265 
unregisterLocalOnlyHotspotSoftApCallback(in ISoftApCallback callback, in Bundle extras)266     void unregisterLocalOnlyHotspotSoftApCallback(in ISoftApCallback callback, in Bundle extras);
267 
startWatchLocalOnlyHotspot(in ILocalOnlyHotspotCallback callback)268     void startWatchLocalOnlyHotspot(in ILocalOnlyHotspotCallback callback);
269 
stopWatchLocalOnlyHotspot()270     void stopWatchLocalOnlyHotspot();
271 
getWifiApEnabledState()272     @UnsupportedAppUsage int getWifiApEnabledState();
273 
getWifiApConfiguration()274     @UnsupportedAppUsage WifiConfiguration getWifiApConfiguration();
275 
getSoftApConfiguration()276     SoftApConfiguration getSoftApConfiguration();
277 
queryLastConfiguredTetheredApPassphraseSinceBoot(IStringListener listener)278     void queryLastConfiguredTetheredApPassphraseSinceBoot(IStringListener listener);
279 
setWifiApConfiguration(in WifiConfiguration wifiConfig, String packageName)280     boolean setWifiApConfiguration(in WifiConfiguration wifiConfig, String packageName);
281 
setSoftApConfiguration(in SoftApConfiguration softApConfig, String packageName)282     boolean setSoftApConfiguration(in SoftApConfiguration softApConfig, String packageName);
283 
enableTdls(String remoteIPAddress, boolean enable)284     void enableTdls(String remoteIPAddress, boolean enable);
285 
enableTdlsWithRemoteIpAddress( String remoteIPAddress, boolean enable, in IBooleanListener listener)286     void enableTdlsWithRemoteIpAddress(
287             String remoteIPAddress, boolean enable, in IBooleanListener listener);
288 
enableTdlsWithMacAddress(String remoteMacAddress, boolean enable)289     void enableTdlsWithMacAddress(String remoteMacAddress, boolean enable);
290 
enableTdlsWithRemoteMacAddress( String remoteMacAddress, boolean enable, in IBooleanListener listener)291     void enableTdlsWithRemoteMacAddress(
292             String remoteMacAddress, boolean enable, in IBooleanListener listener);
293 
isTdlsOperationCurrentlyAvailable(in IBooleanListener listener)294     void isTdlsOperationCurrentlyAvailable(in IBooleanListener listener);
295 
getMaxSupportedConcurrentTdlsSessions(in IIntegerListener callback)296     void getMaxSupportedConcurrentTdlsSessions(in IIntegerListener callback);
297 
getNumberOfEnabledTdlsSessions(in IIntegerListener callback)298     void getNumberOfEnabledTdlsSessions(in IIntegerListener callback);
299 
getCurrentNetworkWpsNfcConfigurationToken()300     String getCurrentNetworkWpsNfcConfigurationToken();
301 
enableVerboseLogging(int verbose)302     void enableVerboseLogging(int verbose);
303 
getVerboseLoggingLevel()304     int getVerboseLoggingLevel();
305 
disableEphemeralNetwork(String SSID, String packageName)306     void disableEphemeralNetwork(String SSID, String packageName);
307 
factoryReset(String packageName)308     void factoryReset(String packageName);
309 
getCurrentNetwork()310     @UnsupportedAppUsage(maxTargetSdk=30, trackingBug=170729553) Network getCurrentNetwork();
311 
retrieveBackupData()312     byte[] retrieveBackupData();
313 
restoreBackupData(in byte[] data)314     void restoreBackupData(in byte[] data);
315 
retrieveSoftApBackupData()316     byte[] retrieveSoftApBackupData();
317 
restoreSoftApBackupData(in byte[] data)318     SoftApConfiguration restoreSoftApBackupData(in byte[] data);
319 
restoreSupplicantBackupData(in byte[] supplicantData, in byte[] ipConfigData)320     void restoreSupplicantBackupData(in byte[] supplicantData, in byte[] ipConfigData);
321 
startSubscriptionProvisioning(in OsuProvider provider, in IProvisioningCallback callback)322     void startSubscriptionProvisioning(in OsuProvider provider, in IProvisioningCallback callback);
323 
registerSoftApCallback(in ISoftApCallback callback)324     void registerSoftApCallback(in ISoftApCallback callback);
325 
unregisterSoftApCallback(in ISoftApCallback callback)326     void unregisterSoftApCallback(in ISoftApCallback callback);
327 
addWifiVerboseLoggingStatusChangedListener( in IWifiVerboseLoggingStatusChangedListener listener)328     void addWifiVerboseLoggingStatusChangedListener(
329             in IWifiVerboseLoggingStatusChangedListener listener);
330 
removeWifiVerboseLoggingStatusChangedListener( in IWifiVerboseLoggingStatusChangedListener listener)331     void removeWifiVerboseLoggingStatusChangedListener(
332             in IWifiVerboseLoggingStatusChangedListener listener);
333 
addOnWifiUsabilityStatsListener(in IOnWifiUsabilityStatsListener listener)334     void addOnWifiUsabilityStatsListener(in IOnWifiUsabilityStatsListener listener);
335 
removeOnWifiUsabilityStatsListener(in IOnWifiUsabilityStatsListener listener)336     void removeOnWifiUsabilityStatsListener(in IOnWifiUsabilityStatsListener listener);
337 
registerTrafficStateCallback(in ITrafficStateCallback callback)338     void registerTrafficStateCallback(in ITrafficStateCallback callback);
339 
unregisterTrafficStateCallback(in ITrafficStateCallback callback)340     void unregisterTrafficStateCallback(in ITrafficStateCallback callback);
341 
registerNetworkRequestMatchCallback(in INetworkRequestMatchCallback callback)342     void registerNetworkRequestMatchCallback(in INetworkRequestMatchCallback callback);
343 
unregisterNetworkRequestMatchCallback(in INetworkRequestMatchCallback callback)344     void unregisterNetworkRequestMatchCallback(in INetworkRequestMatchCallback callback);
345 
addNetworkSuggestions(in ParceledListSlice<WifiNetworkSuggestion> networkSuggestions, in String packageName, in String featureId)346     int addNetworkSuggestions(in ParceledListSlice<WifiNetworkSuggestion> networkSuggestions,
347             in String packageName, in String featureId);
348 
removeNetworkSuggestions(in ParceledListSlice<WifiNetworkSuggestion> networkSuggestions, in String packageName, int action)349     int removeNetworkSuggestions(in ParceledListSlice<WifiNetworkSuggestion> networkSuggestions,
350             in String packageName, int action);
351 
getNetworkSuggestions(in String packageName)352     ParceledListSlice<WifiNetworkSuggestion> getNetworkSuggestions(in String packageName);
353 
getFactoryMacAddresses()354     String[] getFactoryMacAddresses();
355 
setDeviceMobilityState(int state)356     void setDeviceMobilityState(int state);
357 
startDppAsConfiguratorInitiator(in IBinder binder, in String packageName, in String enrolleeUri, int selectedNetworkId, int netRole, in IDppCallback callback)358     void startDppAsConfiguratorInitiator(in IBinder binder, in String packageName,
359             in String enrolleeUri, int selectedNetworkId, int netRole, in IDppCallback callback);
360 
startDppAsEnrolleeInitiator( in IBinder binder, in String configuratorUri, in IDppCallback callback)361     void startDppAsEnrolleeInitiator(
362             in IBinder binder, in String configuratorUri, in IDppCallback callback);
363 
startDppAsEnrolleeResponder( in IBinder binder, in String deviceInfo, int curve, in IDppCallback callback)364     void startDppAsEnrolleeResponder(
365             in IBinder binder, in String deviceInfo, int curve, in IDppCallback callback);
366 
stopDppSession()367     void stopDppSession();
368 
updateWifiUsabilityScore(int seqNum, int score, int predictionHorizonSec)369     void updateWifiUsabilityScore(int seqNum, int score, int predictionHorizonSec);
370 
connect(in WifiConfiguration config, int netId, in IActionListener listener, in String packageName, in Bundle extras)371     oneway void connect(in WifiConfiguration config, int netId, in IActionListener listener,
372             in String packageName, in Bundle extras);
373 
save( in WifiConfiguration config, in IActionListener listener, in String packageName)374     oneway void save(
375             in WifiConfiguration config, in IActionListener listener, in String packageName);
376 
forget(int netId, in IActionListener listener)377     oneway void forget(int netId, in IActionListener listener);
378 
registerScanResultsCallback(in IScanResultsCallback callback)379     void registerScanResultsCallback(in IScanResultsCallback callback);
380 
unregisterScanResultsCallback(in IScanResultsCallback callback)381     void unregisterScanResultsCallback(in IScanResultsCallback callback);
382 
registerSuggestionConnectionStatusListener( in ISuggestionConnectionStatusListener listener, String packageName, String featureId)383     void registerSuggestionConnectionStatusListener(
384             in ISuggestionConnectionStatusListener listener, String packageName, String featureId);
385 
unregisterSuggestionConnectionStatusListener( in ISuggestionConnectionStatusListener listener, String packageName)386     void unregisterSuggestionConnectionStatusListener(
387             in ISuggestionConnectionStatusListener listener, String packageName);
388 
addLocalOnlyConnectionStatusListener( in ILocalOnlyConnectionStatusListener listener, String packageName, String featureId)389     void addLocalOnlyConnectionStatusListener(
390             in ILocalOnlyConnectionStatusListener listener, String packageName, String featureId);
391 
removeLocalOnlyConnectionStatusListener( in ILocalOnlyConnectionStatusListener listener, String packageName)392     void removeLocalOnlyConnectionStatusListener(
393             in ILocalOnlyConnectionStatusListener listener, String packageName);
394 
calculateSignalLevel(int rssi)395     int calculateSignalLevel(int rssi);
396 
getWifiConfigForMatchedNetworkSuggestionsSharedWithUser( in ParceledListSlice<ScanResult> scanResults)397     ParceledListSlice<WifiConfiguration> getWifiConfigForMatchedNetworkSuggestionsSharedWithUser(
398             in ParceledListSlice<ScanResult> scanResults);
399 
setWifiConnectedNetworkScorer(in IBinder binder, in IWifiConnectedNetworkScorer scorer)400     boolean setWifiConnectedNetworkScorer(in IBinder binder, in IWifiConnectedNetworkScorer scorer);
401 
clearWifiConnectedNetworkScorer()402     void clearWifiConnectedNetworkScorer();
403 
setExternalPnoScanRequest(in IBinder binder, in IPnoScanResultsCallback callback, in List<WifiSsid> ssids, in int[] frequencies, String packageName, String featureId)404     void setExternalPnoScanRequest(in IBinder binder, in IPnoScanResultsCallback callback,
405             in List<WifiSsid> ssids, in int[] frequencies, String packageName, String featureId);
406 
setPnoScanEnabled( boolean enabled, boolean enablePnoScanAfterWifiToggle, String packageName)407     void setPnoScanEnabled(
408             boolean enabled, boolean enablePnoScanAfterWifiToggle, String packageName);
409 
clearExternalPnoScanRequest()410     void clearExternalPnoScanRequest();
411 
getLastCallerInfoForApi(int api, in ILastCallerListener listener)412     void getLastCallerInfoForApi(int api, in ILastCallerListener listener);
413 
414     /**
415      * Return the Map of {@link WifiNetworkSuggestion} and the list of <ScanResult>
416      */
getMatchingScanResults(in ParceledListSlice<WifiNetworkSuggestion> networkSuggestions, in ParceledListSlice<ScanResult> scanResults, String callingPackage, String callingFeatureId)417     Map getMatchingScanResults(in ParceledListSlice<WifiNetworkSuggestion> networkSuggestions,
418             in ParceledListSlice<ScanResult> scanResults, String callingPackage,
419             String callingFeatureId);
420 
setScanThrottleEnabled(boolean enable)421     void setScanThrottleEnabled(boolean enable);
422 
isScanThrottleEnabled()423     boolean isScanThrottleEnabled();
424 
getAllMatchingPasspointProfilesForScanResults(in ParceledListSlice<ScanResult> scanResult)425     Map getAllMatchingPasspointProfilesForScanResults(in ParceledListSlice<ScanResult> scanResult);
426 
setAutoWakeupEnabled(boolean enable)427     void setAutoWakeupEnabled(boolean enable);
428 
isAutoWakeupEnabled()429     boolean isAutoWakeupEnabled();
430 
startRestrictingAutoJoinToSubscriptionId(int subId)431     void startRestrictingAutoJoinToSubscriptionId(int subId);
432 
stopRestrictingAutoJoinToSubscriptionId()433     void stopRestrictingAutoJoinToSubscriptionId();
434 
setCarrierNetworkOffloadEnabled(int subscriptionId, boolean merged, boolean enabled)435     void setCarrierNetworkOffloadEnabled(int subscriptionId, boolean merged, boolean enabled);
436 
isCarrierNetworkOffloadEnabled(int subscriptionId, boolean merged)437     boolean isCarrierNetworkOffloadEnabled(int subscriptionId, boolean merged);
438 
registerSubsystemRestartCallback(in ISubsystemRestartCallback callback)439     void registerSubsystemRestartCallback(in ISubsystemRestartCallback callback);
440 
unregisterSubsystemRestartCallback(in ISubsystemRestartCallback callback)441     void unregisterSubsystemRestartCallback(in ISubsystemRestartCallback callback);
442 
restartWifiSubsystem()443     void restartWifiSubsystem();
444 
addSuggestionUserApprovalStatusListener( in ISuggestionUserApprovalStatusListener listener, String packageName)445     void addSuggestionUserApprovalStatusListener(
446             in ISuggestionUserApprovalStatusListener listener, String packageName);
447 
removeSuggestionUserApprovalStatusListener( in ISuggestionUserApprovalStatusListener listener, String packageName)448     void removeSuggestionUserApprovalStatusListener(
449             in ISuggestionUserApprovalStatusListener listener, String packageName);
450 
setEmergencyScanRequestInProgress(boolean inProgress)451     void setEmergencyScanRequestInProgress(boolean inProgress);
452 
removeAppState(int targetAppUid, String targetApppackageName)453     void removeAppState(int targetAppUid, String targetApppackageName);
454 
setWifiScoringEnabled(boolean enabled)455     boolean setWifiScoringEnabled(boolean enabled);
456 
flushPasspointAnqpCache(String packageName)457     void flushPasspointAnqpCache(String packageName);
458 
getUsableChannels( int band, int mode, int filter, String packageName, in Bundle extras)459     List<WifiAvailableChannel> getUsableChannels(
460             int band, int mode, int filter, String packageName, in Bundle extras);
461 
isWifiPasspointEnabled()462     boolean isWifiPasspointEnabled();
463 
setWifiPasspointEnabled(boolean enabled)464     void setWifiPasspointEnabled(boolean enabled);
465 
getStaConcurrencyForMultiInternetMode()466     int getStaConcurrencyForMultiInternetMode();
467 
setStaConcurrencyForMultiInternetMode(int mode)468     boolean setStaConcurrencyForMultiInternetMode(int mode);
469 
notifyMinimumRequiredWifiSecurityLevelChanged(int level)470     void notifyMinimumRequiredWifiSecurityLevelChanged(int level);
471 
notifyWifiSsidPolicyChanged(int policyType, in ParceledListSlice<WifiSsid> ssids)472     void notifyWifiSsidPolicyChanged(int policyType, in ParceledListSlice<WifiSsid> ssids);
473 
getOemPrivilegedWifiAdminPackages()474     String[] getOemPrivilegedWifiAdminPackages();
475 
replyToP2pInvitationReceivedDialog(int dialogId, boolean accepted, String optionalPin)476     void replyToP2pInvitationReceivedDialog(int dialogId, boolean accepted, String optionalPin);
477 
replyToSimpleDialog(int dialogId, int reply)478     void replyToSimpleDialog(int dialogId, int reply);
479 
addCustomDhcpOptions( in WifiSsid ssid, in byte[] oui, in ParceledListSlice<DhcpOption> options)480     void addCustomDhcpOptions(
481             in WifiSsid ssid, in byte[] oui, in ParceledListSlice<DhcpOption> options);
482 
removeCustomDhcpOptions(in WifiSsid ssid, in byte[] oui)483     void removeCustomDhcpOptions(in WifiSsid ssid, in byte[] oui);
484 
reportCreateInterfaceImpact(String packageName, int interfaceType, boolean requireNewInterface, in IInterfaceCreationInfoCallback callback)485     void reportCreateInterfaceImpact(String packageName, int interfaceType,
486             boolean requireNewInterface, in IInterfaceCreationInfoCallback callback);
487 
getMaxNumberOfChannelsPerRequest()488     int getMaxNumberOfChannelsPerRequest();
489 
addQosPolicies(in ParceledListSlice<QosPolicyParams> policyParamsList, in IBinder binder, String packageName, in IListListener callback)490     void addQosPolicies(in ParceledListSlice<QosPolicyParams> policyParamsList, in IBinder binder,
491             String packageName, in IListListener callback);
492 
removeQosPolicies(in int[] policyIdList, String packageName)493     void removeQosPolicies(in int[] policyIdList, String packageName);
494 
removeAllQosPolicies(String packageName)495     void removeAllQosPolicies(String packageName);
496 
setLinkLayerStatsPollingInterval(int intervalMs)497     void setLinkLayerStatsPollingInterval(int intervalMs);
498 
getLinkLayerStatsPollingInterval(in IIntegerListener listener)499     void getLinkLayerStatsPollingInterval(in IIntegerListener listener);
500 
setMloMode(int mode, in IBooleanListener listener)501     void setMloMode(int mode, in IBooleanListener listener);
502 
getMloMode(in IIntegerListener listener)503     void getMloMode(in IIntegerListener listener);
504 
addWifiLowLatencyLockListener(in IWifiLowLatencyLockListener listener)505     void addWifiLowLatencyLockListener(in IWifiLowLatencyLockListener listener);
506 
removeWifiLowLatencyLockListener(in IWifiLowLatencyLockListener listener)507     void removeWifiLowLatencyLockListener(in IWifiLowLatencyLockListener listener);
508 
getMaxMloAssociationLinkCount(in IIntegerListener listener, in Bundle extras)509     void getMaxMloAssociationLinkCount(in IIntegerListener listener, in Bundle extras);
510 
getMaxMloStrLinkCount(in IIntegerListener listener, in Bundle extras)511     void getMaxMloStrLinkCount(in IIntegerListener listener, in Bundle extras);
512 
getSupportedSimultaneousBandCombinations(in IWifiBandsListener listener, in Bundle extras)513     void getSupportedSimultaneousBandCombinations(in IWifiBandsListener listener, in Bundle extras);
514 
setWepAllowed(boolean isAllowed)515     void setWepAllowed(boolean isAllowed);
516 
queryWepAllowed(in IBooleanListener listener)517     void queryWepAllowed(in IBooleanListener listener);
518 
enableMscs(in MscsParams mscsParams)519     void enableMscs(in MscsParams mscsParams);
520 
disableMscs()521     void disableMscs();
522 
setSendDhcpHostnameRestriction(String packageName, int restriction)523     void setSendDhcpHostnameRestriction(String packageName, int restriction);
524 
querySendDhcpHostnameRestriction(String packageName, in IIntegerListener listener)525     void querySendDhcpHostnameRestriction(String packageName, in IIntegerListener listener);
526 
setPerSsidRoamingMode(in WifiSsid ssid, int roamingMode, String packageName)527     void setPerSsidRoamingMode(in WifiSsid ssid, int roamingMode, String packageName);
528 
removePerSsidRoamingMode(in WifiSsid ssid, String packageName)529     void removePerSsidRoamingMode(in WifiSsid ssid, String packageName);
530 
getPerSsidRoamingModes(String packageName, in IMapListener listener)531     void getPerSsidRoamingModes(String packageName, in IMapListener listener);
532 
getTwtCapabilities(in ITwtCapabilitiesListener listener, in Bundle extras)533     void getTwtCapabilities(in ITwtCapabilitiesListener listener, in Bundle extras);
534 
setupTwtSession(in TwtRequest twtRequest, in ITwtCallback callback, in Bundle extras)535     void setupTwtSession(in TwtRequest twtRequest, in ITwtCallback callback, in Bundle extras);
536 
getStatsTwtSession(in int sessionId, in ITwtStatsListener listener, in Bundle extras)537     void getStatsTwtSession(in int sessionId, in ITwtStatsListener listener, in Bundle extras);
538 
teardownTwtSession(in int sessionId, in Bundle extras)539     void teardownTwtSession(in int sessionId, in Bundle extras);
540 
setD2dAllowedWhenInfraStaDisabled(boolean isAllowed)541     void setD2dAllowedWhenInfraStaDisabled(boolean isAllowed);
542 
queryD2dAllowedWhenInfraStaDisabled(in IBooleanListener listener)543     void queryD2dAllowedWhenInfraStaDisabled(in IBooleanListener listener);
544 
retrieveWifiBackupData(in IByteArrayListener listener)545     void retrieveWifiBackupData(in IByteArrayListener listener);
546 
restoreWifiBackupData(in byte[] data)547     void restoreWifiBackupData(in byte[] data);
548 
isPnoSupported()549     boolean isPnoSupported();
550 
setAutojoinDisallowedSecurityTypes(int restrictions, in Bundle extras)551     void setAutojoinDisallowedSecurityTypes(int restrictions, in Bundle extras);
552 
getAutojoinDisallowedSecurityTypes(in IIntegerListener listener, in Bundle extras)553     void getAutojoinDisallowedSecurityTypes(in IIntegerListener listener, in Bundle extras);
554 
disallowCurrentSuggestedNetwork(in BlockingOption option, String packageName)555     void disallowCurrentSuggestedNetwork(in BlockingOption option, String packageName);
556 
storeCapturedData(int triggerType, boolean isFullCapture, long triggerStartTimeMillis, long triggerStopTimeMillis, in IIntegerListener listener)557     void storeCapturedData(int triggerType, boolean isFullCapture, long triggerStartTimeMillis,
558             long triggerStopTimeMillis, in IIntegerListener listener);
isUsdSubscriberSupported()559     boolean isUsdSubscriberSupported();
isUsdPublisherSupported()560     boolean isUsdPublisherSupported();
561 }
562