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

처음보는 에러입니다. 메모리 부족인가요

0 추천

해결하나 싶더니 새로운 에러가 나네요 ㅠㅠ

 메모리 부족인가요??
 
07-07 18:40:37.780: D/dalvikvm(18729): GC_EXTERNAL_ALLOC freed 19 objects / 816 bytes in 36ms
07-07 18:40:38.171: E/dalvikvm-heap(18729): 4560720-byte external allocation too large for this process.
07-07 18:40:38.171: E/GraphicsJNI(18729): VM won't let us allocate 4560720 bytes
07-07 18:40:38.171: E/Decode resource failed as memory short(18729): java.lang.OutOfMemoryError: bitmap size exceeds VM budget
07-07 18:40:38.352: D/AndroidRuntime(18729): Shutting down VM
07-07 18:40:38.352: W/dalvikvm(18729): threadid=1: thread exiting with uncaught exception (group=0x400208b0)
07-07 18:40:38.530: I/dalvikvm(18729): Jit: resizing JitTable from 4096 to 8192
07-07 18:40:38.592: E/AndroidRuntime(18729): FATAL EXCEPTION: main
07-07 18:40:38.592: E/AndroidRuntime(18729): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.yonoo.myfaceon/com.yonoo.myfaceon.ResultActivity}: android.view.InflateException: Binary XML file line #44: Error inflating class <unknown>
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2768)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2784)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.app.ActivityThread.access$2500(ActivityThread.java:129)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2117)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.os.Handler.dispatchMessage(Handler.java:99)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.os.Looper.loop(Looper.java:143)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.app.ActivityThread.main(ActivityThread.java:4732)
07-07 18:40:38.592: E/AndroidRuntime(18729): at java.lang.reflect.Method.invokeNative(Native Method)
07-07 18:40:38.592: E/AndroidRuntime(18729): at java.lang.reflect.Method.invoke(Method.java:521)
07-07 18:40:38.592: E/AndroidRuntime(18729): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
07-07 18:40:38.592: E/AndroidRuntime(18729): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
07-07 18:40:38.592: E/AndroidRuntime(18729): at dalvik.system.NativeStart.main(Native Method)
07-07 18:40:38.592: E/AndroidRuntime(18729): Caused by: android.view.InflateException: Binary XML file line #44: Error inflating class <unknown>
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.view.LayoutInflater.createView(LayoutInflater.java:513)
07-07 18:40:38.592: E/AndroidRuntime(18729): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.view.LayoutInflater.rInflate(LayoutInflater.java:618)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
07-07 18:40:38.592: E/AndroidRuntime(18729): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:236)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.app.Activity.setContentView(Activity.java:1677)
07-07 18:40:38.592: E/AndroidRuntime(18729): at com.yonoo.myfaceon.ResultActivity.onCreate(ResultActivity.java:69)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
07-07 18:40:38.592: E/AndroidRuntime(18729): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2732)
 
브루스웨인 (8,580 포인트) 님이 2013년 7월 7일 질문

1개의 답변

0 추천
 
채택된 답변
메모리부족이긴한데 메모리부족이라기보다 너무 큰 뭔가를 할당하는거같은데요..

이미지 로드할떄 사이즈가 1024를 넘어가는게있는지 찾아보시는게..
기초개발자 (24,060 포인트) 님이 2013년 7월 7일 답변
브루스웨인님이 2013년 7월 8일 채택됨
이게 다음액티비티로 넘어갈때 발생하는데
 다음 액티비티에 상단바에 리니어 레이아웃 하나에 이미지버튼 4개를 생성했었씁니다.

그래서 혹시나 하고 이미지버튼 하나를 지우고해보니 화면이 넘어갑니다.
액티비티 화면이 지원하는 액정사이즈를 넘어가면 이런현상이 발생하는건가요?
그러니깐 이미지의 원본 사이즈가 얼만지부터 찾아보세요..
상단바에 이미지버튼이 네개있고 뺏더니 잘돌아간다면 이미지의 크기 문제일 가능성이 높은데, 원본 사이즈의 크기를 먼저 계산해서 크기를 작게 resizing이나 sample size로 맞춰주셔야되요.
안드로이드 빈 프로젝트에 2048 x 2048  이미지 한장만 띄워도 뻑납니다. 그정도로 메모리를 적게 지원하기때문에 모든 이미지는 화면 크기에 맞게 리사이징하셔야되요. 그리고 menifest에 largeheap true를줘보세요
제가 진짜 기초개발자 님 덕에 사네요 ㅠㅠ
...