Google의 충돌 로그를 분석하는 동안 상당히 일반적인 충돌은 내 클래스 중 하나에서 발생하지도 않는 것으로 나타났습니다. 이것들은 외부의 충돌 로그이므로 문제를 재현 할 수 없습니다.응용 프로그램이 내 코드를 거치지 않고 충돌합니다
프레임 워크를 디버깅 할 수 없기 때문에이 문제를 해결하기위한 실용적인 접근 방법이 무엇인지 궁금합니다.
내가 가진 유일한 단서는 SIGSEGV가 세그멘테이션 오류이거나 유효하지 않은 포인터 일 수 있다는 것입니다. 하지만 내 수업 이후로 말한 것처럼 은 직접적으로 관련되어있는처럼 보입니다.
충돌이 :
Exception Type: SIGSEGV
Exception Codes: SEGV_ACCERR at 0x6b636f6c
Crashed Thread: 0
Thread 0 Crashed:
0 libobjc.A.dylib 0x365c7f94 objc_msgSend + 43
1 CoreFoundation 0x31cd23fd -[NSObject performSelector:withObject:withObject:] + 52
2 UIKit 0x3291cfaf -[UIApplication sendAction:to:from:forEvent:] + 62
3 UIKit 0x3291cf6b -[UIApplication sendAction:toTarget:fromSender:forEvent:] + 30
4 UIKit 0x3291cf49 -[UIControl sendAction:to:forEvent:] + 44
5 UIKit 0x3291ccb9 -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 492
6 UIKit 0x3291d5f1 -[UIControl touchesEnded:withEvent:] + 476
7 UIKit 0x3291bad3 -[UIWindow _sendTouchesForEvent:] + 318
8 UIKit 0x3291b4c1 -[UIWindow sendEvent:] + 380
9 UIKit 0x3290183d -[UIApplication sendEvent:] + 356
10 UIKit 0x329010e3 _UIApplicationHandleEvent + 5826
11 GraphicsServices 0x3572d22b PurpleEventCallback + 882
12 CoreFoundation 0x31d4c523 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 38
13 CoreFoundation 0x31d4c4c5 __CFRunLoopDoSource1 + 140
14 CoreFoundation 0x31d4b313 __CFRunLoopRun + 1370
15 CoreFoundation 0x31cce4a5 CFRunLoopRunSpecific + 300
16 CoreFoundation 0x31cce36d CFRunLoopRunInMode + 104
17 GraphicsServices 0x3572c439 GSEventRunModal + 136
18 UIKit 0x3292fe7d UIApplicationMain + 1080
19 MyApp 0x0000321f main (main.m:14)
어쩌면 정적 생성자입니까? 정적 블록은 주 응용 프로그램 (적어도 C++에서는 실행되었지만 Objective C는 다르지 않습니다.) – BigMike
UIControl/UIButton의 대상이 단추를 눌렀을 때 더 이상 존재하지 않는 개체로 설정되어있는 것처럼 보입니다. –
문제가 해결 되었습니까? 문제의 원인은 무엇입니까? – foogry