Package org.robolectric.shadows
Class ShadowWifiManager
- java.lang.Object
-
- org.robolectric.shadows.ShadowWifiManager
-
@Implements(value=android.net.wifi.WifiManager.class, looseSignatures=true) public class ShadowWifiManager extends java.lang.ObjectShadow forWifiManager.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classShadowWifiManager.ShadowMulticastLockstatic classShadowWifiManager.ShadowWifiLockstatic classShadowWifiManager.WifiUsabilityScoreClass to record scores passed to WifiManager#updateWifiUsabilityScore
-
Constructor Summary
Constructors Constructor Description ShadowWifiManager()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected intaddNetwork(android.net.wifi.WifiConfiguration config)protected voidaddOnWifiUsabilityStatsListener(java.lang.Object executorObject, java.lang.Object listenerObject)protected static intcalculateSignalLevel(int rssi, int numLevels)voidclearUsabilityScores()Clears wifi usability scores previous passed toWifiManager.updateWifiUsabilityScore(int, int, int)protected voidconnect(int networkId, android.net.wifi.WifiManager.ActionListener listener)protected voidconnect(android.net.wifi.WifiConfiguration wifiConfiguration, android.net.wifi.WifiManager.ActionListener listener)protected android.net.wifi.WifiManager.MulticastLockcreateMulticastLock(java.lang.String tag)protected android.net.wifi.WifiManager.WifiLockcreateWifiLock(int lockType, java.lang.String tag)protected android.net.wifi.WifiManager.WifiLockcreateWifiLock(java.lang.String tag)protected booleandisableNetwork(int netId)protected booleanenableNetwork(int netId, boolean attemptConnect)intgetActiveLockCount()Returns the number of WifiLocks and MulticastLocks that are currently acquired.protected java.util.List<android.net.wifi.WifiConfiguration>getConfiguredNetworks()protected android.net.wifi.WifiInfogetConnectionInfo()protected android.net.DhcpInfogetDhcpInfo()android.util.Pair<java.lang.Integer,java.lang.Boolean>getLastEnabledNetwork()protected java.util.List<android.net.wifi.WifiConfiguration>getPrivilegedConfiguredNetworks()protected java.util.List<android.net.wifi.ScanResult>getScanResults()java.util.List<ShadowWifiManager.WifiUsabilityScore>getUsabilityScores()Returns wifi usability scores previous passed toWifiManager.updateWifiUsabilityScore(int, int, int)android.net.wifi.WifiConfigurationgetWifiConfiguration(int netId)protected intgetWifiState()protected booleanis5GHzBandSupported()booleanisNetworkEnabled(int netId)Whether the network is enabled or not.protected booleanisScanAlwaysAvailable()protected booleanisWifiEnabled()voidpostUsabilityStats(int seqNum, boolean isSameBssidAndFreq, WifiUsabilityStatsEntryBuilder statsBuilder)Post Wifi stats to any listeners registered withWifiManager.addOnWifiUsabilityStatsListener(java.util.concurrent.Executor, android.net.wifi.WifiManager.OnWifiUsabilityStatsListener)protected booleanreconnect()protected booleanremoveNetwork(int netId)protected voidremoveOnWifiUsabilityStatsListener(java.lang.Object listenerObject)protected booleansaveConfiguration()voidsetAccessWifiStatePermission(boolean accessWifiStatePermission)voidsetConnectionInfo(android.net.wifi.WifiInfo wifiInfo)Sets the connection info as the providedWifiInfo.voidsetDhcpInfo(android.net.DhcpInfo dhcpInfo)voidsetIs5GHzBandSupported(boolean is5GHzBandSupported)Sets whether 5ghz band is supported.voidsetIsScanAlwaysAvailable(boolean isScanAlwaysAvailable)voidsetScanResults(java.util.List<android.net.wifi.ScanResult> scanResults)static voidsetSignalLevelInPercent(float level)voidsetStartScanSucceeds(boolean succeeds)Sets the return value ofstartScan().voidsetUpdateNetworkPermission(int networkId, boolean hasPermission)Prevents a networkId from being updated using theupdateNetwork(android.net.wifi.WifiConfiguration)method.protected booleansetWifiEnabled(boolean wifiEnabled)protected booleanstartScan()Does nothing and returns the configured success status.protected intupdateNetwork(android.net.wifi.WifiConfiguration config)Adds or updates a network which can later be retrieved withgetWifiConfiguration(int)method.protected voidupdateWifiUsabilityScore(int seqNum, int score, int predictionHorizonSec)booleanwasConfigurationSaved()
-
-
-
Method Detail
-
setWifiEnabled
@Implementation protected boolean setWifiEnabled(boolean wifiEnabled)
-
isWifiEnabled
@Implementation protected boolean isWifiEnabled()
-
getWifiState
@Implementation protected int getWifiState()
-
getConnectionInfo
@Implementation protected android.net.wifi.WifiInfo getConnectionInfo()
-
is5GHzBandSupported
@Implementation(minSdk=21) protected boolean is5GHzBandSupported()
-
setIs5GHzBandSupported
public void setIs5GHzBandSupported(boolean is5GHzBandSupported)
Sets whether 5ghz band is supported.
-
setConnectionInfo
public void setConnectionInfo(android.net.wifi.WifiInfo wifiInfo)
Sets the connection info as the providedWifiInfo.
-
setStartScanSucceeds
public void setStartScanSucceeds(boolean succeeds)
Sets the return value ofstartScan().
-
getScanResults
@Implementation protected java.util.List<android.net.wifi.ScanResult> getScanResults()
-
getConfiguredNetworks
@Implementation protected java.util.List<android.net.wifi.WifiConfiguration> getConfiguredNetworks()
-
getPrivilegedConfiguredNetworks
@Implementation(minSdk=21) protected java.util.List<android.net.wifi.WifiConfiguration> getPrivilegedConfiguredNetworks()
-
addNetwork
@Implementation protected int addNetwork(android.net.wifi.WifiConfiguration config)
-
removeNetwork
@Implementation protected boolean removeNetwork(int netId)
-
updateNetwork
@Implementation protected int updateNetwork(android.net.wifi.WifiConfiguration config)
Adds or updates a network which can later be retrieved withgetWifiConfiguration(int)method. A null {@param config}, or one with a networkId less than 0, or a networkId that had its updatePermission removed using thesetUpdateNetworkPermission(int, boolean)will return -1, which indicates a failure to update.
-
saveConfiguration
@Implementation protected boolean saveConfiguration()
-
enableNetwork
@Implementation protected boolean enableNetwork(int netId, boolean attemptConnect)
-
disableNetwork
@Implementation protected boolean disableNetwork(int netId)
-
createWifiLock
@Implementation protected android.net.wifi.WifiManager.WifiLock createWifiLock(int lockType, java.lang.String tag)
-
createWifiLock
@Implementation protected android.net.wifi.WifiManager.WifiLock createWifiLock(java.lang.String tag)
-
createMulticastLock
@Implementation protected android.net.wifi.WifiManager.MulticastLock createMulticastLock(java.lang.String tag)
-
calculateSignalLevel
@Implementation protected static int calculateSignalLevel(int rssi, int numLevels)
-
startScan
@Implementation protected boolean startScan()
Does nothing and returns the configured success status.That is different from the Android implementation which always returns
trueup to and including Android 8, and eithertrueorfalseon Android 9+.- Returns:
- the value configured by
setStartScanSucceeds(boolean), ortrueif that method was never called.
-
getDhcpInfo
@Implementation protected android.net.DhcpInfo getDhcpInfo()
-
isScanAlwaysAvailable
@Implementation(minSdk=18) protected boolean isScanAlwaysAvailable()
-
connect
@HiddenApi @Implementation(minSdk=19) protected void connect(android.net.wifi.WifiConfiguration wifiConfiguration, android.net.wifi.WifiManager.ActionListener listener)
-
connect
@HiddenApi @Implementation(minSdk=19) protected void connect(int networkId, android.net.wifi.WifiManager.ActionListener listener)
-
reconnect
@Implementation protected boolean reconnect()
-
setSignalLevelInPercent
public static void setSignalLevelInPercent(float level)
-
setAccessWifiStatePermission
public void setAccessWifiStatePermission(boolean accessWifiStatePermission)
-
setUpdateNetworkPermission
public void setUpdateNetworkPermission(int networkId, boolean hasPermission)Prevents a networkId from being updated using theupdateNetwork(android.net.wifi.WifiConfiguration)method. This is to simulate the case where a separate application creates a network, and the Android security model prevents your application from updating it.
-
setScanResults
public void setScanResults(java.util.List<android.net.wifi.ScanResult> scanResults)
-
setDhcpInfo
public void setDhcpInfo(android.net.DhcpInfo dhcpInfo)
-
getLastEnabledNetwork
public android.util.Pair<java.lang.Integer,java.lang.Boolean> getLastEnabledNetwork()
-
isNetworkEnabled
public boolean isNetworkEnabled(int netId)
Whether the network is enabled or not.
-
getActiveLockCount
public int getActiveLockCount()
Returns the number of WifiLocks and MulticastLocks that are currently acquired.
-
wasConfigurationSaved
public boolean wasConfigurationSaved()
-
setIsScanAlwaysAvailable
public void setIsScanAlwaysAvailable(boolean isScanAlwaysAvailable)
-
getWifiConfiguration
public android.net.wifi.WifiConfiguration getWifiConfiguration(int netId)
-
addOnWifiUsabilityStatsListener
@Implementation(minSdk=29) @HiddenApi protected void addOnWifiUsabilityStatsListener(java.lang.Object executorObject, java.lang.Object listenerObject)
-
removeOnWifiUsabilityStatsListener
@Implementation(minSdk=29) @HiddenApi protected void removeOnWifiUsabilityStatsListener(java.lang.Object listenerObject)
-
updateWifiUsabilityScore
@Implementation(minSdk=29) @HiddenApi protected void updateWifiUsabilityScore(int seqNum, int score, int predictionHorizonSec)
-
getUsabilityScores
public java.util.List<ShadowWifiManager.WifiUsabilityScore> getUsabilityScores()
Returns wifi usability scores previous passed toWifiManager.updateWifiUsabilityScore(int, int, int)
-
clearUsabilityScores
public void clearUsabilityScores()
Clears wifi usability scores previous passed toWifiManager.updateWifiUsabilityScore(int, int, int)
-
postUsabilityStats
public void postUsabilityStats(int seqNum, boolean isSameBssidAndFreq, WifiUsabilityStatsEntryBuilder statsBuilder)Post Wifi stats to any listeners registered withWifiManager.addOnWifiUsabilityStatsListener(java.util.concurrent.Executor, android.net.wifi.WifiManager.OnWifiUsabilityStatsListener)
-
-