Skip to content

Most visited

Recently visited

navigation

HardwarePropertiesManager

public class HardwarePropertiesManager
extends Object

java.lang.Object
   ↳ android.os.HardwarePropertiesManager


The HardwarePropertiesManager class provides a mechanism of accessing hardware state of a device: CPU, GPU and battery temperatures, CPU usage per core, fan speed, etc.

Instances of this class must be obtained using Context.getSystemService(Class) with the argument HardwarePropertiesManager.class or Context.getSystemService(String) with the argument Context.HARDWARE_PROPERTIES_SERVICE.

Summary

Constants

int DEVICE_TEMPERATURE_BATTERY

Temperature of battery in Celsius.

int DEVICE_TEMPERATURE_CPU

Temperature of CPUs in Celsius.

int DEVICE_TEMPERATURE_GPU

Temperature of GPUs in Celsius.

int DEVICE_TEMPERATURE_SKIN

Temperature of device skin in Celsius.

int TEMPERATURE_CURRENT

Get current temperature.

int TEMPERATURE_SHUTDOWN

Get shutdown temperature threshold.

int TEMPERATURE_THROTTLING

Get throttling temperature threshold.

int TEMPERATURE_THROTTLING_BELOW_VR_MIN

Get throttling temperature threshold above which minimum clockrates for VR mode will not be met.

float UNDEFINED_TEMPERATURE

Undefined temperature constant.

Public methods

CpuUsageInfo[] getCpuUsages()

Return an array of CPU usage info for each core.

float[] getDeviceTemperatures(int type, int source)

Return an array of device temperatures in Celsius.

float[] getFanSpeeds()

Return an array of fan speeds in RPM.

Inherited methods

From class java.lang.Object

Constants

DEVICE_TEMPERATURE_BATTERY

added in API level 24
int DEVICE_TEMPERATURE_BATTERY

Temperature of battery in Celsius.

Constant Value: 2 (0x00000002)

DEVICE_TEMPERATURE_CPU

added in API level 24
int DEVICE_TEMPERATURE_CPU

Temperature of CPUs in Celsius.

Constant Value: 0 (0x00000000)

DEVICE_TEMPERATURE_GPU

added in API level 24
int DEVICE_TEMPERATURE_GPU

Temperature of GPUs in Celsius.

Constant Value: 1 (0x00000001)

DEVICE_TEMPERATURE_SKIN

added in API level 24
int DEVICE_TEMPERATURE_SKIN

Temperature of device skin in Celsius.

Constant Value: 3 (0x00000003)

TEMPERATURE_CURRENT

added in API level 24
int TEMPERATURE_CURRENT

Get current temperature.

Constant Value: 0 (0x00000000)

TEMPERATURE_SHUTDOWN

added in API level 24
int TEMPERATURE_SHUTDOWN

Get shutdown temperature threshold.

Constant Value: 2 (0x00000002)

TEMPERATURE_THROTTLING

added in API level 24
int TEMPERATURE_THROTTLING

Get throttling temperature threshold.

Constant Value: 1 (0x00000001)

TEMPERATURE_THROTTLING_BELOW_VR_MIN

added in API level 24
int TEMPERATURE_THROTTLING_BELOW_VR_MIN

Get throttling temperature threshold above which minimum clockrates for VR mode will not be met.

Constant Value: 3 (0x00000003)

UNDEFINED_TEMPERATURE

added in API level 24
float UNDEFINED_TEMPERATURE

Undefined temperature constant.

Constant Value: -3.4028235E38

Public methods

getCpuUsages

added in API level 24
CpuUsageInfo[] getCpuUsages ()

Return an array of CPU usage info for each core.

Returns
CpuUsageInfo[] an array of CpuUsageInfo for each core. Return null for each unplugged core. Empty if CPU usage is not supported on this system.

Throws
SecurityException if something other than the device owner or the current VR service tries to retrieve information provided by this service.

getDeviceTemperatures

added in API level 24
float[] getDeviceTemperatures (int type, 
                int source)

Return an array of device temperatures in Celsius.

Parameters
type int: type of requested device temperature, one of DEVICE_TEMPERATURE_CPU, DEVICE_TEMPERATURE_GPU, DEVICE_TEMPERATURE_BATTERY or DEVICE_TEMPERATURE_SKIN.

source int: source of requested device temperature, one of TEMPERATURE_CURRENT, TEMPERATURE_THROTTLING, TEMPERATURE_THROTTLING_BELOW_VR_MIN or TEMPERATURE_SHUTDOWN.

Returns
float[] an array of requested float device temperatures. Temperature equals to UNDEFINED_TEMPERATURE if undefined. Empty if platform doesn't provide the queried temperature.

This value will never be null.

Throws
SecurityException if something other than the device owner or the current VR service tries to retrieve information provided by this service.

getFanSpeeds

added in API level 24
float[] getFanSpeeds ()

Return an array of fan speeds in RPM.

Returns
float[] an array of float fan speeds in RPM. Empty if there are no fans or fan speed is not supported on this system.

This value will never be null.

Throws
SecurityException if something other than the device owner or the current VR service tries to retrieve information provided by this service.
This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a one-minute survey?
Help us improve Android tools and documentation.