java.lang.OutOfMemoryError: Failed to allocate a 2560012 byte allocation
with 1668568 free bytes and 1629KB until OOM
at dalvik.system.VMRuntime.newNonMovableArray(Native Method)
at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:609)
at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:444)
at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:1080)
at android.content.res.Resources.loadDrawableForCookie(Resources.java:2635)
at android.content.res.Resources.loadDrawable(Resources.java:2540)
在我的平板电脑上完美运行,但在模拟器上出现此错误。有什么想法吗?
我尝试过添加
android:largeHeap="true"
到清单但是不行。
答案 0 :(得分:0)
好的,所以这里有相同的细节, java.lang.OutOfMemoryError
public class OutOfMemoryError
extends VirtualMachineError
当Java虚拟机由于内存不足而无法分配对象时抛出,垃圾收集器不再提供更多内存。 OutOfMemoryError对象可以由虚拟机构造,就像禁用抑制和/或堆栈跟踪不可写一样。 解决这些错误的方法: - 在java中解决OutOfMemoryError的一种简单方法是使用JVM选项“-Xmx512M”来增加最大堆大小,这将立即解决您的OutOfMemoryError。 在Java中解决OutOfMemoryError的第二种方法相当困难,当你没有太多内存时,甚至在增加最大堆大小之后你仍然得到java.lang.OutOfMemoryError,在这种情况下,你可能想要分析你的应用程序和寻找任何内存泄漏。
了解详情:http://javarevisited.blogspot.com/2011/09/javalangoutofmemoryerror-permgen-space.html#ixzz4EUJfnfac