IWifiManager.aidl revision 358673e275ed065fadb04c1722ac458e6c617a89
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/** 29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright (c) 2008, The Android Open Source Project 39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 4227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriff * Licensed under the Apache License, Version 2.0 (the "License"); 5227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriff * you may not use this file except in compliance with the License. 6227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriff * You may obtain a copy of the License at 79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 8227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriff * http://www.apache.org/licenses/LICENSE-2.0 99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 10227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriff * Unless required by applicable law or agreed to in writing, software 11227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriff * distributed under the License is distributed on an "AS IS" BASIS, 12227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriff * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriff * See the License for the specific language governing permissions and 149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * limitations under the License. 159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage android.net.wifi; 189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 190451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwaltimport android.net.wifi.BatchedScanResult; 200451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwaltimport android.net.wifi.BatchedScanSettings; 219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.wifi.WifiConfiguration; 220451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwaltimport android.net.wifi.WifiInfo; 23738803fee62a98f244250996380820c4923e7f7bYuhao Zhengimport android.net.wifi.ScanSettings; 24738803fee62a98f244250996380820c4923e7f7bYuhao Zhengimport android.net.wifi.WifiChannel; 259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.wifi.ScanResult; 264eeecb25509f91ac7a6e2cde76dac782fbec5360vandwalleimport android.net.wifi.WifiConnectionStatistics; 27b928a3802bfcd3aeed592906ddb3e14c653b213cvandwalleimport android.net.wifi.WifiActivityEnergyInfo; 287094d22022c8e0c6ad71920b101434dded8a276eSanket Padaweimport android.net.Network; 294eeecb25509f91ac7a6e2cde76dac782fbec5360vandwalle 309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.DhcpInfo; 319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 32c7cc37b3cd2a73882e75c74ff9ca2499011ce193Vinit Deshpande 33227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriffimport android.os.Messenger; 347e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackbornimport android.os.WorkSource; 357e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn 369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/** 379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Interface that allows controlling and querying Wi-Fi connectivity. 389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * {@hide} 409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinterface IWifiManager 429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{ 4373f5d16ad5c61320deac161fe23e00a8a4aed772Vinit Deshpande int getSupportedFeatures(); 44c7cc37b3cd2a73882e75c74ff9ca2499011ce193Vinit Deshpande 4573f5d16ad5c61320deac161fe23e00a8a4aed772Vinit Deshpande WifiActivityEnergyInfo reportActivityInfo(); 46b928a3802bfcd3aeed592906ddb3e14c653b213cvandwalle 479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project List<WifiConfiguration> getConfiguredNetworks(); 485321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 49758bdf4a915c313f1c3bef0b95b494c91f363f03Wenchao Tong List<WifiConfiguration> getPrivilegedConfiguredNetworks(); 50758bdf4a915c313f1c3bef0b95b494c91f363f03Wenchao Tong 51b4d90fca0ec461c24cd38e4b7d1990447ad047a1Vinit Deshpande WifiConfiguration getMatchingWifiConfig(in ScanResult scanResult); 52b4d90fca0ec461c24cd38e4b7d1990447ad047a1Vinit Deshpande 539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int addOrUpdateNetwork(in WifiConfiguration config); 549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean removeNetwork(int netId); 569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean enableNetwork(int netId, boolean disableOthers); 589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean disableNetwork(int netId); 609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean pingSupplicant(); 629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 63738803fee62a98f244250996380820c4923e7f7bYuhao Zheng List<WifiChannel> getChannelList(); 64738803fee62a98f244250996380820c4923e7f7bYuhao Zheng 65738803fee62a98f244250996380820c4923e7f7bYuhao Zheng void startScan(in ScanSettings requested, in WorkSource ws); 669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 67da123a6726e7c64b3f19f74ed0eb02bb4398a989vandwalle void startLocationRestrictedScan(in WorkSource ws); 68da123a6726e7c64b3f19f74ed0eb02bb4398a989vandwalle 695e45ee6752528791deb66b83d76250685de15d47Dianne Hackborn List<ScanResult> getScanResults(String callingPackage); 709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 71e498475b187277309c81b38240c7e71ec049e369Irfan Sheriff void disconnect(); 729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 73e498475b187277309c81b38240c7e71ec049e369Irfan Sheriff void reconnect(); 745321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 75e498475b187277309c81b38240c7e71ec049e369Irfan Sheriff void reassociate(); 769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project WifiInfo getConnectionInfo(); 789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean setWifiEnabled(boolean enable); 809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int getWifiEnabledState(); 829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 83ed4f28b492da3ff140bbaabbbda798a08c40ea5bIrfan Sheriff void setCountryCode(String country, boolean persist); 845321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 85b938c0e2036d28df24ec626fc8ed7e277248b9a6xinhe String getCountryCode(); 86b938c0e2036d28df24ec626fc8ed7e277248b9a6xinhe 8736f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff void setFrequencyBand(int band, boolean persist); 8836f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff 8936f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff int getFrequencyBand(); 9036f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff 9136f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff boolean isDualBandSupported(); 9236f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff 939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean saveConfiguration(); 949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project DhcpInfo getDhcpInfo(); 969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 977ea33eac4b57aabf9326d60f52e3ed85217ac846Irfan Sheriff boolean isScanAlwaysAvailable(); 9811aefad94de6569c4c7394e7bc5fdeb0ae60d5bbIrfan Sheriff 997e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn boolean acquireWifiLock(IBinder lock, int lockType, String tag, in WorkSource ws); 1007e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn 1017e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn void updateWifiLockWorkSource(IBinder lock, in WorkSource ws); 1029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean releaseWifiLock(IBinder lock); 1045347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt 105e2d155a51e68694e17fa6e27d05c928215a5dbcfRobert Greenwalt void initializeMulticastFiltering(); 106e2d155a51e68694e17fa6e27d05c928215a5dbcfRobert Greenwalt 10758ff0217a617d5b03d18f0ef532f254f8ba6de2bRobert Greenwalt boolean isMulticastEnabled(); 1085347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt 109fc1b15cfbfc5f69235ec1f367abd7a909381cd05Robert Greenwalt void acquireMulticastLock(IBinder binder, String tag); 1105347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt 111fc1b15cfbfc5f69235ec1f367abd7a909381cd05Robert Greenwalt void releaseMulticastLock(); 1125321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 113ffcea7ae7316ab748a49f5e8f6c6798356f35719Irfan Sheriff void setWifiApEnabled(in WifiConfiguration wifiConfig, boolean enable); 1145321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 1155321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff int getWifiApEnabledState(); 1169ab518ad793385f8405edf19363fe825fb64f5f8Irfan Sheriff 1179ab518ad793385f8405edf19363fe825fb64f5f8Irfan Sheriff WifiConfiguration getWifiApConfiguration(); 11817b232b5b59ab91ab543b87e849583678a000f9bIrfan Sheriff 119e9b056f8860296a08f93f4b7d2a0971c746c227bJan Nordqvist WifiConfiguration buildWifiConfig(String uriString, String mimeType, in byte[] data); 120e9b056f8860296a08f93f4b7d2a0971c746c227bJan Nordqvist 12117b232b5b59ab91ab543b87e849583678a000f9bIrfan Sheriff void setWifiApConfiguration(in WifiConfiguration wifiConfig); 1220d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff 1230d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff void startWifi(); 1240d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff 1250d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff void stopWifi(); 1260d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff 1270d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff void addToBlacklist(String bssid); 1280d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff 1290d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff void clearBlacklist(); 130e04653cbd0e8303eba92088344312b827e6b0babIrfan Sheriff 13107573b32494acbabd21979d8b9584c1ed3f7a6adIrfan Sheriff Messenger getWifiServiceMessenger(); 13207573b32494acbabd21979d8b9584c1ed3f7a6adIrfan Sheriff 1334aeca7c5908387bc7efb0785830aea1053264062Irfan Sheriff String getConfigFile(); 134da6da0907b28d4704aabbdb1bbeb4300954670d1Irfan Sheriff 13564f0d5ba158e9135bcd48d64a1c0db282a4628baVinit Deshapnde void enableTdls(String remoteIPAddress, boolean enable); 13664f0d5ba158e9135bcd48d64a1c0db282a4628baVinit Deshapnde 13764f0d5ba158e9135bcd48d64a1c0db282a4628baVinit Deshapnde void enableTdlsWithMacAddress(String remoteMacAddress, boolean enable); 1380451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwalt 139a029ea131836725b050e1a7550aa171b68171522Robert Greenwalt boolean requestBatchedScan(in BatchedScanSettings requested, IBinder binder, in WorkSource ws); 1400451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwalt 14182f4218c0d5dbc10404db8cf31f0284140d80175Robert Greenwalt void stopBatchedScan(in BatchedScanSettings requested); 1420451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwalt 1430451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwalt List<BatchedScanResult> getBatchedScanResults(String callingPackage); 1440451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwalt 1450451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwalt boolean isBatchedScanSupported(); 1468e628dadc321bf49e93e482540df87431d014b01Robert Greenwalt 1478e628dadc321bf49e93e482540df87431d014b01Robert Greenwalt void pollBatchedScan(); 148b2e6bfd0f0fc675b253ce081d97ca192422a7495Andres Morales 149b2e6bfd0f0fc675b253ce081d97ca192422a7495Andres Morales String getWpsNfcConfigurationToken(int netId); 1505fb7bf5fdb93831684b00eb637ec15b5cf0d1e2dvandwalle 1515fb7bf5fdb93831684b00eb637ec15b5cf0d1e2dvandwalle void enableVerboseLogging(int verbose); 1525fb7bf5fdb93831684b00eb637ec15b5cf0d1e2dvandwalle 1535fb7bf5fdb93831684b00eb637ec15b5cf0d1e2dvandwalle int getVerboseLoggingLevel(); 154d524c78d9358e2fa1e67124468cffa5284870c62vandwalle 155d524c78d9358e2fa1e67124468cffa5284870c62vandwalle void enableAggressiveHandover(int enabled); 156358673e275ed065fadb04c1722ac458e6c617a89Pierre Vandwalle int getAggressiveHandover(); 157d524c78d9358e2fa1e67124468cffa5284870c62vandwalle 158358673e275ed065fadb04c1722ac458e6c617a89Pierre Vandwalle void setAllowScansWithTraffic(int enabled); 159d524c78d9358e2fa1e67124468cffa5284870c62vandwalle int getAllowScansWithTraffic(); 160d524c78d9358e2fa1e67124468cffa5284870c62vandwalle 161358673e275ed065fadb04c1722ac458e6c617a89Pierre Vandwalle void setAllowScansWhileAssociated(int enabled); 162358673e275ed065fadb04c1722ac458e6c617a89Pierre Vandwalle int getAllowScansWhileAssociated(); 1634eeecb25509f91ac7a6e2cde76dac782fbec5360vandwalle 164358673e275ed065fadb04c1722ac458e6c617a89Pierre Vandwalle void setAllowNetworkSwitchingWhileAssociated(int enabled); 165358673e275ed065fadb04c1722ac458e6c617a89Pierre Vandwalle int getAllowNetworkSwitchingWhileAssociated(); 1665914caff06f9790238bea0536acfbf533cee9046Pierre Vandwalle 167358673e275ed065fadb04c1722ac458e6c617a89Pierre Vandwalle void setHalBasedAutojoinOffload(int enabled); 168358673e275ed065fadb04c1722ac458e6c617a89Pierre Vandwalle int getHalBasedAutojoinOffload(); 1695914caff06f9790238bea0536acfbf533cee9046Pierre Vandwalle 1704eeecb25509f91ac7a6e2cde76dac782fbec5360vandwalle WifiConnectionStatistics getConnectionStatistics(); 17193e4192c06a28f37bc1c16b280fbd22c735b5c92vandwalle 17293e4192c06a28f37bc1c16b280fbd22c735b5c92vandwalle void disableEphemeralNetwork(String SSID); 173f1fb39763d87dabe254b6ed64ac8f20145035bc0Stuart Scott 174f1fb39763d87dabe254b6ed64ac8f20145035bc0Stuart Scott void factoryReset(); 1757094d22022c8e0c6ad71920b101434dded8a276eSanket Padawe 1767094d22022c8e0c6ad71920b101434dded8a276eSanket Padawe Network getCurrentNetwork(); 1779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 179