Crashlytics 没有给出正确的崩溃报告
Crashlytics not giving proper crash reports
我从最近的几个构建中注意到它,crashlytics 没有发送正确的崩溃报告...
在崩溃报告中,我无法调试发生崩溃的class..
虽然我也尝试过手动上传 DSYM 并也使用 fabric,但我确实遵循了他们网站上的所有说明..
我也尝试通过从 itunesconnect 下载来上传 DSYM,但没有任何东西提供正确的崩溃日志
崩溃报告示例
Fatal Exception: NSRangeException
0 CoreFoundation 0x18cbcefe0 __exceptionPreprocess
1 libobjc.A.dylib 0x18b630538 objc_exception_throw
2 CoreFoundation 0x18caad200 -[__NSArrayM removeObjectAtIndex:]
3 MyApp 0x1001a3550 _hidden#4208_ (__hidden#4311_:498)
4 MyApp 0x10012c008 _hidden#1377_ (__hidden#1463_:318)
5 MyApp 0x10012f888 _hidden#1403_ (__hidden#1463_:753)
6 MyApp 0x100132448 _hidden#1497_ (__hidden#1511_:352)
7 MyApp 0x1001dc1b8 _hidden#5257_ (__hidden#5321_:209)
8 Foundation 0x18d6c24cc __NSThreadPerformPerform
9 CoreFoundation 0x18cb7d42c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
10 CoreFoundation 0x18cb7cd9c __CFRunLoopDoSources0
11 CoreFoundation 0x18cb7a9a8 __CFRunLoopRun
12 CoreFoundation 0x18caaada4 CFRunLoopRunSpecific
13 GraphicsServices 0x18e514074 GSEventRunModal
14 UIKit 0x192d65058 UIApplicationMain
15 MyApp 0x10018b9cc main (__hidden#3728_:14)
16 libdyld.dylib 0x18bab959c start
为什么是_hidden#4208??
请仔细阅读 Matt 在
上的回答
我没有尝试过,但我认为按照 Matt 的回答中提到的指导方针,您可以解决您的问题。
试试这个
- 转到构建设置
- 然后转到 构建选项
- 在构建选项中转到 调试信息格式
- 并使用 DSYM 文件.[=31 将 Debug 的 DWARF 更改为 DWARF =]
现在再次按照 Fabric crashlytics 的步骤,您一定会得到正确的崩溃报告。
参考下面的截图
我的问题是,我是使用命令行工具创建构建的,当时没有使用位码标志。所以它向我提供了不正确的崩溃报告。
现在我在我的 IPA 中包含位码符号,然后在将它上传到 appstoreconnect.apple.com 之后,如果我下载我的 IPA 的 dsym 并将其上传到 crashlytisc 丢失的 dsym 部分,我确实得到了所有正确的崩溃报告。
Note
:我从上传到 appstoreconnect 的构建中下载了 DSYM,因为 DSYM 包含符号,只有它解决了我的问题。
最终找到确切的解决方案集Enable bitCode as a No in build setting
我从最近的几个构建中注意到它,crashlytics 没有发送正确的崩溃报告... 在崩溃报告中,我无法调试发生崩溃的class..
虽然我也尝试过手动上传 DSYM 并也使用 fabric,但我确实遵循了他们网站上的所有说明..
我也尝试通过从 itunesconnect 下载来上传 DSYM,但没有任何东西提供正确的崩溃日志
崩溃报告示例
Fatal Exception: NSRangeException
0 CoreFoundation 0x18cbcefe0 __exceptionPreprocess
1 libobjc.A.dylib 0x18b630538 objc_exception_throw
2 CoreFoundation 0x18caad200 -[__NSArrayM removeObjectAtIndex:]
3 MyApp 0x1001a3550 _hidden#4208_ (__hidden#4311_:498)
4 MyApp 0x10012c008 _hidden#1377_ (__hidden#1463_:318)
5 MyApp 0x10012f888 _hidden#1403_ (__hidden#1463_:753)
6 MyApp 0x100132448 _hidden#1497_ (__hidden#1511_:352)
7 MyApp 0x1001dc1b8 _hidden#5257_ (__hidden#5321_:209)
8 Foundation 0x18d6c24cc __NSThreadPerformPerform
9 CoreFoundation 0x18cb7d42c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
10 CoreFoundation 0x18cb7cd9c __CFRunLoopDoSources0
11 CoreFoundation 0x18cb7a9a8 __CFRunLoopRun
12 CoreFoundation 0x18caaada4 CFRunLoopRunSpecific
13 GraphicsServices 0x18e514074 GSEventRunModal
14 UIKit 0x192d65058 UIApplicationMain
15 MyApp 0x10018b9cc main (__hidden#3728_:14)
16 libdyld.dylib 0x18bab959c start
为什么是_hidden#4208??
请仔细阅读 Matt 在
我没有尝试过,但我认为按照 Matt 的回答中提到的指导方针,您可以解决您的问题。
试试这个
- 转到构建设置
- 然后转到 构建选项
- 在构建选项中转到 调试信息格式
- 并使用 DSYM 文件.[=31 将 Debug 的 DWARF 更改为 DWARF =]
现在再次按照 Fabric crashlytics 的步骤,您一定会得到正确的崩溃报告。
参考下面的截图
我的问题是,我是使用命令行工具创建构建的,当时没有使用位码标志。所以它向我提供了不正确的崩溃报告。
现在我在我的 IPA 中包含位码符号,然后在将它上传到 appstoreconnect.apple.com 之后,如果我下载我的 IPA 的 dsym 并将其上传到 crashlytisc 丢失的 dsym 部分,我确实得到了所有正确的崩溃报告。
Note
:我从上传到 appstoreconnect 的构建中下载了 DSYM,因为 DSYM 包含符号,只有它解决了我的问题。
最终找到确切的解决方案集Enable bitCode as a No in build setting