首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >你如何在设备中获得总内存RAM?

你如何在设备中获得总内存RAM?
EN

Stack Overflow用户
提问于 2010-10-23 00:06:59
回答 3查看 23.5K关注 0票数 17

我可以通过以下方式获取总可用内存:

代码语言:javascript
复制
ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
MemoryInfo memoryInfo = new ActivityManager.MemoryInfo();
activityManager.getMemoryInfo(memoryInfo);
memoryInfo.availMem;

但是,如何获得设备的总内存(RAM)?

我读过:How do I discover memory usage of my application in Android?

添加pidMemoryInfo.getTotalPss()似乎也不能给我提供总内存。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-11-28 18:28:38

试试这个对我很管用。

代码语言:javascript
复制
public static String getTotalRAM() {
    RandomAccessFile reader = null;
    String load = null;
    try {
        reader = new RandomAccessFile("/proc/meminfo", "r");
        load = reader.readLine();
    } catch (IOException ex) {
        ex.printStackTrace();
    } finally {
        // Streams.close(reader);
    }
    return load;
}
票数 15
EN

Stack Overflow用户

发布于 2010-10-23 09:46:46

如果你找不到其他的东西,你可以绕过android,阅读/proc/meminfo,这是一个普通的linux发行版上的'free‘命令所做的事情

票数 3
EN

Stack Overflow用户

发布于 2013-02-07 03:16:56

MemoryInfo类在API 16中增加了totalMem,请尝试一下。

public long totalMem在API16级中添加了内核可访问的总内存。这基本上是设备的RAM大小,不包括内核以下的固定分配,如DMA缓冲区、基带CPU的RAM等。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3998713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档