On 11/21/2012 03:58 PM, Mark Murphy wrote:
First, you do not know necessarily what BitmapFactory.Options are
being specified on the decodeResource() call, as that does not appear
to be called from your code, and it could be they have strange values
in there.
Well, as far as my own code reaches (AndroidGraphics.java:77), I do set
these options.
Options options = new Options();
options.inPreferredConfig = Config.ARGB_8888;
options.inScaled = false;
[...]
bitmap = BitmapFactory.decodeResource(this.context.getResources(),
resourceId, options);
Beyond that, last I knew, Dalvik does not have a compacting garbage
collector. I haven't seen a recent statement as to whether or not that
limitation has been fixed. If it is still the case, though, your issue
may not so much that you are out of memory, but that there is no
single contiguous block that meets your needs.
Well, it may happen, but the evidence on that is really weak. The game
has just started and it is loading the main menu screen, with only a few
objects in memory, so it is unlikely that in these circunstances and
with 15Mb of free heap an image of just 1M5 as raw ARGB_8888 will not
find an slot.
On Wed, Nov 21, 2012 at 9:48 AM, Francisco Marzoa <[email protected]
<mailto:[email protected]>> wrote:
Look at this:
0java.lang.OutOfMemoryError: (Heap Size=48547KB, Allocated=33541KB)
1at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
2at
android.graphics.BitmapFactory.decodeResource(BitmapFactory.java:595)
3at
com.badlogic.androidgames.framework.impl.AndroidGraphics.newPixmap(AndroidGraphics.java:77)
4at
com.badlogic.androidgames.framework.impl.AndroidGraphics.newPixmap(AndroidGraphics.java:133)
5at
net.iberdroid.ruletaafortunadacore.MainMenuScreen.loadImages(MainMenuScreen.java:255)
6at
net.iberdroid.ruletaafortunadacore.MainMenuScreen.enable(MainMenuScreen.java:241)
The image that I am trying to load at MainMenuScreen.java:255
The weird thing is that there is free heap enough for loading that
image: it is a 800x480 png indexed but with transparency, so I
load it using four bytes per pixel (ARGB) and it should use about
1M5 of memory as a raw bitmap... but it crashes anyway trying to
load an image ten times smaller the available heap space (48-35 =
15Mb).
These things makes me crazy...
Bests,
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to
[email protected]
<mailto:[email protected]>
To unsubscribe from this group, send email to
[email protected]
<mailto:android-developers%[email protected]>
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
--
Mark Murphy (a Commons Guy)
http://commonsware.com | http://github.com/commonsguy
http://commonsware.com/blog | http://twitter.com/commonsguy
_The Busy Coder's Guide to Android Development_ Version 4.3 Available!
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en