Mon jeu utilise surfaceview (je sais que je devrais utiliser GL). Je dessine beaucoup de bitmaps sur mon contrôleur de personnage de jeu, etc. Et je cours dans ce quand j'ai ouvert mon LogDog:Développement Android: Bitmaps sur la fuite de surface de la mémoire Mémoire ou trop grand?
08-05 10:17:29.151: ERROR/dalvikvm(24048): Out of memory: Heap Size=5379KB, Allocated=2735KB, Bitmap Size=20576KB, Limit=32768KB
Je ne sais pas si c'est fuite ou quoi.
Mon Tracker Allocation montre:
comme 30:
138 96 char[] 9 android.content.res.AssetManager getCookieName
Puis tonnes de:
32 80 android.graphics.BitmapFactory$Options 9 android.graphics.BitmapFactory decodeResource
et dernier: Comme 30:
141 56 android.graphics.Bitmap 9 android.graphics.BitmapFactory nativeDecodeAsset
Et aussi un peu plus de ceux qui sont simulaires.
Voici un code que je pense que draine ma mémoire:
player = BitmapFactory.decodeResource(getResources(), R.raw.ghostright);
world = BitmapFactory.decodeResource(getResources(), R.raw.lvl2);
thumb = BitmapFactory.decodeResource(getResources(), R.raw.thumb);
resized = Bitmap.createScaledBitmap(player, width/10, width/6, false);
player = resized;
resized = Bitmap.createScaledBitmap(world, height*10, height, false);
world = resized;
resized = Bitmap.createScaledBitmap(thumb, height/6, height/6, false);
thumb = resized;
J'ai appris que je devrais utiliser resycle mais je ne sais pas où parce que je l'utilise toujours les bitmaps
// Simon PS: J'ai vraiment besoin d'aide -.-