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