我想知道如何获取给定应用程序的 RAM 使用量或安装在 android 设备中的包名称。到目前为止,我继续使用包管理器并用我想要的包名称提供它。但是,我没有任何方法可以将其取出。我不知道这之后该怎么办。请有人帮助我获取特定应用程序当前正在使用的 RAM 量。
问问题
887 次
2 回答
0
此功能可帮助您:
public static void logHeap(Class<?> clazz) {
Double allocated = new Double(Debug.getNativeHeapAllocatedSize())/new Double((1048576));
Double available = new Double(Debug.getNativeHeapSize()/1048576.0);
Double free = new Double(Debug.getNativeHeapFreeSize()/1048576.0);
DecimalFormat df = new DecimalFormat();
df.setMaximumFractionDigits(2);
df.setMinimumFractionDigits(2);
Log.d("memory-usage", "===================================================================================================");
Log.d("memory-usage", "debug.heap native: allocated " + df.format(allocated) + "MB of " + df.format(available) + "MB (" + df.format(free) + "MB free) in [" + clazz.getName().replaceAll("com.myapp.android.","") + "]");
Log.d("memory-usage", "debug.memory: allocated: " + df.format(new Double(Runtime.getRuntime().totalMemory()/1048576)) + "MB of " + df.format(new Double(Runtime.getRuntime().maxMemory()/1048576))+ "MB (" + df.format(new Double(Runtime.getRuntime().freeMemory()/1048576)) +"MB free)");
System.gc();
System.gc();
}
于 2012-07-08T19:02:08.390 回答
0
您可以使用 adb 工具来获取应用程序消耗的内存信息
adb shell dumpsys meminfo
可以通过 adb shell dumpsys meminfo > meminfo.txt 将此输出到文本文件
Here之前对此的很好的解释
于 2012-07-08T16:15:23.530 回答