Android &引用;OutOfMemory“;仅三星Galaxy S3例外

Android &引用;OutOfMemory“;仅三星Galaxy S3例外,android,crash,out-of-memory,galaxy,heap-size,Android,Crash,Out Of Memory,Galaxy,Heap Size,三星Galaxy S3在我的应用程序上几乎立即使用32mb的heapsize,而在几乎任何其他android设备上,它的启动速度都是+-5mb(在logcat中可以看到这一点,必要时可以从两个不同的设备发送屏幕截图)。我想这就是我的应用程序崩溃的原因,只有Galaxy s3上有“OutOfMemory”例外,在Galaxy Y Duos和Pocket上工作得很好 如果您能提供任何帮助或建议,我们将不胜感激。正如mario所说,问题在于s3的分辨率高于其他型号,因此图像的尺寸更大,因此内存消耗也更

三星Galaxy S3在我的应用程序上几乎立即使用32mb的heapsize,而在几乎任何其他android设备上,它的启动速度都是+-5mb(在logcat中可以看到这一点,必要时可以从两个不同的设备发送屏幕截图)。我想这就是我的应用程序崩溃的原因,只有Galaxy s3上有“OutOfMemory”例外,在Galaxy Y Duos和Pocket上工作得很好


如果您能提供任何帮助或建议,我们将不胜感激。

正如mario所说,问题在于s3的分辨率高于其他型号,因此图像的尺寸更大,因此内存消耗也更大


虽然值得一提的是,S3的堆大小似乎有一点最大,但它的分辨率,因为我也遇到过内存不足的问题,但其他具有相同分辨率、堆限制更高的设备却没有。在大多数情况下,OOM不是用于加载位图或类似的内容,而是主要基于GPU读取此文件和此文件

在我的例子中,我已经替换了试图从中加载的图像drawables,您可以使用DrawableNodpi

在我的应用程序中,had drawable hdpi拥有应用程序的所有图像。在大多数设备上,没有问题。在S3上,应用程序将占用2倍的内存,然后出现内存不足的问题


我刚刚创建了可绘制的xhdpi文件夹,其内容与可绘制的hdpi文件夹相同,并在S3上运行它。立即注意到内存占用为1/2,并且没有内存不足问题。

引发了什么OOM异常?您是否使用位图,Buggy API,请清除它以帮助您。它是在位图工厂解码期间抛出的。然而,我试图弄明白为什么它只发生在Galaxy S3上,它在我拥有的任何其他android手机上都能完美运行,我真正的问题是“galaxy使用的堆比其他android手机多得多吗?你测试的手机运行的是同一个android操作系统版本吗?是的,我有galaxy Y Duos和Pocket,都是2.3.6,我有2个galaxy S3。S3一开始使用32mb的原因是因为它使用xhdpi。这些图像比银河系Y Duos大得多