You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xcode中24小时内1版本缺失dSYMs及Crashlytics崩溃问题求助

解决Crashlytics开发环境下「Missing dSYMs」的问题

我之前在开发环境模拟Crashlytics崩溃时也碰到过一模一样的问题,尤其是手动上传dSYMs后还是看不到崩溃信息的情况,试试下面这些针对性的排查步骤:

1. 先确认开发配置的dSYM生成开关

打开Xcode项目的Build Settings,搜索Debug Information Format:

  • 一定要把Debug配置(就是你开发Scheme用的配置)设置为DWARF with dSYM File,别选仅DWARF,不然根本不会生成dSYM文件
  • 同时检查Generate Debug Symbols是不是设成了YES,这个开关没开也白搭

2. 核对dSYM的UUID是否和Crashlytics提示的一致

Crashlytics后台提示Missing dSYMs时,会显示对应版本的UUID,你可以用终端命令查本地dSYM的UUID:

dwarfdump --uuid /path/to/你的App.dSYM

如果输出的UUID和后台的对不上,说明你上传的dSYM根本不是当前崩溃版本的,白忙活了。

3. 确保开发环境下Crashlytics没被禁用

有些同学会在开发环境加判断禁用Crashlytics,或者初始化代码没写对:

  • 检查application(_:didFinishLaunchingWithOptions:)里是不是调用了Fabric.with([Crashlytics.self]),开发环境别注释掉
  • 也别加什么#if !DEBUG之类的条件把Crashlytics给关了

4. 模拟崩溃后别着急重启!

开发环境下Crashlytics的上报逻辑有点不一样:

  • 手动触发崩溃后,先等个3-5秒,让Crashlytics把崩溃信息写到本地
  • 然后手动杀掉App(别用Xcode stop),再重新打开App,这时候才会把日志上报到后台

5. 自动上传dSYMs比手动靠谱多了

手动压缩上传很容易搞错文件,试试让Crashlytics自动拉取:

  • 确保你的Mac登录了对应的Fabric账号,安装Fabric插件的话,Xcode构建完成后会自动上传dSYMs
  • 要是用脚本构建,直接加这条命令:
./Pods/Fabric/upload-symbols -gsp /路径/到/GoogleService-Info.plist -p ios /路径/到/dSYMs文件夹

6. 清缓存重构建试试

有时候Xcode的缓存会搞鬼:

  • 关闭Xcode,删掉DerivedData文件夹(路径是~/Library/Developer/Xcode/DerivedData)
  • 用Cmd+Shift+K清理项目,然后重新构建运行,再模拟崩溃试试

7. 检查Archive导出的设置(如果是用Archive打开发包)

要是你是通过Archive导出的开发包,导出时一定要勾选Include dSYM files:

  • 打开Organizer选对应的Archive,点Distribute App
  • 选Development分发,下一步确认这个选项是勾上的

如果这些步骤都试过还是不行,可以试试更新Fabric和Crashlytics的Pod到最新版,或者新建一个开发Scheme重新配置,有时候Scheme的配置会莫名其妙出问题。

内容的提问来源于stack exchange,提问作者HariKarthick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 09:20:10