gpt4 book ai didi

android - 如何在android中获取当前的内存使用情况?

转载 作者:IT老高 更新时间:2023-10-28 13:04:41 28 4
gpt4 key购买 nike

我已经使用/proc/meminfo 并解析了命令响应。但是结果表明:

内存总量:94348 kB无内存:5784 kB

的意思。它显示只有 5MB 可用内存。安卓手机可以吗?我的手机上只安装了 5-6 个应用程序,没有其他任务正在运行。但是这个命令仍然显示只有很少的可用内存。

有人可以澄清一下吗?或者有没有其他方法可以在 android 中获取内存使用情况?

最佳答案

注意:此答案测量设备的内存使用/可用情况。这不是您的应用程序可用的。衡量您的 APP 正在做什么以及被允许做什么,Use android developer's answer .


Android docs - ActivityManager.MemoryInfo

  1. 解析/proc/meminfo 命令。您可以在此处找到引用代码:Get Memory Usage in Android

  2. 使用以下代码获取当前 RAM:

    MemoryInfo mi = new MemoryInfo();
    ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
    activityManager.getMemoryInfo(mi);
    double availableMegs = mi.availMem / 0x100000L;

    //Percentage can be calculated for API 16+
    double percentAvail = mi.availMem / (double)mi.totalMem * 100.0;

数字0x100000L的解释

1024 bytes      == 1 Kibibyte 
1024 Kibibyte == 1 Mebibyte

1024 * 1024 == 1048576
1048576 == 0x100000

很明显,数字是用来从字节转换为兆字节的

P.S:我们只需要计算一次总内存。所以在你的代码中只调用点 1 一次,然后你可以重复调用点 2 的代码。

关于android - 如何在android中获取当前的内存使用情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3170691/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com