为啥 Testflight 的崩溃日志在 Xcode 中没有符号化?
Posted
技术标签:
【中文标题】为啥 Testflight 的崩溃日志在 Xcode 中没有符号化?【英文标题】:Why aren't the crashlogs from Testflight symbolicating in Xcode?为什么 Testflight 的崩溃日志在 Xcode 中没有符号化? 【发布时间】:2017-07-07 15:33:28 【问题描述】:我刚开始从 Testflights 获取我正在开发的预发布应用程序的崩溃报告,但无论出于何种原因,Xcode 都没有正确地符号化日志。
构建可用(在此版本的 Xcode 中在此计算机上构建、存档和上传),那么我在这里缺少什么?为什么这些崩溃日志没有符号化?
【问题讨论】:
你试过从 iTunes Connect 页面下载 dSyms 吗? 我已选择从 Xcode 的构建页面下载 dSyms。 【参考方案1】:显然,这是一个在 Apple 开始接受位码时开始发生的错误。当您在 Xcode 管理器中单击“下载 dSYM...”时,并非所有 dSYM 都会被下载。这是我修复它的方法:
-
从 iTunes Connect 的构建页面手动下载 dSYM
在 Xcode 中右键单击崩溃日志并在 Finder 中打开它
您将找到的 xcrashpoint 文件是一个存档文件,因此请右键单击并显示包内容
深入了解您的 .crash 文件
将 .crash 文件复制到其他目录,例如桌面
将下载的dSYMs文件夹复制到同一目录
打开终端,cd 到文件夹
在终端中,设置开发者目录路径:
export DEVELOPER_DIR='/Applications/Xcode.app/Contents/Developer'
-
然后用符号表示文件(在此处替换您的路径和文件名):
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash name_of_crashfile.crash name_of_downloaded_dSYMs_dir/ > output.log
瞧!你有你的象征性崩溃日志。
【讨论】:
一年后,我仍然对 Xcode 9 和 Bitcode 有同样的问题。谢谢@Christian 只是补充一下,您也可以在步骤 5 中将symbolicatecrash
可执行文件复制到您的文件夹中,这样您的命令行更容易记住:-)【参考方案2】:
我仍然在 Xcode 10 中得到这个。作为一种解决方法。将崩溃日志添加到您的设备日志中,它们将被符号化。至少根据我的经验。
步骤 1- 在 Xcode Window>Devices & Simulators [在左侧选择您的设备]>查看设备日志。
步骤 2- 然后 Xcode> 窗口> 管理器 > 崩溃选项卡。 右键单击崩溃并单击在查找器中显示。这显示了 .xccrashpoint 文件。右键单击>显示包内容。深入文件夹,直到看到 .crash 文件。然后将它们拖到我们在步骤 1 中打开的设备日志列表中
【讨论】:
以上是关于为啥 Testflight 的崩溃日志在 Xcode 中没有符号化?的主要内容,如果未能解决你的问题,请参考以下文章
TestFlight 的所有新版本在发布时突然开始崩溃,并且在 Crashlytics 上没有崩溃日志
Crashlytics 使 TestFlight 应用程序崩溃,但未找到任何崩溃日志