Android 有没有办法知道安卓设备有多少内存?

Android 有没有办法知道安卓设备有多少内存?,android,Android,我正在尝试制作一个益智应用程序。它有一个滚动条,上面有你可以选择的所有不同拼图的图像。这个位图占用了大量内存,在我的android智能手机上会导致系统崩溃,但在我的acer平板电脑上运行良好 如果我缩小位图的大小,效果会很好。现在,我使用两种不同的大小,并使用屏幕结果来确定要使用的大小。到目前为止,我测试过的所有设备似乎都能做到这一点。但我担心分辨率高的设备可能内存不足,我的应用程序会崩溃 有没有一种方法可以查看设备有多少ram,这样我就可以使用结果和内存来确定要使用的位图大小 有没有一种方法可

我正在尝试制作一个益智应用程序。它有一个滚动条,上面有你可以选择的所有不同拼图的图像。这个位图占用了大量内存,在我的android智能手机上会导致系统崩溃,但在我的acer平板电脑上运行良好

如果我缩小位图的大小,效果会很好。现在,我使用两种不同的大小,并使用屏幕结果来确定要使用的大小。到目前为止,我测试过的所有设备似乎都能做到这一点。但我担心分辨率高的设备可能内存不足,我的应用程序会崩溃

有没有一种方法可以查看设备有多少ram,这样我就可以使用结果和内存来确定要使用的位图大小

有没有一种方法可以查看设备有多少ram,这样我就可以使用结果和内存来确定要使用的位图大小

设备RAM并不重要。进程的可用内存很重要

要查找应用程序的内存类,请在
ActivityManager
上调用
getMemoryClass()
——它基本上返回进程可用的RAM量(MB)

有没有一种方法可以查看设备有多少ram,这样我就可以使用结果和内存来确定要使用的位图大小

设备RAM并不重要。进程的可用内存很重要


要查找应用程序的内存类,请在
ActivityManager
上调用
getMemoryClass()
——这基本上返回进程可用RAM的大小(MB)。

我怀疑相关问题不是总内存的大小(在/proc中的某个地方可见)而是运行应用程序的DVM的堆大小。检查此处:我怀疑相关的问题不是总内存量(在/proc中的某个位置可见),而是运行应用程序的DVM的堆大小。检查此处:这是否会提供进程的内存限制(包括本机分配)或者DVM堆限制(不包括本机分配)?@ChrisStratton:这是Dalvik VM堆限制(另外,在API级别10及以下的情况下,它还计算位图,即使这些位图实际上没有在那些较旧的Android版本的DVM堆上分配)。我不知道除了系统RAM本身之外,对本机分配有任何限制,尽管我不是NDK高手,所以我可能在这一点上记错了。这会提供进程的内存限制(包括本机分配)还是DVM堆限制(不包括本机分配)?@ChrisStratton:这是Dalvik VM堆限制(另外,在API级别10及以下,它还计算位图,即使它们实际上没有在那些较旧的Android版本的DVM堆上分配)。我不知道除了系统RAM本身之外,对本机分配有任何限制,尽管我不是一个非常喜欢NDK的人,所以我可能记错了这一点。