【发布时间】:2014-07-31 17:19:37
【问题描述】:
我们编写的一个应用程序在客户的装有 iOS 7.1.1 的 iPad Air 上随机崩溃。在其他 iPad 类型上运行该应用程序的用户没有遇到此问题。客户通过使用 iTunes 提取崩溃日志向我们发送了崩溃日志,我们发现大约 21 次崩溃都是由于以下原因:
Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000001, 0x000000000000defe
Triggered by Thread: 9
Thread 9 Crashed:
0 libsystem_c.dylib 0x3a00706b 0x39fbd000 + 303211
1 libsystem_c.dylib 0x3a007001 0x39fbd000 + 303105
2 libsystem_malloc.dylib 0x3a07dd21 0x3a07b000 + 11553
3 libobjc.A.dylib 0x39aa83a5 0x39a9e000 + 41893
4 libobjc.A.dylib 0x39ab0b67 0x39a9e000 + 76647
5 CoreFoundation 0x2edfc181 0x2edf7000 + 20865
6 CoreFoundation 0x2ee085b1 0x2edf7000 + 71089
7 libobjc.A.dylib 0x39ab0b67 0x39a9e000 + 76647
8 libobjc.A.dylib 0x39ab10cf 0x39a9e000 + 78031
9 libobjc.A.dylib 0x39ab1b49 0x39a9e000 + 80713
10 libsystem_pthread.dylib 0x3a0bc6cf 0x3a0bb000 + 5839
11 libsystem_pthread.dylib 0x3a0bc44f 0x3a0bb000 + 5199
12 libsystem_pthread.dylib 0x3a0bd1b5 0x3a0bb000 + 8629
13 Foundation 0x2f8086ff 0x2f7e7000 + 136959
14 Foundation 0x2f8b4a29 0x2f7e7000 + 842281
15 libsystem_pthread.dylib 0x3a0bd957 0x3a0bb000 + 10583
16 libsystem_pthread.dylib 0x3a0bd8c7 0x3a0bb000 + 10439
17 libsystem_pthread.dylib 0x3a0bbae4 0x3a0bb000 + 2788
问题在于 Xcode 5.1.1 正确地符号化了我们应用程序中的崩溃日志语句,但它未能符号化来自框架的语句,因此我们无法看到该线程崩溃的原因。
帮助非常感谢。
更新:已将其标记为重复的问题解决了 dSYM 文件未正确加载且崩溃日志未显示应用程序中的代码的问题。我可以很好地看到应用程序中的语句,因为我已经成功加载了 dSYM,甚至通过交叉引用 UUID 检查了 dSYM 的有效性。我的问题是框架语句(与 iOS SDK 本身相关的代码)没有被符号化。我看不出该问题中的任何答案可以解决这个问题。这是另一个线程,它显示了正确符号化的应用程序语句:
Thread 0:
0 libsystem_kernel.dylib 0x3a056544 0x3a043000 + 79172
1 libsystem_c.dylib 0x39fc7745 0x39fbd000 + 42821
2 Foundation 0x2f8b411d 0x2f7e7000 + 839965
3 MyAppName 0x00255477 -[xxxx dismissView] (xxx.m:436)
4 MyAppName 0x00259447 -[xxxx goToSessionSummaryView] (xxx.m:1459)
5 CoreFoundation 0x2eecf450 0x2edf7000 + 885840
6 CoreFoundation 0x2ee199a3 0x2edf7000 + 141731
7 MyAppName 0x001b6523 -[GTMHTTPFetcher invokeFetchCallback:target:data:error:] (GTMHTTPFetcher.m:878)
8 MyAppName 0x001b643b -[GTMHTTPFetcher invokeFetchCallbacksWithData:error:] (GTMHTTPFetcher.m:852)
9 MyAppName 0x001b6db5 -[GTMHTTPFetcher connectionDidFinishLoading:] (GTMHTTPFetcher.m:1087)
10 Foundation 0x2f80b245 0x2f7e7000 + 148037
11 Foundation 0x2f80b185 0x2f7e7000 + 147845
12 Foundation 0x2f80b0a1 0x2f7e7000 + 147617
13 CFNetwork 0x2eb31295 0x2ea87000 + 696981
14 CFNetwork 0x2eb2fe99 0x2ea87000 + 691865
15 CoreFoundation 0x2edff197 0x2edf7000 + 33175
16 CFNetwork 0x2eac7997 0x2ea87000 + 264599
17 CFNetwork 0x2eac7857 0x2ea87000 + 264279
18 CFNetwork 0x2eac76e5 0x2ea87000 + 263909
19 CoreFoundation 0x2ee96fed 0x2edf7000 + 655341
20 CoreFoundation 0x2ee964b3 0x2edf7000 + 652467
21 CoreFoundation 0x2ee94ca3 0x2edf7000 + 646307
22 CoreFoundation 0x2edff765 0x2edf7000 + 34661
23 CoreFoundation 0x2edff547 0x2edf7000 + 34119
24 GraphicsServices 0x33d366cf 0x33d2d000 + 38607
25 UIKit 0x3175e88d 0x316f0000 + 452749
26 MyAppName 0x00108a63 main (main.m:15)
27 MyAppName 0x000fbe14 start + 36
感谢您的帮助!
【问题讨论】:
-
您的 Mac 上有 iOS 7.1.1 的 64 位符号吗?您可以通过将运行 iOS 7.1.1 的 64 位 iOS 设备连接到该 Mac 来获取它们。
-
@mjouni 你有想过这个吗?我在 Xcode 9.2 和 iOS 11.2 上遇到了同样的问题。
标签: ios objective-c xcode