마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

이미지 OutOfMemory 관련 질문

0 추천
이미지 로딩에서 에러가 뜹니다.

현재 그냥 엑티비티 사이에 연결을 해준 상태입니다.

그런데 에러가 떠서 보니깐 OutOfMemory 관련 에러라고 떳습니다.

그래서 검색해 보았더니 제가 백그라운드로 설정해 놓은 사진 사이즈가 너무 커서 그렇다고 뜨더군요. Bitmap을 이용하여 해결 할 수 있다는데 코드를 봤을 때 제가 아직 자바 관련 지식이 조금 부족한지 개발을 별로 안해보아 부족한지 아무튼 잘 이해에 힘겨움을 느껴 도움을 청합니다.

http://stackoverflow.com/questions/18412343/outofmemory-when-loading-large-background-image

이 사이트에서 나오는 코드에 관하여 초보자에게 설명 좀 부탁드립니다.
sa7219 (120 포인트) 님이 2015년 7월 2일 질문

2개의 답변

0 추천
저도 예전에 이런경우가 엄청 많았는데요,,

이때 저는 몰라서 이미지사이즈를 그냥 줄이는 것으로 해결하였습니다.

 

하지만 이렇게 할 경우 큰 해상도를 가진 휴대폰에서는 이미지가 흐릿하게 나오거나 하는 단점이있습니다.

 

따라서, 가장 베스트는

1. 화면 사이즈별로 drawable과 layout 폴더를 생성하셔서 각각의 화면에 맞는 적절한 크기의 이미지를 넣어서 구현하시거나

2. 말씀하신대로 Bitmap등을 이용하여 이미지를 리사이징(?) 하는 방법이 있었습니다.

 

두번째 방법은 너무 코드가 길구..귀찮아질것같아서 저는 패스했고,

제가 해결한 방법은 사이즈별 이미지를 제작하는 방식으로 해결하였습니다.
안드로이드로우 (15,740 포인트) 님이 2015년 7월 2일 답변
그리고 이미지 관련과 메모리와 GC 관련하여 아래 사이트를 보시면 큰 도움을 얻으실 수 있으실것같습니다.

http://helloworld.naver.com/helloworld/textyle/539525

건승하세요
참고로 질문자님께서 링크로 걸어주신 소스는,
이미지와 화면크기를 집어넣으면 적절히 리사이징해주는 소스코드인것같습니다.
0 추천
사이즈가 큰게 문제면 줄이는 수 밖에 없어요.

거기에 picaso 같은 라이브러리까지 써주면 많이 줄어들 거예요
쎄미 (162,410 포인트) 님이 2015년 7월 2일 답변
...