iOS端Firebase Crashlytics上传dSYM告警且控制台提示需上传dSYM
dSYM上传Firebase异常问题解决步骤
- 第一步:校验dSYM的UUID匹配性
先执行命令查看下载的dSYM对应的UUID,确认和Firebase控制台提示缺失的UUID、告警中给出的UUID一致:
如果UUID不匹配,说明你下载的dSYM版本不对,需要重新从App Store Connect下载对应构建版本的完整dSYM包。dwarfdump --uuid <告警提示的dSYM文件路径> - 第二步:处理dSYM符号隐藏问题
因为你开启了Bitcode,Apple会对应用重新编译,本地归档生成的dSYM和线上版本不匹配,根据你提交应用时的符号上传选择处理:- 如果你提交应用时选择了「上传符号到Apple」:直接打开Xcode的Organizer窗口,找到对应提交的构建版本,点击「下载dSYMs」按钮获取Apple生成的全量符号化dSYM,不要使用本地归档里的dSYM文件。
- 如果你提交应用时没有上传符号到Apple:找到提交时对应的.xcarchive归档文件,右键选择「显示包内容」,进入
BCSymbolMaps目录找到对应UUID的符号表文件,执行以下命令手动对dSYM去混淆:
该命令会直接修改原dSYM文件完成符号还原。dsymutil --symbol-map <BCSymbolMap文件路径> <告警提示的带隐藏符号的dSYM路径>
- 第三步:重新上传dSYM
处理完成后,可加上-v参数执行上传命令查看详细日志,确认对应dSYM上传成功:
如果仅需要屏蔽告警无需处理符号问题,可在上传命令末尾加上/ProjectPath/Pods/FirebaseCrashlytics/upload-symbols -gsp /ProjectPath/GoogleService-Info.plist -p ios /DsymsPath/appDsyms -v--skip-dsym-validation参数跳过dSYM校验。 - 第四步:等待控制台同步
上传成功后Firebase控制台最多需要24小时同步数据,若超过24小时仍提示dSYM required,重新核对UUID是否匹配即可。
内容的提问来源于stack exchange,提问作者Shamsur Rahman
相关产品推荐
相关产品推荐

