处理Xcode中的符号文件

我想知道是否有人能告诉我,当Xcode说:“处理符号文件”后,插入你的设备,实际上是在做什么?

截图

165331 次浏览

它将从设备检索到的崩溃日志与应用程序的存档版本(标记为正确的)进行比较,以尝试检索代码中发生崩溃的位置。

详见Xcode符号文件位置

它从设备上下载(调试)符号,因此可以在特定iOS版本的设备上进行调试,也可以在该iOS版本上标记发生的崩溃报告。

因为符号是特定于CPU的,所以上面的方法只有在你不仅为特定的iOS设备导入符号,而且为特定的CPU类型导入符号时才有效。目前需要的CPU类型是armv7(例如iPhone 4, iPhone 4s), armv7s(例如iPhone 5)和arm64(例如iPhone 5s)。

因此,如果你想用armv7s来表示发生在iPhone 5上的崩溃报告,并且在特定的iOS版本中只有armv7的符号,Xcode将无法(完全)表示崩溃报告。

在Xcode Version 6.1.1 (6A2008a)中,在“Processing Symbol Files”之后,在~/Library/Developer/Xcode/iOS DeviceSupport/中创建了一个包含与设备相关的符号(包括iOS版本和CPU类型)的文件夹,如下所示:

enter image description here

讨厌的错误。我把电缆直接插到iPad上解决了这个问题。出于某种原因,如果我把iPad放在苹果的直通架上,这个过程就永远不会结束。

xCode只是复制所有崩溃日志。如果您想要加速:在分析后直接在此窗口中删除崩溃报告的数量。

Devices -> View Device Logs -> All Logs

截图

我知道这不是一个技术解决方案,但我把我的iphone通过电缆连接到电脑上,断开设备与电脑的连接,然后重新连接(再次通过电缆),因为我无法用之前提供的解决方案解决这个问题。

对我来说,象征是永恒的。我用开/关和home键强制重启我的手机。现在快速完成符号化,我开始通过xcode运行我的应用程序。

添加SDK版本对应您的iPhone iOS,例如:iOS 10.3

路径:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport


这是下载。当它完成的时候,就可以了。如图所示:

enter image description here