Cra sh при вызове NotificationCenter addObserver - PullRequest
0 голосов
/ 14 января 2020

Я новичок в этом проекте, и Firebase был добавлен только недавно, поэтому у меня возникла проблема, чтобы выяснить причину кратера sh (который я не могу воспроизвести локально).

Это EXC_BAD_ACCESS KERN_INVALID_ADDRESS на dispatch_call_block_and_release. Поэтому это должно быть проблема с памятью, пытаясь получить доступ к объекту, который уже был освобожден.

Последняя отслеживаемая строка - это addObserver вызов Notification Center, а затем трассировка вызова продолжается несколькими вызовами но не показывая точную строку кода. Поскольку я не вижу ничего плохого в этом наблюдателе, я задаюсь вопросом: важна ли эта линия? Или может случиться так, что приложение аварийно завершает работу в другом потоке, поэтому трассировка вызовов не имеет значения?

EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x0000000000000008
Crashed: com.apple.main-thread
0  MyPod                          0x103dafb18 (Missing)
1  MyPod                          0x103daf564 (Missing)
2  MyPod                          0x103daf9fc (Missing)
3  MyApp                          0x103b12ffc (Missing)
4  MyPod                          0x103daf268 (Missing)
5  MyPod                          0x103dae844 (Missing)
6  MyPod                          0x103daef64 (Missing)
7  MyPodClient                    0x103d40fd0 (Missing)
8  MyPodClient                    0x103d3dcb8 (Missing)
9  libdispatch.dylib              0x1a9e38610 _dispatch_call_block_and_release + 24
10 libdispatch.dylib              0x1a9e39184 _dispatch_client_callout + 16
11 libdispatch.dylib              0x1a9deb190 _dispatch_main_queue_callback_4CF$VARIANT$mp + 1044
12 CoreFoundation                 0x1aa0ea5e4 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
13 CoreFoundation                 0x1aa0e55d8 __CFRunLoopRun + 2004
14 CoreFoundation                 0x1aa0e4adc CFRunLoopRunSpecific + 464
15 GraphicsServices               0x1b406a328 GSEventRunModal + 104
16 UIKitCore                      0x1ae1dfae0 UIApplicationMain + 1936
17 MyApp                          0x102e0bce0 main + 21 (PlayerPlugin.swift:21) //-> This is the line in which a func is called, and inside this func observers are added.

спасибо

пс. Я не знаю, помогает ли это, но для некоторых кратких sh отчетов (но не для всех) я получаю в разделе KEYS следующую строку:

crash_info_entry_0
CoreUI: deallocating _CUIInternalLinkRendition 7113 /private/var/containers/Bundle/Application/A6721767-C6DD-43AB-B2E0-094D4CBD12D6/MyApp.app/Assets.car

Это связано с активами? Однако это больше похоже на следствие cra sh, чем на причину.

...