2014-10-26 1 views
6

Обычно я могу решить проблемы, но здесь я не знаю, откуда это происходит.iOS crash, EXC_BREAKPOINT, нет подсказки с Xcode 6.1

Я использую синтаксический анализ, и я просто делаю запрос в фоновом режиме с блоком завершения. Приложение вылетает при простом условии, и я едва могу идентифицировать что-либо, никоим образом не распечатать описание, ... У вас есть идея? Отправная точка ? что-нибудь ? Xcode 6.1 действительно странный, кажется, что отладчик неисправен.

Вот журнал аварии:

Thread 0 name: Dispatch queue: com.apple.main-thread 
Thread 0 Crashed: 
0 libsystem_kernel.dylib   0x000000019657a964 __kill + 8 
1 MyAPP       0x00000001001f2b70 0x10009c000 + 1403760 
2 libsystem_platform.dylib  0x0000000196610958 _sigtramp + 64 
3 MyAPP       0x00000001001318cc 0x10009c000 + 612556 
4 MyAPP       0x000000010013797c 0x10009c000 + 637308 
5 MyAPP       0x0000000100135fc4 0x10009c000 + 630724 
6 MyAPP       0x00000001002e408c 0x10009c000 + 2392204 
7 MyAPP       0x00000001001dbf78 0x10009c000 + 1310584 
8 libdispatch.dylib    0x00000001964393a8 _dispatch_call_block_and_release + 20 
9 libdispatch.dylib    0x0000000196439368 _dispatch_client_callout + 12 
10 libdispatch.dylib    0x000000019643d97c _dispatch_main_queue_callback_4CF + 928 
11 CoreFoundation     0x000000018566d69c __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 8 
12 CoreFoundation     0x000000018566b744 __CFRunLoopRun + 1488 
13 CoreFoundation     0x00000001855991f0 CFRunLoopRunSpecific + 392 
14 GraphicsServices    0x000000018e7275a0 GSEventRunModal + 164 
15 UIKit       0x0000000189eca780 UIApplicationMain + 1484 
16 Shuff       0x0000000100129474 0x10009c000 + 578676 
17 libdyld.dylib     0x0000000196462a04 start + 0 

А вот пример кода IOS:

var query = PFQuery(className: "_User") 
query.whereKey("facebookId", containedIn: ids) 

query.findObjectsInBackgroundWithBlock(){ 
    results, error in 
     if var resultsvar = results? { 
       self.functionToCall(resultsvar) 
     } 
} 

и аварии functionToCall.

Может быть, это может помочь:

0 0x00000001001679c8 в специализации Swift._ArrayBuffer._nonNative.getter: Swift.Optional [встраиваемыми]()

+0

Есть ли у вас общая точка разрыва исключения «поймать все»? http://blog.manbolo.com/2012/01/23/xcode-tips-1-break-on-exceptions – Flexicoder

+0

Nop. Я добавил ошибку. Я смог получить его, переместив код моей функции в блок. – Devous

+0

Да, но это плохо работает с Xcode 6.1, быстрым проектом и Bolt SDK. Спасибо за ваш вклад !!!! – Devous

ответ

3

Да !!! Отладчик работает не очень хорошо! Я смог найти правильные строки, выполнив следующие действия: поставьте точку останова в начале того, где, по вашему мнению, произойдет сбой приложения, шаг за шагом запомните самую нижнюю строку, которую вы прошли. Даже если отладчик падает на другую, линия, которую вы ищете, вероятно, самая низкая.

0

Это только предположение, но я работал на что-то подобное, и я думаю, что вам нужно изменить этот код:

query.findObjectsInBackgroundWithBlock(){ 
    results?, error? in 
     if var resultsvar = results { 
       self.functionToCall(resultsvar) 
     } 
} 

Обратите внимание, что я сделал оба результата и ошибки дополнительно. В моем случае я предоставлял блок, определенный в Obj-C, а в Obj-C эти объекты могут быть законными == nil. Поэтому я думаю, что вы должны определить их как опции в Swift.

 Смежные вопросы

  • Нет связанных вопросов^_^