从应用程序请求可用内存

时间:2012-09-25 16:58:17

标签: android memory

我遇到内存泄漏问题,我想要一个回退方法,快速重启我的应用程序。

我硬编码了一个值,我观察到了问题:

    Debug.MemoryInfo memoryInfo = new Debug.MemoryInfo();
    Debug.getMemoryInfo(memoryInfo);

//        double totalMemory = 0;
//        totalMemory = Runtime.getRuntime().totalMemory() / (1024 * 1024);
//        double freeMemory = Runtime.getRuntime().freeMemory() / (1024 * 1024);
//        double maxMemory = Runtime.getRuntime().maxMemory() / (1024 * 1024);

        if (memoryInfo.getTotalPss() / 1024 > 30)//totalMemory - freeMemory  < maxMemory - 10)
        {
            setPersistent(false);
            mShouldRestart = true;
        }

如你所见,我已经注释掉了一些部分。我想询问特定的设备,我正在使用多少内存,以及我可以获得多少内存。然而,注释掉的部分似乎提供了奇怪的设置,比如我使用了15MB,2MB是免费的,总共可能是64MB。

我想实现像usedMemory&gt;这样的东西。 maxmemory - 10 ...然后清除视图等。

0 个答案:

没有答案