已发布的iOS应用能否通过xcarchive或重编译生成dSYM文件?
解决Xcode 14下架Bitcode后无法获取dSYM的问题
利用本地留存的.xcarchive文件生成dSYM
如果你当初生成.xcarchive时用的是DEBUG_INFORMATION_FORMAT = dwarf构建设置,这个归档文件里本身就没有dSYM——该设置仅生成DWARF调试信息,不会导出dSYM文件,因此无法通过这个归档事后生成所需的dSYM。重新编译相同版本/构建号并修改构建设置
满足以下条件时,重新编译可以生成匹配上架版本的dSYM:- 代码完全一致:确保代码提交记录、所有依赖库版本(如CocoaPods的
Podfile.lock、Swift Package Manager的依赖快照)和上架版本完全相同,否则符号会不匹配。 - 使用相同Xcode版本:必须用当初上架时的Xcode具体版本(比如Xcode 14.0、14.3等),不同版本编译器生成的符号存在差异。
- 修改构建设置:将
DEBUG_INFORMATION_FORMAT改为dwarf-with-dsym(针对Release配置,即上架用的编译配置)。 - 保持版本号和构建号一致:无需重新提交到App Store Connect,仅本地编译生成dSYM即可,重复构建号不会有影响。
编译完成后,dSYM文件可在以下位置获取:
- 派生数据路径:
~/Library/Developer/Xcode/DerivedData/[项目标识]/Build/Products/Release-iphoneos/ - 新生成的.xcarchive包内:右键归档文件选择「显示包内容」,在
dSYMs目录下找到对应文件。
- 代码完全一致:确保代码提交记录、所有依赖库版本(如CocoaPods的
内容的提问来源于stack exchange,提问作者swrobel
相关产品推荐
相关产品推荐

