IWifiManager.aidl revision 01894d8f6b661362cab36e6a997053fd078101a2
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 1901894d8f6b661362cab36e6a997053fd078101a2Peter Qiuimport android.net.wifi.hotspot2.PasspointConfiguration; 209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.wifi.WifiConfiguration; 210451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwaltimport android.net.wifi.WifiInfo; 22738803fee62a98f244250996380820c4923e7f7bYuhao Zhengimport android.net.wifi.ScanSettings; 239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.wifi.ScanResult; 24a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpandeimport android.net.wifi.PasspointManagementObjectDefinition; 254eeecb25509f91ac7a6e2cde76dac782fbec5360vandwalleimport android.net.wifi.WifiConnectionStatistics; 26b928a3802bfcd3aeed592906ddb3e14c653b213cvandwalleimport android.net.wifi.WifiActivityEnergyInfo; 277094d22022c8e0c6ad71920b101434dded8a276eSanket Padaweimport android.net.Network; 284eeecb25509f91ac7a6e2cde76dac782fbec5360vandwalle 299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.DhcpInfo; 309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 31227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriffimport android.os.Messenger; 32010bf374d8145528f8733dfa6ef101b15de23a8dAdam Lesinskiimport android.os.ResultReceiver; 337e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackbornimport android.os.WorkSource; 347e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn 359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/** 369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Interface that allows controlling and querying Wi-Fi connectivity. 379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * {@hide} 399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinterface IWifiManager 419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{ 4273f5d16ad5c61320deac161fe23e00a8a4aed772Vinit Deshpande int getSupportedFeatures(); 43c7cc37b3cd2a73882e75c74ff9ca2499011ce193Vinit Deshpande 4473f5d16ad5c61320deac161fe23e00a8a4aed772Vinit Deshpande WifiActivityEnergyInfo reportActivityInfo(); 45b928a3802bfcd3aeed592906ddb3e14c653b213cvandwalle 46010bf374d8145528f8733dfa6ef101b15de23a8dAdam Lesinski /** 47010bf374d8145528f8733dfa6ef101b15de23a8dAdam Lesinski * Requests the controller activity info asynchronously. 48010bf374d8145528f8733dfa6ef101b15de23a8dAdam Lesinski * The implementor is expected to reply with the 49010bf374d8145528f8733dfa6ef101b15de23a8dAdam Lesinski * {@link android.net.wifi.WifiActivityEnergyInfo} object placed into the Bundle with the key 50010bf374d8145528f8733dfa6ef101b15de23a8dAdam Lesinski * {@link android.os.BatteryStats#RESULT_RECEIVER_CONTROLLER_KEY}. The result code is ignored. 51010bf374d8145528f8733dfa6ef101b15de23a8dAdam Lesinski */ 52010bf374d8145528f8733dfa6ef101b15de23a8dAdam Lesinski oneway void requestActivityInfo(in ResultReceiver result); 53010bf374d8145528f8733dfa6ef101b15de23a8dAdam Lesinski 549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project List<WifiConfiguration> getConfiguredNetworks(); 555321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 56758bdf4a915c313f1c3bef0b95b494c91f363f03Wenchao Tong List<WifiConfiguration> getPrivilegedConfiguredNetworks(); 57758bdf4a915c313f1c3bef0b95b494c91f363f03Wenchao Tong 58b4d90fca0ec461c24cd38e4b7d1990447ad047a1Vinit Deshpande WifiConfiguration getMatchingWifiConfig(in ScanResult scanResult); 59b4d90fca0ec461c24cd38e4b7d1990447ad047a1Vinit Deshpande 609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int addOrUpdateNetwork(in WifiConfiguration config); 619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande int addPasspointManagementObject(String mo); 63a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande 64a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande int modifyPasspointManagementObject(String fqdn, 65a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande in List<PasspointManagementObjectDefinition> mos); 66a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande 6701894d8f6b661362cab36e6a997053fd078101a2Peter Qiu boolean addPasspointConfiguration(in PasspointConfiguration config); 6801894d8f6b661362cab36e6a997053fd078101a2Peter Qiu 6901894d8f6b661362cab36e6a997053fd078101a2Peter Qiu boolean removePasspointConfiguration(in String fqdn); 7001894d8f6b661362cab36e6a997053fd078101a2Peter Qiu 7101894d8f6b661362cab36e6a997053fd078101a2Peter Qiu List<PasspointConfiguration> getPasspointConfigurations(); 7201894d8f6b661362cab36e6a997053fd078101a2Peter Qiu 73a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande void queryPasspointIcon(long bssid, String fileName); 74a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande 75a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande int matchProviderWithCurrentNetwork(String fqdn); 76a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande 77a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande void deauthenticateNetwork(long holdoff, boolean ess); 78a772f0cf34f0db67997cb31fa44315c0933563daVinit Deshpande 799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean removeNetwork(int netId); 809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean enableNetwork(int netId, boolean disableOthers); 829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean disableNetwork(int netId); 849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean pingSupplicant(); 869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 87738803fee62a98f244250996380820c4923e7f7bYuhao Zheng void startScan(in ScanSettings requested, in WorkSource ws); 889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 895e45ee6752528791deb66b83d76250685de15d47Dianne Hackborn List<ScanResult> getScanResults(String callingPackage); 909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 91e498475b187277309c81b38240c7e71ec049e369Irfan Sheriff void disconnect(); 929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 93e498475b187277309c81b38240c7e71ec049e369Irfan Sheriff void reconnect(); 945321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 95e498475b187277309c81b38240c7e71ec049e369Irfan Sheriff void reassociate(); 969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project WifiInfo getConnectionInfo(); 989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 998efb84e3e0b66696c45adb1faa0fe1e6f75f22c3Mitchell Wills boolean setWifiEnabled(boolean enable); 1009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int getWifiEnabledState(); 1029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 103ed4f28b492da3ff140bbaabbbda798a08c40ea5bIrfan Sheriff void setCountryCode(String country, boolean persist); 1045321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 105b938c0e2036d28df24ec626fc8ed7e277248b9a6xinhe String getCountryCode(); 106b938c0e2036d28df24ec626fc8ed7e277248b9a6xinhe 10736f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff boolean isDualBandSupported(); 10836f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff 1099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean saveConfiguration(); 1109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project DhcpInfo getDhcpInfo(); 1129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1137ea33eac4b57aabf9326d60f52e3ed85217ac846Irfan Sheriff boolean isScanAlwaysAvailable(); 11411aefad94de6569c4c7394e7bc5fdeb0ae60d5bbIrfan Sheriff 1157e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn boolean acquireWifiLock(IBinder lock, int lockType, String tag, in WorkSource ws); 1167e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn 1177e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn void updateWifiLockWorkSource(IBinder lock, in WorkSource ws); 1189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean releaseWifiLock(IBinder lock); 1205347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt 121e2d155a51e68694e17fa6e27d05c928215a5dbcfRobert Greenwalt void initializeMulticastFiltering(); 122e2d155a51e68694e17fa6e27d05c928215a5dbcfRobert Greenwalt 12358ff0217a617d5b03d18f0ef532f254f8ba6de2bRobert Greenwalt boolean isMulticastEnabled(); 1245347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt 125fc1b15cfbfc5f69235ec1f367abd7a909381cd05Robert Greenwalt void acquireMulticastLock(IBinder binder, String tag); 1265347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt 127fc1b15cfbfc5f69235ec1f367abd7a909381cd05Robert Greenwalt void releaseMulticastLock(); 1285321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 129ffcea7ae7316ab748a49f5e8f6c6798356f35719Irfan Sheriff void setWifiApEnabled(in WifiConfiguration wifiConfig, boolean enable); 1305321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 1315321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff int getWifiApEnabledState(); 1329ab518ad793385f8405edf19363fe825fb64f5f8Irfan Sheriff 1339ab518ad793385f8405edf19363fe825fb64f5f8Irfan Sheriff WifiConfiguration getWifiApConfiguration(); 13417b232b5b59ab91ab543b87e849583678a000f9bIrfan Sheriff 135e9b056f8860296a08f93f4b7d2a0971c746c227bJan Nordqvist WifiConfiguration buildWifiConfig(String uriString, String mimeType, in byte[] data); 136e9b056f8860296a08f93f4b7d2a0971c746c227bJan Nordqvist 13717b232b5b59ab91ab543b87e849583678a000f9bIrfan Sheriff void setWifiApConfiguration(in WifiConfiguration wifiConfig); 1380d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff 13907573b32494acbabd21979d8b9584c1ed3f7a6adIrfan Sheriff Messenger getWifiServiceMessenger(); 14007573b32494acbabd21979d8b9584c1ed3f7a6adIrfan Sheriff 14164f0d5ba158e9135bcd48d64a1c0db282a4628baVinit Deshapnde void enableTdls(String remoteIPAddress, boolean enable); 14264f0d5ba158e9135bcd48d64a1c0db282a4628baVinit Deshapnde 14364f0d5ba158e9135bcd48d64a1c0db282a4628baVinit Deshapnde void enableTdlsWithMacAddress(String remoteMacAddress, boolean enable); 1440451d59ba2d768e7653752028910f00a6c96e64eRobert Greenwalt 145b2e6bfd0f0fc675b253ce081d97ca192422a7495Andres Morales String getWpsNfcConfigurationToken(int netId); 1465fb7bf5fdb93831684b00eb637ec15b5cf0d1e2dvandwalle 1475fb7bf5fdb93831684b00eb637ec15b5cf0d1e2dvandwalle void enableVerboseLogging(int verbose); 1485fb7bf5fdb93831684b00eb637ec15b5cf0d1e2dvandwalle 1495fb7bf5fdb93831684b00eb637ec15b5cf0d1e2dvandwalle int getVerboseLoggingLevel(); 150d524c78d9358e2fa1e67124468cffa5284870c62vandwalle 151d524c78d9358e2fa1e67124468cffa5284870c62vandwalle void enableAggressiveHandover(int enabled); 152358673e275ed065fadb04c1722ac458e6c617a89Pierre Vandwalle int getAggressiveHandover(); 153d524c78d9358e2fa1e67124468cffa5284870c62vandwalle 154358673e275ed065fadb04c1722ac458e6c617a89Pierre Vandwalle void setAllowScansWithTraffic(int enabled); 155d524c78d9358e2fa1e67124468cffa5284870c62vandwalle int getAllowScansWithTraffic(); 156d524c78d9358e2fa1e67124468cffa5284870c62vandwalle 15744a4668b4599a1284f4c2011b1ab4bf90b9b4ab6Samuel Tan boolean setEnableAutoJoinWhenAssociated(boolean enabled); 158e8de06d2feb6680df15c1473fb72efb214ced744xinhe boolean getEnableAutoJoinWhenAssociated(); 159e8de06d2feb6680df15c1473fb72efb214ced744xinhe 16074638cdb31a10fa6d013744d201bb12465dff3eaRandy Pan void enableWifiConnectivityManager(boolean enabled); 16174638cdb31a10fa6d013744d201bb12465dff3eaRandy Pan 1624eeecb25509f91ac7a6e2cde76dac782fbec5360vandwalle WifiConnectionStatistics getConnectionStatistics(); 16393e4192c06a28f37bc1c16b280fbd22c735b5c92vandwalle 16493e4192c06a28f37bc1c16b280fbd22c735b5c92vandwalle void disableEphemeralNetwork(String SSID); 165f1fb39763d87dabe254b6ed64ac8f20145035bc0Stuart Scott 166f1fb39763d87dabe254b6ed64ac8f20145035bc0Stuart Scott void factoryReset(); 1677094d22022c8e0c6ad71920b101434dded8a276eSanket Padawe 1687094d22022c8e0c6ad71920b101434dded8a276eSanket Padawe Network getCurrentNetwork(); 169ffe0abf103ead1ca63ff9ae4807e0b973b1d39dcRoshan Pius 170ffe0abf103ead1ca63ff9ae4807e0b973b1d39dcRoshan Pius byte[] retrieveBackupData(); 171ffe0abf103ead1ca63ff9ae4807e0b973b1d39dcRoshan Pius 172ffe0abf103ead1ca63ff9ae4807e0b973b1d39dcRoshan Pius void restoreBackupData(in byte[] data); 173f9f88b8b20f4fe4e0c7b2c22c1f0d4d0a36f2217Roshan Pius 174f9f88b8b20f4fe4e0c7b2c22c1f0d4d0a36f2217Roshan Pius void restoreSupplicantBackupData(in byte[] supplicantData, in byte[] ipConfigData); 1759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 177