디버깅 방법을 알 수없는 버그에 찔린 것 같습니다. 기본적으로 시뮬레이터에서 코드를 실행하면 모든 것이 잘됩니다.Debuggin iPhone 앱에 전화
그러나 실제 장치로 갈 때 EXC_BAD_ACCESS 오류가 발생합니다. 불행히도, 디버거에서 전화를 실행할 때 저주받은 것은 정상적으로 작동하므로 오류가 발생하는 곳을 판단 할 방법이 없습니다.
나는 재현 할 수없는 하나의 스택 추적을 얻었으므로 문제를 일으키는 코드가이 코드 라인에 있다고 확신한다. 그것은) 할 수있는 방법 :
[[NSNotificationCenter defaultCenter] postNotificationName:@"SubscriberChanged" object: nil];
실제 오류에 대한 4 개의 프레임이 라인 아래 objc_msgSend에 있었다, 그러나 그것의 아이폰 SDK의 일부가 될 것으로 보인다 코드에서, 그래서 원본이없는 그것을 검사하십시오.
아무도 내가이 문제가 어디 있는지 알아낼 수있는 방법에 대한 몇 가지 지침을 줄 수 있습니까? 나는이 일을 발송할 마감 기한이 있으며, 나는 이것을 이렇게 내버려 둘 수 없다 ...
마침내 이것을 디버거에서 재현 할 수 있었다. 내가 얻은 스택 추적은 다음과 같습니다.
#0 0x30011940 in objc_msgSend()
#1 0x3054dc80 in _nsnote_callback()
#2 0x3024ea58 in _CFXNotificationPostNotification()
#3 0x3054b85a in -[NSNotificationCenter postNotificationName:object:userInfo:]()
#4 0x3054dbc0 in -[NSNotificationCenter postNotificationName:object:]()
#5 0x000027c6 in -[My2CentsAppDelegate handleMOCChange:] (self=0x1159d0, _cmd=0x2bf90, notification=0x147400) at /Users/sdussin/Desktop/UPOD Research LLC/Development/My2Cents/Classes/My2CentsAppDelegate.m:52
#6 0x3054dc80 in _nsnote_callback()
#7 0x3024ea58 in _CFXNotificationPostNotification()
#8 0x3054b85a in -[NSNotificationCenter postNotificationName:object:userInfo:]()
스택 추적의 프레임 5는 위의 행에 해당합니다. 디버거에서 충돌을 반복 할 수없는 경우
알림이 문제가되었음을 나타냅니다. 분명히 내 뾰족하게 붙은 모양의 뷰 객체의 인스턴스가 여러 개있었습니다. 로드가 완료되면 각각 알림에 등록되고 그 중 하나만 유지됩니다. 나머지는 공개되었지만 통지를 위해 등록 취소하지 못했습니다. 모두 감사합니다 ... – Steve