问题标签 [dsym]
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.
ios - iTunes Connect:发送构建以供审核时删除了 dSYM
几周以来,我的应用程序中的符号化日志出现了问题:我上传了一个二进制文件并包含了这些符号。在 TestFlight(内部和外部)中使用构建时,一切正常,我得到了我期待的崩溃日志。但是,一旦我将构建(我之前检查过。iTunes Connect 告诉我,dSYM 可用)发送到应用程序审查,dSYM 就会消失。
起初我认为,发布版本从不包含符号,但我的第一个发布版本包含符号。那么为什么我的最新版本都没有 dSYM?第一个有这个问题的版本是在今年 10 月 31 日上传的。
ios - iOS 8 - 无法符号化来自自定义动态框架的符号
这是我所拥有的:-名为 VacationSpots 的 iOS 应用程序(.APP 文件)
应用 dSYM 文件
名为 VSUtilities 的动态框架(.framework 文件)
动态框架 dSYM 文件
这是示例项目源代码:https ://www.dropbox.com/s/nl32xlk98lnl1mv/VacationSpots.zip?dl=0
我通过强制解开 nil 选项使应用程序在启动时崩溃。
以下是符号化崩溃报告的一部分。请注意,VSUtilities 调用没有符号化:
这是symbolicatecrash
命令输出的一部分:
ios - 如何像 Crashlytics 和开源 PLCrashReporter 那样获得崩溃的线路和方法
正如我所提到的,我正在尝试恢复崩溃的线路以及它发生的功能。
我需要提到我已经尝试了 AppDelegate 中的下一个代码,并且我得到了没有符号化的堆栈和类以及抛出的错误:
但是通过使用这些我没有得到崩溃的线路,因为我打算将它保存在 CoreData 中。
此外,我对 xcode 方法不感兴趣:“添加异常断点”或其他方法:XCode > Window > Devices > 查看设备上的崩溃日志、测试飞行方法或在应用程序中将其他框架实现为 Crashlytics。
我提到这些是因为我对通过代码完成的方式非常感兴趣。
还可以在制作应用存档时获取应用存档的 dsym,并使用使用 Bash 编写的 RunScript 将其上传到服务器。因此,如果需要达到崩溃线,我可以使用 dsym。
另外我知道可以使用下一个方法来获取当前代码行:LINE和 _FUNCTION__ 来获取函数名称。
此外,如果您可以提供来自开源 PLCrashReporter 的代码示例,说明他们是如何做到的,我会非常感激。
比你们都提前!:)
ios - 尽管有 dSYM,但无法手动符号化 iOS 崩溃日志
我无法让 Xcode 7 符号化我由 App Store 用户发送的崩溃日志,并且在尝试手动符号化它时失败,尽管我拥有所有必需的 dSYM。
崩溃日志摘录:
我的应用启用了 Bitcode,所以我从 Xcode > Organizer > Archives 下载了 dSYM。然后我确认29A862B9-75B3-35AE-91C2-615C775E064F.dSYM
存档中确实存在提交到 App Store 的构建(与用户在崩溃时运行的构建相同)。
然后手动符号化崩溃日志,我在终端中运行了以下命令:
然后我等待处理完成,但生成的符号文件没有替换符号。在查看输出时,我看到了与我的应用程序二进制文件相关的以下信息:
这一切都导致没有符号被替换。任何想法为什么这不起作用?所有 UUID 看起来都不错,它会找到正确的应用程序文件、dSYM 等。如果需要,我很乐意提供更多信息。
ios - iOS 应用程序具有神秘的 UUID,没有匹配的 dSYM,因此无法符号化
我非常熟悉 iOS 应用程序的崩溃日志是如何符号化的,但这个是一个令人头疼的问题。
我有带有 build 2345 的 MyApp,它通过 TestFlight 作为测试版发布,使用正常的存档,然后在 Xcode 7.2 (7C68) 中上传到 App Store 流程。
当我为 xcarchive 中的二进制文件执行 dwarfdump 时,我得到以下信息:
这是 dSYM 文件的 dwarfdump:
到目前为止,一切都很好。
但是,我通过 Organize > Crashes for build 2345 收到了一个崩溃,它对二进制文件有不同的 UUID:
我确定崩溃报告是针对同一个版本的,但是这里的 UUID 是3715db2...
我期望的b2a69bec...
我确实启用了位码,所以我尝试从 Organizer Archive 页面下载 dSYM(即使我构建了 arm64,所以 Apple 不应该这样做),它检索了崩溃报告中其他 UUID/二进制文件的 dSYM,但没有myapp
二进制。事实上,该myapp
二进制文件是唯一没有下载相应 dSYM 的二进制文件!
所以有几个问题:
- myapp 二进制文件的
3715db2438743cf5aac1742d9a214c2c
版本来自哪里? - 我怎样才能得到它的 dSYM 以便我可以象征崩溃?Apple 不会使用 Xcode 中的“下载 dSYM”选项返回它。
ios - 下载 dSYM 失败“缺少应用程序版本”
当我尝试从组织者下载 dSYM 时,它给了我这个错误:
缺少应用程序版本
找到了“co.**”的应用程序记录,但没有找到“1.0.3”构建“10”的匹配版本。
我启用了位码。这是一个带有 Swift 和 Objective-C pod 的 swift 应用程序。Xcode 版本 7.2 (7C68)
当我右键单击存档并在 Finder 中查看它的包内容时,我看到了一个 dSYMs 文件夹。我将其压缩并上传到 Crashlytics,但它仍然显示我的所有构建都缺少 dSYM。它甚至有 App.dsym 以及一些带有 UUID 的 dsym 和其他用于我的 pod。
这是一个 XCode 错误吗?
我看到有人在苹果开发者论坛上发布了一个关于 tvOS 的类似问题,但那里没有答案。由于某种原因,我不允许在那里提问:p
我还没有向 iTunesConnect 添加构建,是否需要下载 dSYM?XCode 从哪里下载 dSYM?这可能与我的 bundleId 的形式为 co.someString 而不是 co.someString.someOtherString 的事实有关吗?我想不是,我只是在寻找任何东西。
禁用位码是能够为我获取 dSYM 的唯一方法吗?
ios - dSYM 文件与应用程序二进制文件不匹配
我已经在两家公司之间转移了我的应用程序。
我现在正在使用 xcode 7.2.1(刚刚从 7.2 升级并在新的 mac 上)。
使用新规定、证书等构建应用程序。一切正常,包括推送。但是,我现在收到以下 dSym 错误:
我仔细查看了这个答案,但我只是不明白发生了什么。
我按照这个链接的答案,但我仍然不清楚该怎么做。
我导航到存档,将 app 和 dsym 文件夹复制到另一个目录(以防万一)并且:
我运行了这个命令:
dwarfdump --uuid MyApp.app/MyApp
其次是:
dwarfdump --uuid MyApp.app.dSYM
“UUID”结果相同: UUID:4627E331-25CA-3C0E-9B6E-628F47860443 (armv7) MyApp.app/MyApp UUID: B88F67EC-B6BF-347B-A2E0-CE83F1DFB31C (arm64) MyApp.app/MyApp
UUID:4627E331-25CA-3C0E-9B6E-628F47860443 (armv7) MyApp.app.dSYM/Contents/Resources/DWARF/MyApp UUID:B88F67EC-B6BF-347B-A2E0-CE83F1DFB31C (arm64) MyApp.app.dSYM/Contents/Resources /矮人/我的应用
在我将存档上传到 iTunes Connect(已成功处理)后,我点击了“下载 dSym”。这次我收到的信息是: 最新 没有可供下载的 dSYM。
我错过了什么?问题出在其他地方吗?它只是xcode吗?关闭并重新打开?
忘了说我还可以从 iTunes 下载 dSym ......
xcode - Xcode 如何找到 dSYM 以匹配崩溃文件?
我从客户那里收到了一个 .crash 文件,需要将它链接到正确的 dSYM 文件。该产品/版本的存档是由另一个开发人员使用 Xcode 构建的,并且 .xcarchive 文件放入 git 以备不时之需(就像今天一样)。
在阅读Analyzing Crash Reports和Understanding and Analyzing iOS Application Crash Reports之后,尚不清楚它是如何工作的。
我做了以下事情:
- 打开设备窗口,“查看设备日志”按钮
- 将 .crash 文件拖到列表中(我们将崩溃日志从不同的设备/用户拖到我们的设备上 - 这似乎是错误的,但 AFAIK 是需要做的)
- 在 Organizer/Archives 中,所需版本的存档不在我的列表中。它是在另一台计算机上构建的,我还没有做任何事情将它带到我的环境中
- 最初,当我查看崩溃文件时,它只有十六进制代码
- 右键单击并“重新符号化”我之前添加的崩溃日志
- Xcode 现在似乎不知何故知道了我的存档。我现在看到方法和行号信息,但是...
我不相信这是有效的,并且可能与错误的事情有关。
问:Xcode 如何知道我的 xcarchive 文件包含崩溃文件版本的 dSYM?(我希望它必须在组织者/档案列表中,但不是)
问:有没有更好的方法来导入 .crash 文件?(我希望能够将它拖到 Organizer/Crashes 中,但显然不是)
xcode7 - 如何在 Xcode 7.3 中表示崩溃?
你能帮我把我的崩溃符号化吗?
在 Xcode 7.3 中,Window -> Organizer -> Crashes,我有来自我最新的 TestFlight 构建的崩溃报告。它们是在这台 Mac 上构建的,所有带有相应 dSYM 的档案都在档案选项卡中。该应用程序分为多个框架和主应用程序,其中许多是 Swift 和 Objective C 的混合体。在崩溃日志中,我可以看到正确列出的框架和应用程序的名称,但我的框架和应用程序的所有条目应用程序是十六进制的。UIKit 的符号化就好了。
当我在 iTunes Connect 中查看时,它对“包括符号”说“是”并允许我下载 dSYM。构建时,“调试信息格式”选项设置为“DWARF with dSYM”。我尝试将“在复制过程中去除调试符号”和“去除链接产品”设置为“否”,看看是否有所不同。它没有。
我在我的系统上找不到 symbolicatecrash 应用程序,甚至在 /usr/bin 或 /Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash 中都找不到,但我有一个较旧的 Xcode 5可以抓住它。但是,它不再解析符号。
我在 Instruments 中有同样的问题,如果我分析我的应用程序,UIKit 的符号化就好了,但我的框架和应用程序只显示十六进制。
我知道有很多关于这个的帖子,但是从 7.3 测试版到现在我已经经历了很多,但还没有找到解决方案