Xcode 4无法表示崩溃日志

And*_*csu 37 iphone debugging xcode cocoa-touch adhoc

我刚刚将我的Xcode更新为4.0.1.现在我对从我的测试仪甚至是我的手机收到的崩溃日志的符号表有疑问.

当我构建AdHoc发行版时,我正在使用"Arhive"方案,然后我创建了*.ipa文件,用我的开发人员凭据唱出来.

这是问题吗?我找不到这些AdHoc版本的dSym文件.

Sim*_*ker 24

进一步回到coob的答案,我发现将这些目录添加到Spotlight的忽略列表(系统偏好设置→聚光灯→隐私)有助于:

  • ~/Library/Developer/Xcode/DerivedData/ (Xcode 4构建文物)
  • ~/Library/Application Support/iPhone Simulator/ (iPhone模拟器的文件系统)

像这样:

Spotlight设置可以抑制无用的.app文件

(有关其他详细信息,请参阅此博客文章.)

更新:来自joerick的评论:"这有效,但它也意味着Instruments.app找不到调试符号,所以我不得不从隐私列表中删除DerivedData来进行一些分析." - 如果您使用仪器,请记住这一点.

  • 这有效,但它也意味着Instruments.app找不到调试符号,所以我不得不从隐私列表中删除DerivedData来进行一些分析. (3认同)
  • 我没有弄乱Spotlight首选项,而是从上面推荐的目录中删除了所讨论的应用程序的所有版本,并且该符号再次为该应用程序工作.我更喜欢这个,而不是破坏仪器和任何其他工具.干杯! (3认同)

Chr*_*lay 24

对我来说,323行编辑和Spotlight排除都没有修复它.所以我跟踪了问题,symbolicatecrash在github上发布了一个修补版本.只需替换/ usr/local/bin/symbolicatecrash,您的iOS崩溃报告将再次开始象征.

此修补程序可能不适用于Mac应用程序,因为它会假设.xcarchive目录的结构似乎不适用于桌面应用程序.

编辑:如果Spotlight没有为您的档案编制索引,您可能仍会遇到问题.您可以通过在终端中运行以下命令来强制索引:

mdimport ~/Library/Developer/Xcode/Archives/
Run Code Online (Sandbox Code Playgroud)

故障排除更多信息在这里.

  • 警告:当我尝试使用此脚本时,它象征着我的.crash文件,但符号都是错误的.堆栈中显示的方法来自代码的完全不同的部分,这些部分是不相关的并且脱离了上下文.我最终能够通过从我的.xcarchive复制我的.app和.dSYM文件并将它们放在崩溃报告旁边来获得正确的符号化输出.我确认Spotlight可以找到这些文件,然后我将崩溃报告拖到管理器中. (7认同)