java - 如何在 Android 上检查我的应用程序堆内存大小?

标签 java android android-memory

我想要检查我的应用堆内存大小。

拳头我使用android:largeHeap="true"

如何在 android 上检查我的应用堆内存大小?

最佳答案

内存量取决于 Android 版本和设备型号。

public static void logHeap() {
        Double allocated = new Double(Debug.getNativeHeapAllocatedSize())/new Double((1024*1024));
        Double available = new Double(Debug.getNativeHeapSize())/(1024*1024.0);
        Double free = new Double(Debug.getNativeHeapFreeSize())/(1024*1024.0);
        DecimalFormat df = new DecimalFormat();
        df.setMaximumFractionDigits(2);
        df.setMinimumFractionDigits(2);

        Log.d("tag", "debug. ===Heap====Heap======Heap====Heap====Heap=====");
        Log.d("tag", "debug.heap native: allocated " + df.format(allocated) + "MB of " + df.format(available) + "MB (" + df.format(free) + "MB free)");
        Log.d("tag", "debug.memory: allocated: " + df.format(new Double(Runtime.getRuntime().totalMemory()/(1024*1024.0))) + "MB of " + df.format(new Double(Runtime.getRuntime().maxMemory()/(1024*1024.0)))+ "MB (" + df.format(new Double(Runtime.getRuntime().freeMemory()/(1024*1024.0))) +"MB free)");
    }

关于java - 如何在 Android 上检查我的应用程序堆内存大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45455286/

相关文章:

java - Hibernate 插入查询

java.util.function.BiConsumer<R,R>) 不适用(无法推断类型变量 R

android - 使用Symja库时Gradle构建卡住了

java - Android图片调整大小报错内存

java - 如何以 Java 8 方式将具有属性的列表转换为另一个列表?

java - 定义命名空间时,使用 Maven 创建的架构验证 XML 失败

java - Objective-C 到 Java 交叉编译器

android - Android开源项目中的人脸解锁代码?

Android 非常庞大的项目列表,具有 recyclerview 最佳方法

android - 制作 Android 应用程序时是否有需要注意的内存管理技巧?