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 ClassesModifier and TypeClassDescriptionstatic classShadow ofPowerManager.LowPowerStandbyPortsLockto allow testing state.static class -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAllowedInLowPowerStandby(String feature) protected voidaddThermalStatusListener(Object listener) This function adds a listener for thermal status change.static voidClears most recent recorded wakelock.booleanGets the value set bysetAdaptivePowerSaveEnabled(boolean).protected DurationReturns the current battery life remaining estimate.protected intThis function returns the current thermal status of the device.static PowerManager.WakeLockRetrieves the most recent wakelock registered by the applicationprotected intReturns how location features should behave when battery saver is on.Returns the list of reasons for each reboot, in chronological order.com.google.common.collect.ImmutableSet<Object>This function gets listeners for thermal status change.intReturns the number of timesreboot(String)was called.protected booleanisAllowedInLowPowerStandby(String feature) protected booleanReturns true by default, or the value specified viasetAmbientDisplayAvailable(boolean).protected booleanReturns true ifsuppressAmbientDisplay(String, boolean)has been called with any token.protected booleanReturns whether the current battery life remaining estimate is personalized based on device usage history or not.protected booleanprotected booleanprotected booleanprotected booleanisIgnoringBatteryOptimizations(String packageName) protected booleanprotected booleanprotected booleanprotected booleanprotected booleanprotected booleanReturns last value specified insetIsRebootingUserspaceSupported(boolean)orfalseby default.protected booleanprotected booleanisWakeLockLevelSupported(int level) protected Objectprotected PowerManager.WakeLocknewWakeLock(int flags, String tag) protected voidprotected 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().voidsetExemptFromLowPowerStandby(boolean exemptFromLowPowerStandby) 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.voidsetIsLightDeviceIdleMode(boolean lightDeviceIdleMode) Sets the value returned byisLightDeviceIdleMode().voidsetIsPowerSaveMode(boolean powerSaveMode) voidsetIsRebootingUserspaceSupported(boolean supported) Sets the value returned byisRebootingUserspaceSupported().voidsetIsScreenOn(boolean screenOn) Deprecated.UseturnScreenOn(boolean)instead.voidsetIsWakeLockLevelSupported(int level, boolean supported) voidsetLocationPowerSaveMode(int locationMode) Sets the value returned bygetLocationPowerSaveMode()when battery saver is on.protected voidsetLowPowerStandbyEnabled(boolean lowPowerStandbyEnabled) voidsetLowPowerStandbySupported(boolean lowPowerStandbySupported) 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.UseturnScreenOn(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. May containnull. -
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). -
isLowPowerStandbySupported
-
setLowPowerStandbySupported
public void setLowPowerStandbySupported(boolean lowPowerStandbySupported) -
isLowPowerStandbyEnabled
-
setLowPowerStandbyEnabled
-
isAllowedInLowPowerStandby
-
addAllowedInLowPowerStandby
-
isExemptFromLowPowerStandby
-
setExemptFromLowPowerStandby
public void setExemptFromLowPowerStandby(boolean exemptFromLowPowerStandby) -
newLowPowerStandbyPortsLock
@Implementation(minSdk=34) protected Object newLowPowerStandbyPortsLock(List<PowerManager.LowPowerStandbyPortDescription> ports)
-
turnScreenOn(boolean)instead.