2011-10-13 3 views
0

navigation controller back button을 클릭하면 응용 프로그램이 충돌하지만 예외는 표시되지 않습니다.뒤로 버튼을 클릭하면 응용 프로그램이 충돌하고 예외는 표시되지 않습니다. - 초보

예외 나 화면에 인쇄 된 세부 정보가 없기 때문에 아무런 단서가 없거나 충돌에 대한 세부 정보를 줄 수 있습니다.

저는 메모리 누수로 인한 것 같지만, 확실하지 않습니다. 누구든지 이걸 우연히 만났습니까?

실마리가 있습니까?

답변

1

디버거에 NSZombieEnabled, MallocStackLoggingguard malloc을 설정하십시오.

(gdb) info malloc-history 0x543216 

가 충돌의 원인이 된 객체의 주소 0x543216 교체, 당신은 훨씬 더 유용한 스택 추적을 얻을 것이다 그것을 당신이 정확하게 도움이 될 것입니다 그런 다음 응용 프로그램이 충돌 할 때 gdb를 comsole이 입력 문제를 일으키는 코드의 정확한 줄

+0

+1. 매우 유용한 디버깅 정보. – Akshay

0

응용 프로그램이 "충돌"하면 OS가이를 crashreport에 기록합니다. ~/Library/Logs/DiagnosticReports/폴더를보고 거기에서 앱의 최신 충돌 보고서를 찾으십시오. 만약 당신이 그것을 이해하지 못한다면 충돌 보고서에서 그 정보를 게시하십시오.

1

첫째, 메모리 누수가 발생해도 충돌이 발생하지 않습니다.

둘째, 콘솔을 보면 충돌 정보가 있거나 충돌이 없었습니다.

관련 문제