많은 양의 PNG 그림으로 게임을 쓰고 있습니다. 모두 괜찮 았어. WebView
으로 새로운 활동을 추가하고 메모리 부족을 경험했습니다. 그 후 나는 약간의 실험을했습니다 - 게임 PNG 이미지를 색으로 채워진 이미지로 대체하십시오. 결과로 메모리 부족이 사라졌습니다..png 파일의 크기가 줄이면 결과가 약간의 영향을받습니다.
하지만 Bitmap
은 내부적으로 각 픽셀을 개별적으로 유지하므로 이러한 변경은 효과가 없어야합니다. 알파 채널이있는 초기 이미지와 테스트 이미지가 맞지 않을 수 있습니다.
그러나 실제로는 질문 : PNG 이미지 파일 크기가 줄어들면 VM 응용 프로그램 힙 사용량이 감소하는지 여부가 영향을 받습니까?
예, 테스트를 할 때 옵션없이 BitmapFactory.decodeResource()를 사용 했으므로 하나의 컬러 이미지를 RGB_565로 디코딩하고 게임 이미지를 ARGB_8888로 디코딩 할 수 있습니다. 전이 문제에 대해 생각하고 있지 않습니다.하지만 오늘 일하게 될 때 저는 한 가지 옵션 인 ARGB_8888을 사용하여 두 번째 테스트를 실시하고 어떻게되는지 봅니다. 불행히도 거의 모든 게임 이미지에는 투명도가 필요하므로 RGB_565를 사용할 수 없습니다. 이제 ARGB_4444를 사용합니다. – nahab
.png 파일의 크기가 어떻게 든 비트 맵 메모리에 영향을 미칩니다. 다음 주에 더 깊은 조사를 할거야. – nahab