Я работаю над приложением для iOS, которое использует Realm, которое установлено / управляется через Cocoapods. Мое приложение время от времени падает, и у меня возникают проблемы с устранением неполадок, поскольку моя трассировка стека не отображает имена методов, относящихся к Realm. Я развертываю отладочную сборку своего приложения на телефоне через XCode, и у меня для параметра «Формат информации отладки» задано значение DWARF с файлом dSYM. В приведенной ниже трассировке стека видно, что мой код символизирован, но имена методов в Realm - это просто адреса и смещения. К сожалению, я немного новичок в устранении неполадок с XCode, но я предполагаю, что это означает, что символы отладки Realm не могут быть найдены? Если кто-нибудь может объяснить мне, как это исправить, я буду очень признателен!
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Triggered by Thread: 0
Application Specific Information:
abort() called
Filtered syslog:
None found
Last Exception Backtrace:
0 CoreFoundation 0x18316ad8c __exceptionPreprocess + 228
1 libobjc.A.dylib 0x1823245ec objc_exception_throw + 55
2 Realm 0x10814e238 0x108030000 + 1172024
3 Realm 0x10814ffa0 0x108030000 + 1179552
4 Realm 0x10814ff74 0x108030000 + 1179508
5 MyAppName 0x104af31a4 closure #1 in closure #2 in processOutgoingMessage(outgoingMessage:) + 4452772 (ProcessOutgoingMessage.swift:51)
6 MyAppName 0x1046cd168 _T0Ieg_IeyB_TR + 102760 (DataSource.swift:0)
7 libdispatch.dylib 0x182a5caa0 _dispatch_call_block_and_release + 23
8 libdispatch.dylib 0x182a5ca60 _dispatch_client_callout + 15
9 libdispatch.dylib 0x182a9dd80 _dispatch_main_queue_callback_4CF$VARIANT$armv81 + 963
10 CoreFoundation 0x183113070 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 11
11 CoreFoundation 0x183110bc8 __CFRunLoopRun + 2271
12 CoreFoundation 0x183030da8 CFRunLoopRunSpecific + 551
13 GraphicsServices 0x185015020 GSEventRunModal + 99
14 UIKit 0x18d04d758 UIApplicationMain + 235
15 MyAppName 0x104a7919c main + 3953052 (AppDelegate.swift:18)
16 libdyld.dylib 0x182ac1fc0 start + 3
ОБНОВЛЕНИЕ - как выяснилось, в настройках сборки для проекта Pods (напомним, что я использую Realm через Cocoapods) необходимо было также установить формат информации отладки DWARF с файлом dSYM для отладки строит. Мое приложение еще не рухнуло, но я заметил, что когда на этот раз я очистил и перестроил приложение, оно, похоже, включало символы отладки для Realm, так что надеемся.