Package org.robolectric.shadows
Class ShadowPowerManager
java.lang.Object
org.robolectric.shadows.ShadowPowerManager
@Implements(value=android.os.PowerManager.class, looseSignatures=true) public class ShadowPowerManager extends Object
Shadow of PowerManager
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classShadowPowerManager.ShadowWakeLock -
Constructor Summary
Constructors Constructor Description ShadowPowerManager() -
Method Summary
Modifier and Type Method Description protected voidaddThermalStatusListener(Object listener)This function adds a listener for thermal status change.static voidclearWakeLocks()Clears most recent recorded wakelock.booleangetAdaptivePowerSaveEnabled()Gets the value set bysetAdaptivePowerSaveEnabled(boolean).protected DurationgetBatteryDischargePrediction()Returns the current battery life remaining estimate.protected intgetCurrentThermalStatus()This function returns the current thermal status of the device.static PowerManager.WakeLockgetLatestWakeLock()Retrieves the most recent wakelock registered by the applicationprotected intgetLocationPowerSaveMode()Returns how location features should behave when battery saver is on.com.google.common.collect.ImmutableList<String>getRebootReasons()Returns the list of reasons for each reboot, in chronological order.com.google.common.collect.ImmutableSet<Object>getThermalStatusListeners()This function gets listeners for thermal status change.intgetTimesRebooted()Returns the number of timesreboot(String)was called.protected booleanisAmbientDisplayAvailable()Returns true by default, or the value specified viasetAmbientDisplayAvailable(boolean).protected booleanisAmbientDisplaySuppressed()Returns true ifsuppressAmbientDisplay(String, boolean)has been called with any token.protected booleanisBatteryDischargePredictionPersonalized()Returns whether the current battery life remaining estimate is personalized based on device usage history or not.protected booleanisDeviceIdleMode()protected booleanisDeviceLightIdleMode()protected booleanisIgnoringBatteryOptimizations(String packageName)protected booleanisInteractive()protected booleanisLightDeviceIdleMode()protected booleanisPowerSaveMode()protected booleanisRebootingUserspaceSupported()Returns last value specified insetIsRebootingUserspaceSupported(boolean)orfalseby default.protected booleanisScreenOn()protected booleanisWakeLockLevelSupported(int level)protected PowerManager.WakeLocknewWakeLock(int flags, String tag)protected voidreboot(String reason)protected voidremoveThermalStatusListener(Object listener)This function removes a listener for thermal status change.static voidreset()Discards the most recentPowerManager.WakeLocksprotected booleansetAdaptivePowerSaveEnabled(boolean enabled)Sets whether Adaptive Power Saver is enabled.voidsetAmbientDisplayAvailable(boolean available)Sets the value returned byisAmbientDisplayAvailable().protected voidsetBatteryDischargePrediction(Duration timeRemaining, boolean isPersonalized)Differs from real implementation as device charging state is not checked.voidsetCurrentThermalStatus(int thermalStatus)Sets the value returned bygetCurrentThermalStatus().voidsetIgnoringBatteryOptimizations(String packageName, boolean value)voidsetIsDeviceIdleMode(boolean isDeviceIdleMode)Sets the value returned byisDeviceIdleMode().voidsetIsDeviceLightIdleMode(boolean lightDeviceIdleMode)Sets the value returned byisDeviceLightIdleMode().voidsetIsInteractive(boolean interactive)Deprecated.PreferturnScreenOn(boolean)instead.voidsetIsLightDeviceIdleMode(boolean lightDeviceIdleMode)Sets the value returned byisLightDeviceIdleMode().voidsetIsPowerSaveMode(boolean powerSaveMode)voidsetIsRebootingUserspaceSupported(boolean supported)Sets the value returned byisRebootingUserspaceSupported().voidsetIsScreenOn(boolean screenOn)Deprecated.UsesetIsInteractive(boolean)instead.voidsetIsWakeLockLevelSupported(int level, boolean supported)voidsetLocationPowerSaveMode(int locationMode)Sets the value returned bygetLocationPowerSaveMode()when battery saver is on.protected voidsuppressAmbientDisplay(String token, boolean suppress)If true, suppress the device's ambient display.voidturnScreenOn(boolean screenOn)Emulates turning the screen on/off if the screen is not already on/off.
-
Constructor Details
-
ShadowPowerManager
public ShadowPowerManager()
-
-
Method Details
-
newWakeLock
-
isScreenOn
-
setIsScreenOn
Deprecated.UsesetIsInteractive(boolean)instead. -
isInteractive
-
setIsInteractive
Deprecated.PreferturnScreenOn(boolean)instead. -
turnScreenOn
public void turnScreenOn(boolean screenOn)Emulates turning the screen on/off if the screen is not already on/off. -
isPowerSaveMode
-
setIsPowerSaveMode
public void setIsPowerSaveMode(boolean powerSaveMode) -
isWakeLockLevelSupported
-
setIsWakeLockLevelSupported
public void setIsWakeLockLevelSupported(int level, boolean supported) -
isDeviceIdleMode
- Returns:
- false by default, or the value specified via
setIsDeviceIdleMode(boolean)
-
setIsDeviceIdleMode
public void setIsDeviceIdleMode(boolean isDeviceIdleMode)Sets the value returned byisDeviceIdleMode(). -
isLightDeviceIdleMode
- Returns:
- false by default, or the value specified via
setIsLightDeviceIdleMode(boolean)
-
setIsLightDeviceIdleMode
public void setIsLightDeviceIdleMode(boolean lightDeviceIdleMode)Sets the value returned byisLightDeviceIdleMode(). -
isDeviceLightIdleMode
-
setIsDeviceLightIdleMode
public void setIsDeviceLightIdleMode(boolean lightDeviceIdleMode)Sets the value returned byisDeviceLightIdleMode(). -
getLocationPowerSaveMode
Returns how location features should behave when battery saver is on. When battery saver is off, this will always return#LOCATION_MODE_NO_CHANGE. -
setLocationPowerSaveMode
public void setLocationPowerSaveMode(int locationMode)Sets the value returned bygetLocationPowerSaveMode()when battery saver is on. -
getCurrentThermalStatus
This function returns the current thermal status of the device. -
addThermalStatusListener
This function adds a listener for thermal status change. -
getThermalStatusListeners
This function gets listeners for thermal status change. -
removeThermalStatusListener
This function removes a listener for thermal status change. -
setCurrentThermalStatus
public void setCurrentThermalStatus(int thermalStatus)Sets the value returned bygetCurrentThermalStatus(). -
reset
Discards the most recentPowerManager.WakeLocks -
getLatestWakeLock
Retrieves the most recent wakelock registered by the application- Returns:
- Most recent wake lock.
-
clearWakeLocks
public static void clearWakeLocks()Clears most recent recorded wakelock. -
isIgnoringBatteryOptimizations
-
setIgnoringBatteryOptimizations
-
setBatteryDischargePrediction
@Implementation(minSdk=31) protected void setBatteryDischargePrediction(Duration timeRemaining, boolean isPersonalized)Differs from real implementation as device charging state is not checked.- Parameters:
timeRemaining- The time remaining as aDuration.isPersonalized- true if personalized based on device usage history, false otherwise.
-
getBatteryDischargePrediction
Returns the current battery life remaining estimate.Differs from real implementation as the time that
setBatteryDischargePrediction(java.time.Duration, boolean)was called is not taken into account.- Returns:
- The estimated battery life remaining as a
Duration. Will benullif the prediction has not been set.
-
isBatteryDischargePredictionPersonalized
Returns whether the current battery life remaining estimate is personalized based on device usage history or not. This value does not take a device's powered or charging state into account.- Returns:
- A boolean indicating if the current discharge estimate is personalized based on historical device usage or not.
-
reboot
-
getTimesRebooted
public int getTimesRebooted()Returns the number of timesreboot(String)was called. -
getRebootReasons
Returns the list of reasons for each reboot, in chronological order. -
setAmbientDisplayAvailable
public void setAmbientDisplayAvailable(boolean available)Sets the value returned byisAmbientDisplayAvailable(). -
setIsRebootingUserspaceSupported
public void setIsRebootingUserspaceSupported(boolean supported)Sets the value returned byisRebootingUserspaceSupported(). -
isAmbientDisplayAvailable
Returns true by default, or the value specified viasetAmbientDisplayAvailable(boolean). -
suppressAmbientDisplay
If true, suppress the device's ambient display. Ambient display is defined as anything visible on the display whenPowerManager.isInteractive()is false.- Parameters:
token- An identifier for the ambient display suppression.suppress- Iftrue, suppresses the ambient display. Otherwise, unsuppresses the ambient display for the given token.
-
isAmbientDisplaySuppressed
Returns true ifsuppressAmbientDisplay(String, boolean)has been called with any token. -
isRebootingUserspaceSupported
Returns last value specified insetIsRebootingUserspaceSupported(boolean)orfalseby default. -
setAdaptivePowerSaveEnabled
Sets whether Adaptive Power Saver is enabled.This has no effect, other than the value of
getAdaptivePowerSaveEnabled()is changed, which can be used to ensure this method is called correctly.- Returns:
- true if the value has changed.
-
getAdaptivePowerSaveEnabled
public boolean getAdaptivePowerSaveEnabled()Gets the value set bysetAdaptivePowerSaveEnabled(boolean).
-