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 199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.wifi.WifiInfo; 209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.wifi.WifiConfiguration; 219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.wifi.ScanResult; 229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.net.DhcpInfo; 239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 24227bec49157bc496f7c9e8e8f63c12728a448922Irfan Sheriffimport android.os.Messenger; 257e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackbornimport android.os.WorkSource; 267e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn 279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/** 289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Interface that allows controlling and querying Wi-Fi connectivity. 299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * {@hide} 319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinterface IWifiManager 339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{ 349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project List<WifiConfiguration> getConfiguredNetworks(); 355321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int addOrUpdateNetwork(in WifiConfiguration config); 379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean removeNetwork(int netId); 399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean enableNetwork(int netId, boolean disableOthers); 419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean disableNetwork(int netId); 439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean pingSupplicant(); 459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 46e498475b187277309c81b38240c7e71ec049e369Irfan Sheriff void startScan(boolean forceActive); 479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project List<ScanResult> getScanResults(); 499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50e498475b187277309c81b38240c7e71ec049e369Irfan Sheriff void disconnect(); 519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52e498475b187277309c81b38240c7e71ec049e369Irfan Sheriff void reconnect(); 535321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 54e498475b187277309c81b38240c7e71ec049e369Irfan Sheriff void reassociate(); 559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project WifiInfo getConnectionInfo(); 579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean setWifiEnabled(boolean enable); 599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int getWifiEnabledState(); 619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62ed4f28b492da3ff140bbaabbbda798a08c40ea5bIrfan Sheriff void setCountryCode(String country, boolean persist); 635321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 6436f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff void setFrequencyBand(int band, boolean persist); 6536f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff 6636f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff int getFrequencyBand(); 6736f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff 6836f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff boolean isDualBandSupported(); 6936f7413dabfab50699135019ba55151e9227f59dIrfan Sheriff 709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean saveConfiguration(); 719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project DhcpInfo getDhcpInfo(); 739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 747e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn boolean acquireWifiLock(IBinder lock, int lockType, String tag, in WorkSource ws); 757e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn 767e9f4eb2608148436cef36c9969bf8a599b39e72Dianne Hackborn void updateWifiLockWorkSource(IBinder lock, in WorkSource ws); 779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project boolean releaseWifiLock(IBinder lock); 795347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt 80e2d155a51e68694e17fa6e27d05c928215a5dbcfRobert Greenwalt void initializeMulticastFiltering(); 81e2d155a51e68694e17fa6e27d05c928215a5dbcfRobert Greenwalt 8258ff0217a617d5b03d18f0ef532f254f8ba6de2bRobert Greenwalt boolean isMulticastEnabled(); 835347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt 84fc1b15cfbfc5f69235ec1f367abd7a909381cd05Robert Greenwalt void acquireMulticastLock(IBinder binder, String tag); 855347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt 86fc1b15cfbfc5f69235ec1f367abd7a909381cd05Robert Greenwalt void releaseMulticastLock(); 875321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 88ffcea7ae7316ab748a49f5e8f6c6798356f35719Irfan Sheriff void setWifiApEnabled(in WifiConfiguration wifiConfig, boolean enable); 895321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff 905321aef4a22daef6ed01ed48d936cdd82f2e38b7Irfan Sheriff int getWifiApEnabledState(); 919ab518ad793385f8405edf19363fe825fb64f5f8Irfan Sheriff 929ab518ad793385f8405edf19363fe825fb64f5f8Irfan Sheriff WifiConfiguration getWifiApConfiguration(); 9317b232b5b59ab91ab543b87e849583678a000f9bIrfan Sheriff 9417b232b5b59ab91ab543b87e849583678a000f9bIrfan Sheriff void setWifiApConfiguration(in WifiConfiguration wifiConfig); 950d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff 960d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff void startWifi(); 970d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff 980d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff void stopWifi(); 990d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff 1000d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff void addToBlacklist(String bssid); 1010d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff 1020d25534fed91f636def5776ddc4605005bd7471cIrfan Sheriff void clearBlacklist(); 103e04653cbd0e8303eba92088344312b827e6b0babIrfan Sheriff 10407573b32494acbabd21979d8b9584c1ed3f7a6adIrfan Sheriff Messenger getWifiServiceMessenger(); 10507573b32494acbabd21979d8b9584c1ed3f7a6adIrfan Sheriff 10607573b32494acbabd21979d8b9584c1ed3f7a6adIrfan Sheriff Messenger getWifiStateMachineMessenger(); 1074aeca7c5908387bc7efb0785830aea1053264062Irfan Sheriff 1084aeca7c5908387bc7efb0785830aea1053264062Irfan Sheriff String getConfigFile(); 109da6da0907b28d4704aabbdb1bbeb4300954670d1Irfan Sheriff 110da6da0907b28d4704aabbdb1bbeb4300954670d1Irfan Sheriff void captivePortalCheckComplete(); 1119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 113