android - 在我的 Android 设备上收集热数据的最佳方式是什么?
问题描述
我正在尝试在我的 Android 平板电脑(运行 Android 9)上收集热数据,同时运行各种应用程序/基准测试等。具体来说,我希望能够在我的平板电脑上运行其他应用程序时测量和记录核心 CPU 温度和频率。我想收集 CPU 温度和频率,因为我想知道我的设备上的热节流程度。那里有很多很棒的应用程序,但我找不到一个可以在运行不同的应用程序(例如 Geekbench 基准测试)时记录信息的应用程序。这是我迄今为止尝试过的:
我已经尝试从 /sys/class/thermal 中的热区收集信息,但无法理解供应商给出的名称(我的供应商是 MTK)。
我尝试过使用 CpuFloat。这个应用程序在设备显示屏上提供了一个很好的覆盖,包括所有 CPU 频率(实时更新)以及处理器的核心温度。唯一的问题是 CpuFloat 不会随着时间的推移记录数据,我不得不定期截取屏幕截图来跟踪温度。这真的很乏味,因为我必须在整个基准测试中坐下来记录温度。
我已经考虑开发一个跟踪这些信息的应用程序,但如果可能的话,我想通过 adb 或现有应用程序来跟踪它。任何帮助/建议将不胜感激!
这是我迄今为止尝试过的(使用 Windows 10 上的批处理脚本从热区收集信息)
@Echo off
Echo.
mkdir core_freq
mkdir core_temp
SET tpath=/sys/devices/system/cpu
:inf_iterate
SET counter=0
timeout 1
Echo Recording Thermal Data...
adb shell cat /sys/class/thermal/thermal_zone7/temp >> core_temp/cpu_temp.txt
:Loop
adb shell cat %tpath%/cpu%counter%/cpufreq/cpuinfo_cur_freq >> core_freq/core_%counter%.txt
SET /A counter+=1
if %counter%==4 goto inf_iterate
goto Loop
解决方案
推荐阅读
- atom-editor - 为什么 Atom 编辑器停止为长行代码着色?
- javascript - Firestore:更新不同的嵌套对象
- excel - Excel VBA:无法访问表单控件?
- html - R网页抓取困难--为什么我不能从一个多页的网站上得到所有的listing价格?
- python - 异步长时间运行的操作 API 调用
- docker - 如何在不使用 GPU 的情况下使用 nvidia-docker?
- swift - 如何在我的 for 循环之外执行代码(需要等到循环完成从 Firebase 数据库中检索数据)?
- python - 如何通过将基类传递给子类的 `__init__()` 来实例化子类?
- java - 为什么 Thread.interrupted() 不能用 Thread.currentThread().interrupted 调用?
- asp.net-mvc - 如何根据ACL设置网站权限