我想检测android中的特定应用程序的内存和CPU消耗(以编程方式),任何人都可以帮助我。我尝试过TOP方法,但我想要一个替代方法。
任何帮助将不胜感激,谢谢:)
如果你想在你的应用程序中追踪你的内存使用情况,那么就有qazxsw poi API。
可以使用ActivityManager.getMemoryInfo() API跟踪Cpu使用情况。
有关内容使用情况的更多信息,请在应用程序外部使用CpuStatsCollector获取更具体的内存使用情况统计信息。例如,有adb shell dumpsys meminfo <package_name|pid> [-d]
进程的命令:
com.google.android.apps.maps
这给你一个以下输出:
adb shell dumpsys meminfo com.google.android.apps.maps -d
(输出修剪)更多关于它** MEMINFO in pid 18227 [com.google.android.apps.maps] **
Pss Private Private Swapped Heap Heap Heap
Total Dirty Clean Dirty Size Alloc Free
------ ------ ------ ------ ------ ------ ------
Native Heap 10468 10408 0 0 20480 14462 6017
Dalvik Heap 34340 33816 0 0 62436 53883 8553
Dalvik Other 972 972 0 0
Stack 1144 1144 0 0
Gfx dev 35300 35300 0 0
Other dev 5 0 4 0
.so mmap 1943 504 188 0
.apk mmap 598 0 136 0
.ttf mmap 134 0 68 0
.dex mmap 3908 0 3904 0
.oat mmap 1344 0 56 0
.art mmap 2037 1784 28 0
Other mmap 30 4 0 0
EGL mtrack 73072 73072 0 0
GL mtrack 51044 51044 0 0
Unknown 185 184 0 0
TOTAL 216524 208232 4384 0 82916 68345 14570
跟踪现代操作系统上的内存使用是一项非常复杂的任务。有关更多信息,请参阅此here。