앱이 종료가 됩니다.
아마도 메모리 부족현상으로 꺼지는 것으로 보입니다.
그런데 BITMAP RECYCLE을 해주었는데도 종료가 되서 이렇게 글을 남깁니다.
정확한 원인을 알기위해 로그캣으로 계속 관찰하였으나.. 관찰할때는 로그캣에 에러가 안나타나고,,,,
이후 앱 에러 종료창이 뜨더라구요...
계속적으로 관찰을 하고 있습니다...
04-19 08:30:39.327: I/art(23507): Background sticky concurrent mark sweep GC freed 319397(11MB) AllocSpace objects, 4(60KB) LOS objects, 14% free, 71MB/83MB, paused 2.277ms total 102.511ms
04-19 08:32:51.303: I/art(23507): Background sticky concurrent mark sweep GC freed 293054(10MB) AllocSpace objects, 0(0B) LOS objects, 12% free, 72MB/83MB, paused 1.987ms total 112.014ms
04-19 08:34:47.303: I/art(23507): Background sticky concurrent mark sweep GC freed 257473(9MB) AllocSpace objects, 0(0B) LOS objects, 11% free, 74MB/83MB, paused 2.432ms total 146.766ms
04-19 08:37:57.281: I/art(23507): Background sticky concurrent mark sweep GC freed 197523(7MB) AllocSpace objects, 0(0B) LOS objects, 8% free, 76MB/83MB, paused 2.394ms total 118.115ms
04-19 08:41:23.263: I/art(23507): Background sticky concurrent mark sweep GC freed 132434(4MB) AllocSpace objects, 0(0B) LOS objects, 5% free, 78MB/83MB, paused 2.283ms total 113.336ms
04-19 08:47:39.206: I/art(23507): WaitForGcToComplete blocked for 12.906ms for cause HeapTrim
04-19 08:47:56.175: I/art(23507): Background sticky concurrent mark sweep GC freed 5019(186KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 83MB/83MB, paused 5.750ms total 40.136ms
04-19 08:48:01.177: I/art(23507): Background sticky concurrent mark sweep GC freed 2868(105KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 83MB/83MB, paused 5.395ms total 36.309ms
04-19 08:48:02.184: I/art(23507): Background sticky concurrent mark sweep GC freed 2347(87KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 83MB/83MB, paused 6.394ms total 37.202ms
04-19 08:48:03.177: I/art(23507): Background sticky concurrent mark sweep GC freed 1920(71KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 83MB/83MB, paused 6.331ms total 32.974ms
04-19 08:48:05.184: I/art(23507): Background sticky concurrent mark sweep GC freed 497(17KB) AllocSpace objects, 0(0B) LOS objects, 0% free, 83MB/83MB, paused 6.600ms total 39.006ms
현재 계속적으로 찍히는 로그캣 이고요...
mainactivity에서 bitmap 리사이클을 해주고 있습니다.
layout의 백그라운드 이미지를 전체크기의 화면으로 해서 아마 bitmap 메모리 누수가 일어나는 것으로 판단이 되는데... 정확한 원인을 잘 모르겠습니다.
최근 갤럭시 노트5, 갤럭시 A7에서는 에러는 발생하지 않았는데.
구형폰 갤럭시 S4, LG Gpro2, LG G2에서는 발생이 하더라구요..
조금이나마 도움이 될만한 정보를 주시면 감사하겠습니다.
@Override
protected void onDestroy() {
super.onDestroy();
recycleView((LinearLayout)findViewById(R.id.bt_state));
Log.d(TAG, "# Activity - onDestroy()");
}
private void recycleView(View view){
if(view !=null){
Drawable bg = view.getBackground();
if(bg!=null){
bg.setCallback(null);
((BitmapDrawable)bg).getBitmap().recycle();
view.setBackgroundDrawable(null);
}
}
}