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

setBackgroundResource() 에서의 메모리 문제..

0 추천
0.5 초간격으로 4장의 사진을 보여주는 애니메이션 aaa.xml 파일이 있구요.

ImageView의 setBackgroundResource(R.anim.aaa.xml);

와 같이 등록시켜 사용ㅇ중입니다.

 

이게 문제는 제 폰에서는 아 무문제 없는데,

다른 휴대폰에서는 가끔 메모리 문제가 발생하더라구요.

OutOfMemoryException 이 발생합니다.

찾아보니 bitmap은 사용후 해제를 (recycle?) 시켜주라고 하는데..

저는 bitmap을 사용하지 않고,

그저 xml 파일을 background에 등록시켰을 뿐이거든요..

이것을 해결하려면 어떻게 해야할까요??
안드로이드로우 (15,740 포인트) 님이 2014년 11월 9일 질문
outofmemory 나오면

메니페스트에 <application
                             android:largeHeap="true">
하면 괜찮을거에요

2개의 답변

+1 추천
 
채택된 답변
4장의 사진이 화면에 표시될 때는 bitmap으로 변환됩니다.

xml에 4장이 모두 들어가 있는 것으로 추정되는데,

그러지 마시고 한 번에 하나씩 로딩하여 보여주는 식으로 변경하세요.
익명사용자 님이 2014년 11월 9일 답변
안드로이드로우님이 2014년 11월 12일 채택됨
답변 감사합니다.
gif 파일 형식으로 사진이 계속해서 변하는 것을 표현하기 위하여
anim에서 xml로 생성하여 돌리는 것인데요..
그렇다면 소스코드로 4장을 타이머 스케줄로 쓰레드를 이용하여 돌리라는 말씀이신가요?
이때 한장씩 불러와서 bitmap으로 변환하여 크기를 조정하거나 하는 메모리 관련 소스를 실행하는 것이겠구요.

gif 처럼 여러장의 사진이 반복해서 돌아가는 것을 보통의 안드로이드 개발자분들은 어떻게 표현하시나요?ㅠㅠ
+1 추천

http://droid-blog.net/2011/10/14/tutorial-how-to-use-animated-gifs-in-android-part-1/

 

여기를 참고해서 해보세요

 

 

 

doridori2013@nate.com

익명사용자 님이 2014년 11월 9일 답변
...