WifiHelper
public
class
WifiHelper
extends Object
implements
IWifiHelper
| java.lang.Object
|
| ↳ |
com.android.tradefed.device.WifiHelper
|
Helper class for manipulating wifi services on device.
Summary
Public methods |
boolean
|
addOpenNetwork(String ssid)
Adds the open security network identified by ssid.
|
boolean
|
addOpenNetwork(String ssid, boolean scanSsid)
Adds the open security network identified by ssid.
|
boolean
|
addWpaPskNetwork(String ssid, String psk)
Adds the WPA-PSK security network identified by ssid.
|
boolean
|
addWpaPskNetwork(String ssid, String psk, boolean scanSsid)
Adds the WPA-PSK security network identified by ssid.
|
boolean
|
checkConnectivity(String urlToCheck)
Checks connectivity by sending HTTP request to the given url.
|
void
|
cleanUp()
Clean up the resources and the wifi helper packaged install.
|
boolean
|
connectToNetwork(String ssid, String psk, String urlToCheck)
Connects to a wifi network and check connectivity.
|
IWifiHelper.WifiConnectionResult
|
connectToNetwork(String ssid, String psk, String urlToCheck, boolean scanSsid, String defaultType)
Connects to a wifi network and check connectivity.
|
IWifiHelper.WifiConnectionResult
|
connectToNetwork(String ssid, String psk, String urlToCheck, boolean scanSsid)
Connects to a wifi network and check connectivity.
|
boolean
|
disableWifi()
Disables wifi state on device.
|
boolean
|
disconnectFromNetwork()
Disconnect from the current wifi network and disable wifi.
|
boolean
|
enableWifi()
Enables wifi state on device.
|
static
File
|
extractWifiUtilApk()
Helper method to extract the wifi util apk from the classpath
|
String
|
getBSSID()
Gets the basic service set identifier (BSSID) of the currently access point.
|
String
|
getIpAddress()
Gets the IP address associated with the wifi interface.
|
String
|
getSSID()
Gets the service set identifier of the currently connected network.
|
Map<String, String>
|
getWifiInfo()
Gets the current wifi connection information.
|
boolean
|
hasValidIp()
|
boolean
|
isWifiEnabled()
Check if wifi is currently enabled.
|
boolean
|
removeAllNetworks()
Removes all known networks.
|
boolean
|
startMonitor(long interval, String urlToCheck)
Starts network connectivity monitoring.
|
List<Long>
|
stopMonitor()
Stops network connectivity monitoring.
|
boolean
|
waitForIp(long timeout)
Wait until an ip address is assigned to wifi adapter.
|
boolean
|
waitForWifiDisabled(long timeout)
Wait for isWifiEnabled() to be false.
|
boolean
|
waitForWifiDisabled()
Wait for isWifiEnabled() to be false with a default timeout.
|
boolean
|
waitForWifiEnabled(long timeout)
Wait for isWifiEnabled() to be true.
|
boolean
|
waitForWifiEnabled()
Wait for isWifiEnabled() to be true with a default timeout.
|
boolean
|
waitForWifiState(WifiState... expectedStates)
Waits until one of the expected wifi states occurs.
|
Constants
INSTRUMENTATION_PKG
public static final String INSTRUMENTATION_PKG
Constant Value:
"com.android.tradefed.utils.wifi"
Public constructors
WifiHelper
public WifiHelper (ITestDevice device)
| Parameters |
device |
ITestDevice |
WifiHelper
public WifiHelper (ITestDevice device,
String wifiUtilApkPath)
| Parameters |
device |
ITestDevice |
wifiUtilApkPath |
String |
WifiHelper
public WifiHelper (ITestDevice device,
String wifiUtilApkPath,
boolean doSetup)
Alternative constructor that can skip the setup of the wifi apk.
| Parameters |
device |
ITestDevice |
wifiUtilApkPath |
String |
doSetup |
boolean |
WifiHelper
public WifiHelper (ITestDevice device,
String wifiUtilApkPath,
boolean doSetup,
boolean useV2)
Constructor to specify whether to use new wifi helper v2. v2 operations do not need to
install the wifi util apk.
| Parameters |
device |
ITestDevice |
wifiUtilApkPath |
String |
doSetup |
boolean |
useV2 |
boolean |
Public methods
addOpenNetwork
public boolean addOpenNetwork (String ssid)
Adds the open security network identified by ssid.
To connect to any wifi network, a network profile must be created in wpa_supplicant
configuration first. This will call wpa_cli to add the open security network identified by
ssid.
| Parameters |
ssid |
String: the ssid of network to add. |
| Returns |
boolean |
true if network was added successfully, false otherwise. |
addOpenNetwork
public boolean addOpenNetwork (String ssid,
boolean scanSsid)
Adds the open security network identified by ssid.
To connect to any wifi network, a network profile must be created in wpa_supplicant
configuration first. This will call wpa_cli to add the open security network identified by
ssid.
| Parameters |
ssid |
String: the ssid of network to add. |
scanSsid |
boolean: whether to scan for hidden SSID for this network. |
| Returns |
boolean |
true if network was added successfully, false otherwise. |
addWpaPskNetwork
public boolean addWpaPskNetwork (String ssid,
String psk)
Adds the WPA-PSK security network identified by ssid.
| Parameters |
ssid |
String: the ssid of network to add. |
psk |
String: the WPA-PSK passphrase to use |
| Returns |
boolean |
true if network was added successfully, false otherwise. |
addWpaPskNetwork
public boolean addWpaPskNetwork (String ssid,
String psk,
boolean scanSsid)
Adds the WPA-PSK security network identified by ssid.
| Parameters |
ssid |
String: the ssid of network to add. |
psk |
String: the WPA-PSK passphrase to use |
scanSsid |
boolean: whether to scan for hidden SSID for this network. |
| Returns |
boolean |
true if network was added successfully, false otherwise. |
checkConnectivity
public boolean checkConnectivity (String urlToCheck)
Checks connectivity by sending HTTP request to the given url.
| Parameters |
urlToCheck |
String: a destination url for a HTTP request check |
| Returns |
boolean |
true if the device pass connectivity check. |
cleanUp
public void cleanUp ()
Clean up the resources and the wifi helper packaged install. This should only be called when
Wifi is not needed anymore for the invocation since the device would lose the wifi connection
when the helper is uninstalled.
connectToNetwork
public boolean connectToNetwork (String ssid,
String psk,
String urlToCheck)
Connects to a wifi network and check connectivity.
| Parameters |
ssid |
String: the ssid of network to connect |
psk |
String: the WPA-PSK passphrase to use. This can be null. |
urlToCheck |
String: a destination url for a HTTP request check |
| Returns |
boolean |
true if the device pass connectivity check. |
connectToNetwork
public IWifiHelper.WifiConnectionResult connectToNetwork (String ssid,
String psk,
String urlToCheck,
boolean scanSsid,
String defaultType)
Connects to a wifi network and check connectivity.
| Parameters |
ssid |
String: the ssid of network to connect |
psk |
String: the WPA-PSK passphrase to use. This can be null. |
urlToCheck |
String: a destination url for a HTTP request check |
scanSsid |
boolean: whether to scan for hidden SSID for this network |
defaultType |
String: Default network type to fall back to if ssid's network type is not
determined |
connectToNetwork
public IWifiHelper.WifiConnectionResult connectToNetwork (String ssid,
String psk,
String urlToCheck,
boolean scanSsid)
Connects to a wifi network and check connectivity.
| Parameters |
ssid |
String: the ssid of network to connect |
psk |
String: the WPA-PSK passphrase to use. This can be null. |
urlToCheck |
String: a destination url for a HTTP request check |
scanSsid |
boolean: whether to scan for hidden SSID for this network |
disableWifi
public boolean disableWifi ()
Disables wifi state on device.
| Returns |
boolean |
true if wifi was disabled successfully |
disconnectFromNetwork
public boolean disconnectFromNetwork ()
Disconnect from the current wifi network and disable wifi.
| Returns |
boolean |
true if the operation succeeded. |
enableWifi
public boolean enableWifi ()
Enables wifi state on device.
| Returns |
boolean |
true if wifi was enabled successfully |
public static File extractWifiUtilApk ()
Helper method to extract the wifi util apk from the classpath
getBSSID
public String getBSSID ()
Gets the basic service set identifier (BSSID) of the currently access point.
getIpAddress
public String getIpAddress ()
Gets the IP address associated with the wifi interface. Returns null if there
was a failure retrieving ip address.
getSSID
public String getSSID ()
Gets the service set identifier of the currently connected network.
getWifiInfo
public Map<String, String> getWifiInfo ()
Gets the current wifi connection information.
This includes SSID, BSSID, IP address, link speed, and RSSI.
| Returns |
Map<String, String> |
a map containing wifi connection information. |
hasValidIp
public boolean hasValidIp ()
isWifiEnabled
public boolean isWifiEnabled ()
Check if wifi is currently enabled.
removeAllNetworks
public boolean removeAllNetworks ()
Removes all known networks.
startMonitor
public boolean startMonitor (long interval,
String urlToCheck)
Starts network connectivity monitoring.
| Parameters |
interval |
long: interval between connectivity checks. |
urlToCheck |
String: a URL to check connectivity with. |
| Returns |
boolean |
true if the operation succeeded. |
stopMonitor
public List<Long> stopMonitor ()
Stops network connectivity monitoring.
This also returns the latency history since the last IWifiHelper.startMonitor(long,String) call.
| Returns |
List<Long> |
the latency history. |
waitForIp
public boolean waitForIp (long timeout)
Wait until an ip address is assigned to wifi adapter.
| Parameters |
timeout |
long: how long to wait |
| Returns |
boolean |
true if an ip address is assigned before timeout, false
otherwise |
waitForWifiDisabled
public boolean waitForWifiDisabled (long timeout)
Wait for isWifiEnabled() to be false.
| Parameters |
timeout |
long: time in ms to wait |
| Returns |
boolean |
true if wifi was disabled before timeout, false otherwise. |
waitForWifiDisabled
public boolean waitForWifiDisabled ()
Wait for isWifiEnabled() to be false with a default timeout.
| Returns |
boolean |
true if wifi was disabled before timeout, false otherwise. |
waitForWifiEnabled
public boolean waitForWifiEnabled (long timeout)
Wait for isWifiEnabled() to be true.
| Parameters |
timeout |
long: time in ms to wait |
| Returns |
boolean |
true if wifi was enabled before timeout, false otherwise. |
waitForWifiEnabled
public boolean waitForWifiEnabled ()
Wait for isWifiEnabled() to be true with a default timeout.
| Returns |
boolean |
true if wifi was enabled before timeout, false otherwise. |
waitForWifiState
public boolean waitForWifiState (WifiState... expectedStates)
Waits until one of the expected wifi states occurs.
| Parameters |
expectedStates |
WifiState: one or more wifi states to expect |
| Returns |
boolean |
true if the one of the expected states occurred. false if
none of the states occurred before timeout is reached |