iOS通过dSYM文件分析crash日志

本文详细介绍如何利用dSYM文件和symbolicatecrash工具解析iOS应用的Crash日志,包括准备步骤、检测文件对应性及解析过程,帮助开发者快速定位并解决应用闪退问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

iOS通过dSYM文件分析crash日志
平常在开发的过程中,遇到到了Crash可以很容易的通过Xcode去定位Crash的位置,但是当我们的App发布以后,遇到闪退就不可以通过Xcode去调试了。当然现在也有很多产品可以在线分析,例如腾讯的bugly与友盟的错误分析。这些分析工具的最基本的地方还是通过dSYM去分析Crash日志,符号化Crash日志。

准备工作
分析崩溃日志需要三个东西:1、crash文件 2、symbolicatecrash文件 3、dYSM文件。我们拿到这个三个文件后,一般新建一个文件夹,把这三个文件放一起。至于crash文件和dYSM文件在哪里找,出门左转,度娘谢谢。

1、如何查找symbolicatecrash文件?

打开终端,输入 find /Applications/Xcode.app -name symbolicatecrash -type f,我用的是Xcode9,返回的结果如下:

如果是iPhone设备,选择红框中的路径,这样就可以找到symbolicatecrash文件

2、检测dYSM文件和crash文件是否对应
从终端进入到刚刚创建的crash文件中,输入dwarfdump --uuid xxx.app.dSYM(xxx是工程名)。如果输出的uuid和crash文件中的一致,则可以解析出正确的crash文件。crash文件中的uuid位于Binary Images中的第一行尖括号内。

3、解析crash文件
在终端中输入./symbolicatecrash crash.crash xxx.app.dSYM >crashLog.text,(xxx是工程名)。这样就可以在你的文件中看到解析后的崩溃文件。

注意,一般情况下,第一次使用symbolicatecrash会产生一个error,如下的错误信息
Error: "DEVELOPER_DIR" is not defined at /usr/local/bin/symbolicatecrash line 53.

解决办法是输入export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer
 

symbolicatecrash位置:

/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash

 

找到.app文件和.app.dSYM文件:
在桌面创建一个crash文件夹,然后Xcode->Window->Organizer找到Archives找到App->右击Show in 
Finder

复制.app和.app.dSYM到crash夹文件:右击.xcarchive文件->显示包内容 
在dSYMs文件夹中找到.app.dSYM 
在Products->Applications文件夹中找到*.app

xcode中直接运行的:

/Users/用户名/Library/Developer/Xcode/DerivedData/项目名/Build/Products/Debug-iphonesimulator/项目名.dSYM

如果打包的此文件在/Users/用户名/Library/Developer/Xcode/Archive下面

crash文件获取:

xcode->window->device and simulator->view device logs中找到crash log文件,下载即可以得到。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值