현재 한 엑티비티에서 다른 엑티비티로 넘기는 작업을 하고 있습니다.
기존의 프로그램은 카메라부분이었고 다른 카메라 부분으로 엑티비티 전환을 하기 위해서 중간에 엑티비티 전환만 해주는
간단한 엑티비티를 넣어줬습니다.
그러나 전환이 되던중에 Log에 다음과 같이 뜨면서..
committing suicide to free the zombie!
12-12 17:03:15.720: INFO/DEBUG(1676): Build fingerprint: 'google/passion_kt/passion:2.3.3/GRI40/49208:user/release-keys'
12-12 17:03:15.720: INFO/DEBUG(1676): pid: 1677, tid: 1677 >>> com.t <<<
12-12 17:03:15.720: INFO/DEBUG(1676): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000038
12-12 17:03:15.720: INFO/DEBUG(1676): r0 00000000 r1 afd46608 r2 00000000 r3 00000000
12-12 17:03:15.720: INFO/DEBUG(1676): r4 00000000 r5 00000000 r6 00000000 r7 4214ccfc
12-12 17:03:15.720: INFO/DEBUG(1676): r8 bef2f478 r9 4214ccf4 10 4214cce0 fp 800a5368
12-12 17:03:15.720: INFO/DEBUG(1676): ip afd46450 sp bef2f420 lr 8069bd84 pc 806a46fc cpsr 68000010
12-12 17:03:15.720: INFO/DEBUG(1676): d0 742064656c696146 d1 747369676572206f
12-12 17:03:15.720: INFO/DEBUG(1676): d2 626c6c6163207265 d3 61636562206b6361
12-12 17:03:15.720: INFO/DEBUG(1676): d4 2065687420657375 d5 6163206e65766967
12-12 17:03:15.720: INFO/DEBUG(1676): d6 207369206172656d d7 2e64696c61766e69
12-12 17:03:15.720: INFO/DEBUG(1676): d8 437a000043dd8000 d9 42c38c4040490fdb
12-12 17:03:15.720: INFO/DEBUG(1676): d10 3f726a1140000000 d11 bfc14e5d3f7fe1e5
12-12 17:03:15.720: INFO/DEBUG(1676): d12 3feffc3ca0000000 d13 40222d8a7207656f
12-12 17:03:15.720: INFO/DEBUG(1676): d14 40222d8a7207656f d15 bc0b6f2141116c54
12-12 17:03:15.720: INFO/DEBUG(1676): d16 0002031e4050a930 d17 bff0000000000000
12-12 17:03:15.720: INFO/DEBUG(1676): d18 3ff0000000000000 d19 0000000000000000
12-12 17:03:15.720: INFO/DEBUG(1676): d20 0000000000000000 d21 0000000000000000
12-12 17:03:15.720: INFO/DEBUG(1676): d22 3ff0000000000000 d23 0000000000000000
12-12 17:03:15.720: INFO/DEBUG(1676): d24 3ff0000000000000 d25 0000000000000000
12-12 17:03:15.720: INFO/DEBUG(1676): d26 0000000000000000 d27 0000000000000000
12-12 17:03:15.720: INFO/DEBUG(1676): d28 0100010001000100 d29 0100010001000100
12-12 17:03:15.720: INFO/DEBUG(1676): d30 0001000000010000 d31 0001000000010000
12-12 17:03:15.720: INFO/DEBUG(1676): scr 60000012
해결 됐습니다.
Intent i = new Intent(A.this, B.class);
startActivity(i);
finish();
이런 부분이 있었는데
finish() 를 지워주니 해결됐네요 ㅎ
B엑티비티가 미처 start up 되기전에 부모가 종료가 되서 그런것 같습니다.
그러나 이론상 완벽한 이유는 모르겠습니다.ㅠ
그리고 카메라->빈 엑티비티-> 카메라 이런식으로 짰었는데 이제는 카메라 엑티비티 전환시 위와같은 에러는 안나지만
카메라가 안나오네요.....ㅠㅠㅠ;;;;;;
산넘어 산............에휴.....
Native Library가 SEGV_MAPERR 를 뿜고 죽었습니다.
로그 더 살펴 보시면 xxx.so 파일명이 나올텐데, 그 라이브러리에서 pointer exception이 발생했을 확률이 높습니다.
안드로이드 앱은 Native Lib가 죽으면 꿈쩍 하면서 Activity가 종료되어 버리죠
Linux 레벨에서 Activity Process 를 kill 시킨 거기 때문에
정상적인 Activity 종료 cycle을 밟지 못합니다.
그로인해서 잔여 객체들이 좀비 취급될테구요.
라이브러리를 직접짜신거라면 콜스택으로 디버깅 하시고
가져다쓰신거라면 상위 버전 교체를 권장합니다 ㅎㅎ