gpt4 book ai didi

iphone - 为什么 atos 命令无法为我的 iOS 崩溃日志找到符号?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:09:23 25 4
gpt4 key购买 nike

我正在尝试诊断我的 iOS 应用程序的崩溃。这里的其他人建议使用 atos 命令来执行此操作,例如以下命令:

atos -arch armv7 -o ''/'appname.app.dSYM'
symbolicatecrash "appname_2011-08-03-111047_Test-iPhone.crash" "apname.app"

然而,当我尝试这样做时,命令失败并出现错误

atos cannot load symbols for the file

是什么导致了这个错误,我该如何解决这个问题?另外,这是从崩溃日志确定 iOS 应用程序中崩溃的内存位置的正确方法吗?

最佳答案

dSYM 文件/目录必须与您在构建提交的应用商店构建时创建的文件/目录完全相同。即使是从完全相同的代码库构建的另一个也不会与您的崩溃日志匹配。

一些潜在的原因:

  • 您构建并测试了您的应用程序,一旦您确定它没问题,您就保存了二进制文件(.app 和 .dSYM),然后您使用应用商店签名重建并忘记存档该版本的 .app 和 .dSYM。现在,您的存档版本与应用商店版本的崩溃不匹配。
  • 您正在尝试使用来自源代码管理的新构建的 .app 和 .dSYM 进行符号化。您需要使用已提交的相同 .app 和 .dSYM。

如果您的计算机上有正确的 dSYM(并且安装了正确的 iOS 调试信息),那么 Xcode 将自动找到它并在您导入崩溃日志时创建崩溃日志的符号化副本。它使用 spotlight 来查找在构建时生成的唯一字符串(这就是为什么需要确切的版本才能匹配)。请注意,匹配的 .app 文件也需要存在。

最佳做法是构建和测试发布版本,然后重新签名以供提交(而不是提交单独的构建以供应用商店签名)。这样您就可以在安全的地方保存正确的 .app 和 .dSYM。我将它们放在源代码管理中并用版本号标记它。

关于iphone - 为什么 atos 命令无法为我的 iOS 崩溃日志找到符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6965274/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com