【发布时间】:2013-02-26 00:27:48
【问题描述】:
我想知道应用程序 A 到应用程序 B 的内存消耗情况。我知道本网站上讨论的所有 techniques。但是,它们都不适合我。
我的场景是,我已经实现了一个代码,可以通过 top 命令监控任何特定应用程序的 CPU 消耗。但是,top 命令只提供 VSS 和 RSS,而我对 PSS 和 USS 感兴趣。获得这些值的一种方法是通过 procrank。但是,我不确定是否可以在智能手机上执行 procrank 命令,因为我尝试过process p2 = Runtime.getRuntime().exec("procrank");,但它不起作用。 (编辑:适用于 Android 模拟器(不是智能手机)。
有人可以指导我如何通过我已经通过 top 命令获取的应用程序 ID 或名称获取 PSS 和 USS。
【问题讨论】:
-
Google Android 团队的 Dianne Hackborn 很好地回答了这个问题here。
-
是的,我已经阅读了这篇文章并在我的帖子中提供了参考。我正在寻找一些可以使用 memeoryinfo() 或 procrank 在 android 上为我提供 PSS 和 USS 信息的代码。你能帮忙吗?
-
您最好解释一下为什么要获取另一个应用程序的内存使用信息。我怀疑对于您的用例来说,有比您尝试做的任何事情更好的工具。
-
实际上我正在创建一个分析器,它将监控应用程序的 CPU、内存、能源消耗并相应地执行一些操作。
标签: java android memory memory-management android-emulator