安卓(Android) 怎么从运行时的 dalvik.system.vm 获取最小堆大小

2019年10月5日21:00:48安卓(Android) 怎么从运行时的 dalvik.system.vm 获取最小堆大小已关闭评论 335 781字阅读2分36秒

1.简介

安卓(Android) 怎么从运行时的 dalvik.system.vm 获取最小堆大小?——请看下文。

2.示例代码

/**
 * 版权所有 编程十万个怎么办(www.tah1986.com)
 */


import java.lang.reflect.Method;

public class Main {
    public static long getMinimumHeapSize() {
        try {
            Class VMRuntimeClass = Class.forName("dalvik.system.VMRuntime");
            Method getRuntimeMethod = VMRuntimeClass.getMethod(
                    "getRuntime", new Class[0]);
            Class[] arrayOfClass = new Class[1];
            arrayOfClass[0] = Long.TYPE;
            Method getMinimumHeapSizeMethod = VMRuntimeClass.getMethod(
                    "getMinimumHeapSize", new Class[0]);
            Object runtimeObject = getRuntimeMethod.invoke(null,
                    new Object[0]);
            Long ret = (Long) getMinimumHeapSizeMethod.invoke(
                    runtimeObject, new Object[0]);
            android.util.Log.e("BAIDUMAP_PERFM",
                    "getMinimumHeapSizeMethod:" + ret.longValue());
            return ret.longValue();
        } catch (Throwable localThrowable) {
            localThrowable.printStackTrace();
        }
        return 0;
    }
}

 
编程十万个怎么办