Flutter应用iOS端Crashlytics上传dSYM成功仍存在未处理崩溃报错
Flutter iOS端Crashlytics dSYM上传成功后仍提示缺失的解决方案
你遇到的错误提示如下:
This app has 4 unprocessed crashes. Upload 1 dSYM file to process them
你手动上传dSYM后收到的成功提示为:
Successfully uploaded Crashlytics symbols
可按以下步骤逐一排查解决:
- 核对dSYM的UUID匹配性
执行命令dwarfdump --uuid 待上传dSYM文件路径获取本地dSYM的UUID,和Crashlytics控制台提示需要的dSYM的UUID做比对,二者完全一致才是对应版本的符号表。如果你开启了Bitcode编译,不要使用本地archive生成的dSYM,需要到App Store Connect对应构建版本的详情页下载官方生成的dSYM压缩包后再上传。 - 检查是否漏传Flutter框架dSYM
Flutter iOS构建会生成两类dSYM,除了主项目的dSYM外,还有Flutter引擎对应的Flutter.framework.dSYM,位置在archive包的dSYMs目录下,需要和主项目dSYM一起上传,仅上传主项目dSYM会一直提示符号缺失。 - 用Firebase CLI重新上传
手动上传或旧版Crashlytics上传脚本可能出现提示成功但后台未识别的情况,安装最新版Firebase CLI后执行以下命令重新上传:firebase crashlytics:symbols:upload --app=你的iOS端Firebase应用ID 存放dSYM的文件夹路径 - 检查Xcode构建配置
打开iOS项目的Build Settings页,确认Release模式下的Debug Information Format选项配置为DWARF with dSYM File,若配置为纯DWARF则不会生成可用于解析崩溃的完整符号表。 - 等待后台处理
dSYM上传成功后Crashlytics后台需要时间解析符号,最长可能需要24小时完成处理,可间隔几小时后再刷新控制台查看状态。
内容的提问来源于stack exchange,提问作者Rohmatul Laily
相关产品推荐
相关产品推荐

