내 게임에서 표면 뷰를 사용합니다 (GL을 사용해야 함). 많은 게임 캐릭터 세계에 비트 맵을 그립니다. LogDog를 열었을 때이 문제가 발생합니다.안드로이드 개발 : 비트 맵 표면에 누수 메모리 또는 너무 큽니다?
08-05 10:17:29.151: ERROR/dalvikvm(24048): Out of memory: Heap Size=5379KB, Allocated=2735KB, Bitmap Size=20576KB, Limit=32768KB
누출인지 알 수 없습니다.
내 할당 추적기 보여줍니다
(30)와 같은 그런 다음
138 96 char[] 9 android.content.res.AssetManager getCookieName
톤의 :
32 80 android.graphics.BitmapFactory$Options 9 android.graphics.BitmapFactory decodeResource
그리고 마지막 : 30처럼 :
141 56 android.graphics.Bitmap 9 android.graphics.BitmapFactory nativeDecodeAsset
그리고 simular 것들도 더 있습니다. 여기
내가 하수구 내 기억을 생각하는 몇 가지 코드 :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;
내가 resycle를 사용해야하지만 난 항상 비트 맵을 사용하기 때문에 위치를 잘 모릅니다 들었
// 사이먼 PS : 난 정말 도움이 필요해 .-