OGeek|极客世界-中国程序员成长平台

标题: ios - _hidden 在 Crashlytics 上使用 Bitrise - iOS 应用程序崩溃 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 22:19
标题: ios - _hidden 在 Crashlytics 上使用 Bitrise - iOS 应用程序崩溃

我在我的 iOS 应用程序中使用 Bitrise 作为 CI/CD。 在工作流程中,有一个步骤是通过 Fabric 发布应用程序。 当崩溃发生时,我在仪表板中看到的唯一想法是堆栈上的许多 __hidden 步骤。 我猜这是因为缺少一些符号,但 Fabric 并没有说缺少任何符号。我尝试以任何方式手动添加它们,但我仍然看到 __hidden 崩溃。 关于如何解决此问题的任何想法?

这是我得到的一个例子。 Fabric log



Best Answer-推荐答案


查看 Apple 的 document描述隐藏的符号。查找“将‘隐藏’符号名称翻译回其原始名称”部分。

这里的问题不在于 Crashlytics 缺少符号信息。他们拥有的符号信息从字面上告诉他们您的符号被命名为 __hidden#xyz。这导致您在此处看到的混淆。正如 Apple 文档所述,可以对这些符号进行去混淆处理,但我不确定 Crashlytics 是否支持这一点。他们有一点信息here .

我的理解是,当您在应用提交过程中选择不与 Apple 共享符号信息时会发生这种情况。如果我是对的,一旦你这样做了,在你发布你的应用的新版本之前是不可能改变的。

更新:

我在 dsymutil 中发现了一个选项,可以在这种情况下对 dSYM 进行反混淆。

--symbol-map=*bcsymbolmap*

这将使用去混淆符号修改 dSYM。将该 dSYM 上传到 Crashlytics 应该会产生预期的符号化。但是,由于缓存的原因,您可能需要先与他们联系以确保此更改生效。

关于ios - _hidden 在 Crashlytics 上使用 Bitrise - iOS 应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54969345/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4