问题标签 [symbolicate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
25 回答
247849 浏览

ios - 符号化 iPhone 应用程序崩溃报告

我正在寻找尝试象征我的 iPhone 应用程序的崩溃报告。

我从 iTunes Connect 中检索了崩溃报告。我有我提交到 App Store 的应用程序二进制文件,并且我有作为构建的一部分生成的 dSYM 文件。

我将所有这些文件放在一个由 Spotlight 索引的目录中。

现在怎么办?

我试过调用:

它只是输出与崩溃报告中相同的文本,而不是符号化的。

难道我做错了什么?

0 投票
2 回答
699 浏览

iphone - symbolicatecrash 没有为我自己的函数提供方法名称

使用 symbolicatecrash 调试崩溃日志时遇到了一个奇怪的问题。在我使用崩溃的构建的 .dSYM 文件运行 symbolicatecrash 后,它为我提供了所有 Foundation 类的函数名称,但不是我自己的应用程序的函数名称。XCode 中是否有一些我可能会丢失的设置?GENERATE DEBUG SYMBOLS 打开为 YES。

谢谢

0 投票
1 回答
2160 浏览

iphone - 仅在一部手机上发生的 iPhone 崩溃

我在一部手机上看到了无法在其他手机上复制的特定崩溃。我已经复制了下面的符号化崩溃文件。有没有其他人见过这样的事情?任何人都可以对此有所了解吗?

0 投票
1 回答
1304 浏览

iphone - iTunesConnect 崩溃日志是部分符号化的;不显示行号

我的 XCode 3.2.5 构建的应用程序的 iTunesConnect 崩溃日志显示方法名称,但不显示行号。例如,在我粘贴在下面的简短崩溃报告中,它显示了这一点:

0x000f5ef8 -[MyTableViewController dealloc] + 120

这里有两件事让我感到困惑,我希望能对此有所了解。首先是为什么来自 iTunesConnect 的原始 .crash 文件已经部分符号化:它显示了类和方法名称,但没有显示源代码文件和行号。我希望原始的 iTunesConnect 崩溃日志只显示十六进制地址。据我了解,只有在我将崩溃日志下载到本地系统并使用适当的工具(XCode Organizer、symbolicatecrash、atos、gdb x/i 命令等)和确切的应用程序二进制文件和 dSYM 文件(那些具有匹配 UUID 的),我会看到类、方法、源代码文件和行号的完整符号。即使我在 Windows 框中下载并查看崩溃日志,它也显示为部分符号。我担心我的分发二进制文件必须包含一些调试符号才能使此信息显示在原始崩溃日志中,尽管在其分发目标设置中设置了“条带链接项目”。这里的任何见解都会很棒。

第二件事让我感到困惑,也是我在修复这次备受瞩目的崩溃时更直接关心的事情,是抵消业务。我已经非常小心地找到了具有匹配 UUID 的 dSYM 和应用程序二进制文件,将它们放在我的主目录中,以便 Spotlight 等人可以找到它们,无论我做什么,我都无法将该偏移量转换[MyTableViewController dealloc] + 120为源代码文件(我知道它是 MyTableViewController.m)和行号。我用原始的 iTunesConnect .crash 文件尝试了以下技巧:

  • XCode Organizer:它的“符号化”不会影响崩溃日志的变化——它是一样的。
  • symbolicatecrash:在详细模式下它并没有真正抱怨任何事情,并且输出的crashlog是一样的
  • gdb:使用与 XCode 3.2.5 相同的 gdb 和 -arch 设置来生成分发版本,并根据这篇文章加载匹配的应用程序二进制和 dSYM 符号,gdb 'x/i' 和 'info line *' 命令告诉我[MyTableViewController dealloc] + 120对应于我们代码库中完全不相关的一段完全不同的文件——甚至是一个 .h 文件!大雁追逐。

这有些不对劲。即使确保崩溃报告、应用程序二进制文件和 dSYM 文件中的 UUID 完全相同......这些工具都不能产生实际的行号,并且以低级方式进行操作让我大吃一惊。知道确切的行号对于解决此问题至关重要,因为我们无法在内部重现此崩溃,所以我们在这里盲目飞行。这看起来是一个简单的过度释放对象,但不清楚它到底是哪个对象,我们也无法从上下文中分辨出来。我想知道是否有一些盗用的 XCode 构建设置以某种方式破坏了符号化过程。

谢谢你的时间!

以下是来自 iTunesConnect 的删节的原始 .crash 日志。

0 投票
2 回答
2097 浏览

iphone - iPhone 应用程序档案可以在另一台计算机上导出和导入吗?

我有一个尚未发布的 iPhone 应用程序,但我想确保在创建存档时可以符号化崩溃报告。目前,这适用于创建存档/IPA 的计算机。

但是为了确保我可以在另一个盒子或另一个用户上表示崩溃报告,我想弄清楚如何在另一台计算机上导出和导入存档。到目前为止,我可以找到“.xcarchive”目录,但是当我将它放在另一台计算机上并双击它时,它会显示无法安装存档和“存档可能已损坏或无法读取”。

如果我手动将文件放在正确的位置,它将在 XCode 的 Organizer 中列出,但我的崩溃报告没有符号化。

任何想法我做错了什么,或者有办法对.dSYM文件做些什么。

0 投票
2 回答
945 浏览

iphone - iPhone - 符号崩溃文件后没有意义

Apple 已向我发送了一份来自申请批准的应用程序的崩溃日志。尽管我在 3 台设备上的所有测试都没有崩溃,但他们说它在启动时就崩溃了。符号化文件后,我明白了。

看着这个,对我来说毫无意义。我看不出错误在哪里。我知道它在线程 0 上崩溃了,但是哪一行?

有什么线索吗?谢谢。

0 投票
1 回答
13720 浏览

xcode - 如何从我从 iTunes Connect 下载的 XCode4 中的 .crash 文件中进行符号化

这里有一个关于符号化 .crash 文件的类似问题。然而,这个问题并未涵盖如何在 Xcode 4 中轻松进行符号化。

我已经从 iTunes connect 下载了 .crash 文件。我所有的生产版本都已存档在 Xcode 中。当我然后转到设备>设备日志并尝试导入 .crash 文件时,没有任何反应。崩溃列表根本没有增加。

要补充的是,我一直在通过先存档来提交我的应用程序。似乎没有与旧 Xcode 版本中相同的构建文件夹。现在,在使用 Xcode4 构建的应用程序中,构建文件夹似乎是空的。看起来构建现在位于 ~/Library/Developer/Xcode/DerivedData/{application-named-folder}/Build/Products/{debug/release 文件夹}

根据这个最佳答案,在以前的版本中,这听起来像是你必须做的所有事情来象征你的崩溃报告。XCode4 有什么新东西吗?我环顾四周并尝试了很多事情,但似乎无法将这个 .crash 文件导入到 Organizer 中。

0 投票
3 回答
18611 浏览

xcode - 如何符号化 Apple 发布的 Mac OSX 崩溃报告?

对于 iOS 崩溃报告,只需将崩溃报告拖放到 Organizer 即可。

符号化 iPhone 应用程序崩溃报告

但此方法不适用于 Mac OSX 崩溃报告。

如何符号化我的 Mac OSX 崩溃报告?

谢谢 !!

0 投票
1 回答
164 浏览

iphone - 符号化输出 - 理解错误

我的应用程序正在崩溃“ 14 ”。我有一个名为“ ClientDetail ”的业务对象,但该对象没有布尔值。它指的是什么?也没有第784行,我猜+ 784不是行号引用吗?

在 ProjectViewController 构造函数中,我将传入的“客户端”分配给本地客户端。

0 投票
4 回答
6151 浏览

ios - How do I reliably get Instruments 4.x to symbolicate?

I have a bit of a dilemma — no matter what I do, I cannot get Apple's Instruments.app to symbolicate any of the included instruments while I'm profiling on my devices (it works OK in the iOS Simulator).

I've tried just about everything I can think of, including:

  • Checking that I'm actually building a dSYM
  • Switching between Debug and Release build schemes
  • Making sure that the signing certificate being used in my Development cert
  • Adding and removing my Derived Data folder from Spotlight's Privacy list
  • Clean & Build before profiling
  • Removing the Derived Data folder before building and profiling

I'm not sure where to go from here — I had symbols for an hour or two earlier in the week, but I just can't get them to show up at all anymore. It would be great to figure out what the mystical incantation is to make Instruments always find my app's symbols.