2015-04-24 3 views
1

Ниже журналы:Как найти, где приложение рушится?

Crashed: com.apple.main-thread 
EXC_BAD_ACCESS KERN_INVALID_ADDRESS at 0x0000000c 

0 libobjc.A.dylib 
objc_msgSend + 5 
respondsToSelector: 
1 
CoreLocation  
(null) + 23946 
2 
CoreLocation  
(null) + 5230 
3 
CoreLocation  
(null) + 972 
4 
CoreFoundation 
__CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12 
5 
CoreFoundation 
__CFRunLoopDoBlocks + 216 
6 
CoreFoundation 
__CFRunLoopRun + 1714 
7 
CoreFoundation 
CFRunLoopRunSpecific + 476 
8 
CoreFoundation 
CFRunLoopRunInMode + 106 
9 
GraphicsServices  
GSEventRunModal + 136 
10 UIKit 
UIApplicationMain + 1440 
11 
Wines 
main.m line 40 
main 
+0

Там вообще зеленая стрелка слева от текстового редактора (серая область). Первое, что приходит на ум в связи с этой ошибкой, - проверить, является ли какой-либо объект вокруг точки останова NULL/NIL – Gasim

+0

Это не происходит каждый раз. У меня так много переменных и объектов, и трудно найти, какой из них установлен в NULL/NIL. Я понимаю, что объект пытается прочитать память и которая перенастраивает NULL, как я могу ее найти? Я разрешаю NSZombie и пытаюсь посмотреть, что происходит? Но, как я уже сказал, это не происходит каждый раз. – user3908542

ответ

0

На Mac вы можете найти трассировку ваших аварий в консоли приложение под пользователя диагностических отчетов.

Там вы можете найти файл аварии. Поскольку ваш сбой, вероятно, происходит в вашем пользовательском коде, вы, вероятно, отправляете какие-то рыбные значения.

Вы не можете определить, где произошла авария, так как ваша обратная трасса отключена. Поэтому либо пытайтесь скомпилировать свой код с помощью символов отладки, либо использовать dtrace/dtruss для отладки вашего приложения.

objc_msgSend является стандартной функцией Objective-C.

Читайте также: