【问题标题】:Processing Symbol Files in Xcode在 Xcode 中处理符号文件
【发布时间】:2013-10-11 20:14:39
【问题描述】:

我想知道是否有人可以告诉我 Xcode 在插入设备后显示“处理符号文件”时实际上在做什么?

【问题讨论】:

  • 我不得不等待很长时间......大约 30 分钟,后来在设备上部署成功。也许 Mac 需要时间来识别设备。

标签: iphone ios xcode


【解决方案1】:

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

由于符号是特定于 CPU 的,因此上述方法仅在您为特定 iOS 设备以及特定 CPU 类型导入符号时才有效。目前需要的 CPU 类型是 armv7(例如 iPhone 4、iPhone 4s)、armv7s(例如 iPhone 5)和 arm64(例如 iPhone 5s)。

因此,如果您想符号化发生在带有 armv7s 的 iPhone 5 上的崩溃报告,并且只有该特定 iOS 版本的 armv7 符号,Xcode 将无法(完全)符号化崩溃报告。

【讨论】:

  • 我最近发现 Xcode 不会处理来自我的 iPad2 或我的 iPhone4s 的符号文件。它总是会在中途停止并且永远不会完成,即使在半小时之后也是如此。最后,我让它工作了……通过断开一条全新的连接器电缆并将其直接插入我的 Mac Mini(以前我是通过延长电缆插入的)。我得出的结论是,糟糕的连接确实会影响符号更新。
  • 那么为什么不将这些符号与 xcode 发行版捆绑在一起呢?为什么要费尽心思从设备中提取它们?
  • 每个 (iOS) 版本的所有架构的符号大小都大于 1GB,并且每个错误修复版本并不总是有 Xcode 更新。 Xcode 仅通过 API 更新/更改进行更新。
  • @VladimirDespotovic 你想在这里解决什么问题?这不是问题。这需要完成,因为调试器需要此数据,并且对于崩溃符号,这也是需要的。这个问题也没有说明问题。
【解决方案2】:

在 Xcode 版本 6.1.1 (6A2008a) 中,在“处理符号文件”之后,在 ~/Library/Developer/Xcode/iOS DeviceSupport/ 中创建了一个包含与设备相关的符号(包括 iOS 版本和 CPU 类型)的文件夹像这样:

【讨论】:

  • 什么在 (null) (null) ?
  • @AntonTropashko (null) ((null)) 实际上。
  • 在我的例子中,“(null)((null))”包含......什么都没有!
  • 因为 Sym 文件是在需要时下载的,所以我删除了这个位置的大部分文件夹。它在我的 SSD 上释放了超过 24 gig!
  • @Sjakelien 文件夹标记良好
【解决方案3】:

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

Devices -> View Device Logs -> All Logs

【讨论】:

  • @QLiu 当然。似乎是错误,或者日志比预期的要大。
  • 如何访问这些日志? (我有 0 次使用 xCode 的经验)
  • @Ben Window -> 设备 -> 在左侧选择您的设备 -> 完成
【解决方案4】:

在我的例子中,象征性是永远的。我用开/关和主页按钮强制重启我的手机。现在很快完成了符号化,我开始通过 xcode 运行我的应用程序。

【讨论】:

    【解决方案5】:

    我知道这不是一个技术解决方案,但我让我的 iphone 通过电缆与计算机连接,然后断开设备与计算机的连接并再次连接(再次通过电缆)对我有用,因为我无法用之前提供的解决方案。

    【讨论】:

    • 这可能是幸运的时机……或者对您采取的其他行动的延迟反应。我断开并重新连接,然后它又回到了这个模式,直到它完成。
    【解决方案6】:

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

    查看xcode symbol file location了解详情

    【讨论】:

      【解决方案7】:

      烦人的错误。我通过将电缆直接插入 iPad 解决了这个问题。出于某种原因,如果我将 iPad 放在 Apple 的直通支架上,这个过程将永远无法完成。

      【讨论】:

      • 这是一个错误,因为如果我把它放在展台上,它永远不会完成。
      • 我知道答案表达得不好,但它确实适合我,直接连接到为我解析的 USB 端口,尽管 USB 集线器在任何其他任务中都可以正常工作
      【解决方案8】:

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

      路径:

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


      正在下载。完成后,就OK了。如图:

      【讨论】:

        猜你喜欢
        • 2023-03-23
        • 1970-01-01
        • 2010-09-26
        • 2012-01-08
        • 2010-11-22
        • 1970-01-01
        • 1970-01-01
        • 2015-12-23
        相关资源
        最近更新 更多