Dans mon jeu, j'ai une image bitmap qui fonctionne comme l'arrière-plan des jeux (dessiné sur une toile). Plus l'image est grande, plus il y a d'espace dans le jeu pour l'utilisateur, donc je veux que l'image bitmap soit aussi grande que possible sans causer de problèmes de mémoire. Eh bien, je suis allé à la mer et a dessiné un énorme bitmap, ce qui a causé une erreur de mémoire insuffisante immédiatement lors de l'initialisation, donc j'ai réduit un peu le bitmap. Mais je pense que c'est trop petit. Ma question est comment puis-je mesurer la limite "sûre" de la mémoire utilisée?Android Mémoire insuffisante Erreur - Bitmap est trop gros
J'ai utilisé les méthodes suivantes et lire la sortie en CatLog:
Debug.getNativeHeapAllocatedSize();
Log.v("MEMORY",String.valueOf(Debug.getNativeHeapAllocatedSize()));
Log.v("FreeMEMORY",String.valueOf(Debug.getNativeHeapFreeSize()));
dont les résultats étaient les suivants:
05-25 09:53:54.044: VERBOSE/MEMORY(23044): 9715624
05-25 09:53:54.044: VERBOSE/FreeMEMORY(23044): 61528
La mémoire libre semble assez faible? Cette coupe est-elle proche de l'os?
Android recommande images 9 YASS arrière-plans, avez-vous essayé? – omermuhammed
La documentation indique que 9patch est utilisé pour étirer les bitmaps dans Views. Je dessine le mien sur une toile. –
Au lieu d'utiliser un bitmap de grande taille, avez-vous essayé de mettre en mosaïque l'image pour créer l'arrière-plan? Je l'ai vu utilisé dans les toiles de jeu avant. – omermuhammed