苹果审核崩溃TXT文件解析崩溃原因
准备工作:
1.新建Crash文件夹
- symbolicatecrash将
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash
路径下的symbolicatecrash复制到Crash文件夹中
3.dSYM文件
方式一:从苹果开发者中心下载:
选择TestFlight,点击版本号,选择构建版本原数据,点右下角的下载dSYM。
注意:此处下载下来有2个dSYM文件,分别对应arm64和armv7。
image.pngimage.png
方式二:Xcode --> Window --> Organizer,选择指定版本(箭头2)点击右侧Download Debug Symbols(箭头1),再在箭头2鼠标右键选择“Show In Finder”,Finder中的文件是.xcarchive后缀的,在xcarchive文件鼠标右键选择“显示包内容”,进入“dSYMs”,XXX.app.dSYM就是所需的dSYMs文件。
image.png
4.获取.txt崩溃文件,
image.png
5.把symbolicatecrash文件、dSYM文件、.txt文件都保存到Crash文件夹
6.把.txt文件后缀改成.crash。
解析崩溃文件:
打开终端输入命令:
symbolicatecrash路径 空格 .crash文件路径 空格 dSYM路径 空格 解析后的.crash文件路径
可以把symbolicatecrash文件拖进终端,加个空格,再把.crash文件拖进终端,加个空格,再把dSYM路径文件拖进终端,加个空格,输入个解析后的.crash文件路径
例:/Users/XXX/Desktop/Crash/symbolicatecrash /Users/XXX/Desktop/Crash/FileName.app.dSYM /Users/XXX/Desktop/Crash/crashlog.crash /Users/XXX/Desktop/Crash/symble.crash
若出现Error: "DEVELOPER_DIR" is not defined at /Users/XXX/Desktop/Crash/symbolicatecrash line 69.
,
则需要设置 "DEVELOPER_DIR" 环境变量:
export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"
注意事项:
dSYM和.crash文件(即.txt文件)都有arm64和armv7架构的区分,也有版本号的区分(即Xcode设置的build)。
如果多次审核有崩溃问题,审核员给的txt文件可能会包含旧build版本的崩溃文件,我遇到过在build=6的版本崩溃,审核员给的build为4的崩溃文件,此处想提醒大家一定要把dSYM和.crash文件(即.txt文件)版本对应起来。
如何避免dSYM和.crash文件(.txt文件)版本不对应的问题?
1.查看.crash文件(.txt文件)版本
.crash文件(.txt文件)打开后搜索:build_version,这就是build版本号,即Xcode设置的build;也可以搜索Version,Version对应的是Xcode设置的build和Version
2.从苹果开发者中心-TestFlight选择对应的版本号下载dSYM
如何避免架构不对应的问题?
1.查看.crash文件(.txt文件)架构,如下图最底下箭头
或者查看.crash文件(.txt文件)slice_uuid,如下图最右侧箭头
2.查看dSYM架构和uuid
我使用dSYMTools查看
http://pan.baidu.com/s/1mg01Qha或者https://github.com/answer-huang/dSYMTools