最近的项目有需求要获取CPU的温度,在网上找了一些资料,基本算是解决了问题:
进入adb shell执行下面的命令:
shell@android:/ $ cat /etc/thermald.conf
这个不同设备得到的结果可能是不已样的,有这样的:
sampling 5000 [tsens_tz_sensor0] sampling 5000 thresholds 10 thresholds_clr 5 actions none action_info 0 [tsens_tz_sensor1] sampling 5000 thresholds 60 thresholds_clr 57 actions none action_info 0 [tsens_tz_sensor2] sampling 5000 thresholds 60 thresholds_clr 57 actions none action_info 0 [tsens_tz_sensor3] sampling 5000 thresholds 60 thresholds_clr 57 actions none action_info 0 [tsens_tz_sensor4] sampling 5000 thresholds 60 thresholds_clr 57 actions none action_info 0 [tsens_tz_sensor5] sampling 5000 thresholds 60 thresholds_clr 57 actions none action_info 0 [tsens_tz_sensor6] sampling 5000 thresholds 60 thresholds_clr 57 actions none action_info 0 [tsens_tz_sensor7] sampling 1500 thresholds 95 120 thresholds_clr 87 115 actions cpu cpu+shutdown action_info 384000 384000+5000 [tsens_tz_sensor8] sampling 1500 thresholds 95 120 thresholds_clr 87 115 actions cpu cpu+shutdown action_info 384000 384000+5000 [tsens_tz_sensor9] sampling 1500 thresholds 95 120 thresholds_clr 87 115 actions cpu cpu+shutdown action_info 384000 384000+5000 [tsens_tz_sensor10] sampling 1500 thresholds 95 120 thresholds_clr 87 115 actions cpu cpu+shutdown action_info 384000 384000+5000 [batt_therm] sampling 1500 thresholds 410 420 430 440 450 thresholds_clr 400 410 420 430 440 actions cpu+lcd+battery cpu+lcd+battery cpu+lcd+battery cpu+lcd+battery cpu+lcd+battery action_info 1350000+192+0 1134000+181+1 1026000+181+1 918000+171+2 810000+171+3
这样的:
sampling 5000 [tsens_tz_sensor0] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000 [tsens_tz_sensor1] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000 [tsens_tz_sensor2] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000 [tsens_tz_sensor3] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000 [tsens_tz_sensor4] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000 [tsens_tz_sensor5] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000 [tsens_tz_sensor6] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000 [tsens_tz_sensor7] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000 [tsens_tz_sensor8] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000 [tsens_tz_sensor9] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000 [tsens_tz_sensor10] sampling 1000 thresholds 60 90 95 100 105 110 115 120 thresholds_clr 57 85 90 95 100 105 110 115 actions cpu cpu cpu cpu cpu cpu cpu shutdown action_info 1512000 1188000 918000 756000 648000 540000 486000 5000
还有压根就不能执行的情况。
个人理解,这个就是对应不同设备的温度传感器。
然后,我们可以看到,有的传感器是针对CPU的。那么到下面的目录:
shell@android:/sys/class/thermal $
你可以找到这些传感器,然后进入对应的传感器,用cat指令可以知道温度了。
shell@android:/sys/class/thermal/thermal_zone7 $ cat temp
## cat type 的话应该可以获取传感器的类型信息。
虽然解决了问题,但是不是很理解。比如,这个是linux系统的通用设置吗? 其他传感器都对应了什么? 等等。