我们使用 Parse.com 崩溃报告。集成很简单,符号信息的上传工作(日志文件中的成功消息)和崩溃报告到达 Parse.com 网站。
但是,堆栈跟踪包含损坏的名称并且没有我们自己代码的行信息,就好像我们没有上传符号信息一样,例如:
0 CoreFoundation __exceptionPreprocess @ 0x84
1 libobjc.A.dylib objc_exception_throw @ 0x38
2 CoreFoundation -[NSException raise] @ 0x8
3 MyApp _TToFC9MyApp23TestViewController13viewDidAppearfS0_FSbT_ @ 0x1f4
4 UIKit -[UIViewController _setViewAppearState:isAnimating:] @ 0x24c
符号信息上传成功。否则崩溃报告将包含警告:This stack trace is unsymbolicated。要获取符号... 但我们没有收到该警告。
会不会和 Release模式下的一些编译器设置有关(我们只上传发布版本的符号)?或者是什么导致了未符号化的堆栈跟踪?
最佳答案
我假设您使用的是 Swift? - 如果是这样,那么 Mike Ash 博客上有一篇关于这种情况发生的原因和方式的精彩文章:https://mikeash.com/pyblog/friday-qa-2014-08-15-swift-name-mangling.html
您还可以通过启动终端并运行 xcrun swift-demangle SYM
来分解名称。 - 但您需要在编译应用程序时使用的相同版本的 swift 编译器上执行此操作。
谢谢, 丹
关于ios - Parse.com 崩溃报告 : stack trace is not symbolicated,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29413115/