无法符号化崩溃日志

Can't symbolicate crash logs

我的应用程序崩溃了:

Thread 0 name:
Thread 0 Crashed:
0   LogoQuizAC                      0x0000000104705218 __hidden#563_ + 0 (__hidden#957_:0)
1   LogoQuizAC                      0x0000000104705218 _hidden#18_ + 592 (__hidden#957_:135)
2   LogoQuizAC                      0x000000010470503c __hidden#564_ + 48 (__hidden#456_:0)
3   LogoQuizAC                      0x000000010470503c _hidden#18_ + 116 (__hidden#957_:135)
4   LogoQuizAC                      0x00000001046fcd6c _hidden#17_ + 504 (__hidden#454_:96)
5   LogoQuizAC                      0x00000001046fcea0 _hidden#20_ + 36 (__hidden#456_:0)
6   Foundation                      0x0000000182770b20 __NSFireTimer + 68 (NSTimer.m:270)
7   CoreFoundation                  0x0000000181355fa0 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 32 (CFRunLoop.c:1807)
8   CoreFoundation                  0x0000000181355ba0 __CFRunLoopDoTimer + 1064 (CFRunLoop.c:2415)
9   CoreFoundation                  0x0000000181354ffc __CFRunLoopDoTimers + 328 (CFRunLoop.c:2575)
10  CoreFoundation                  0x000000018134eee4 __CFRunLoopRun + 1936 (CFRunLoop.c:3090)
11  CoreFoundation                  0x000000018134e21c CFRunLoopRunSpecific + 600 (CFRunLoop.c:3242)
12  GraphicsServices                0x0000000198f18784 GSEventRunModal + 164 (GSEvent.c:2259)
13  UIKitCore                       0x0000000183d8eee8 -[UIApplication _run] + 1072 (UIApplication.m:3253)
14  UIKitCore                       0x0000000183d9475c UIApplicationMain + 168 (UIApplication.m:4707)
15  LogoQuizAC                      0x000000010453a404 main + 68 (RLockedCell.swift:21)
16  libdyld.dylib                   0x000000018100e6b0 start + 4

我几乎尝试了所有方法,但可以象征崩溃。

我尝试使用 symbolicatecrash,然后是这些帖子:

How to symbolicate crash log Xcode?

但是没有任何成功。

我做错了什么?我如何找出导致崩溃的原因?

好消息是它在您的代码中崩溃,而不是在操作系统或库代码中崩溃,因此您有很好的机会调试它。您崩溃的代码 运行 关闭了计时器。有时会看到这些错误,因为在测试中,您只是在测试应用程序。但在现实世界中,这些计时器会在您不期望它们时触发。

例如,某人 运行 您的应用程序,然后在使用另一个应用程序时将其置于后台,或者例如他们在使用该应用程序时接到 phone 电话。如果附上 .crash 文件的完整内容,它将提供有关崩溃原因的更多信息。

您可以做的另一件事是将断言放入您的代码中,例如在您依赖非空的每个对象的计时器回调函数中。

您可能会发现您的应用正在尝试在屏幕上绘图,但它处于后台。这是在现场使用定时器的游戏中常见的崩溃原因。这听起来像是一个概括,但它是一个建议,尝试让您以不同的方式思考客户面临的现实世界环境,这可能是失败的原因。