使用symbolicatecrash解析crash log日志

普遍使用的方法是用symbolicatecrash来解析crash log:

导出crash log 通过Xcode的Organizer查看某台iphone设备的DeviceLog,选择需要的crash log,导出XXX.crash文件。

用symbolicatecrash来解析crash log:

1.首先找到​symbolicatecrash所在目录路径

xcode6.0以前的位置:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources​

xcode6.0以后的位置:/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources

2.找到app对应的.dSYM 文件

首先找到最后一次打包提交appstore的archive文件,显示包内容,app对应的.dSYM文件就在dSYMs文件夹中​

 

3.讲 projectName.app.dSYM 文件 和 crash 日志文件放在同一个目录中

4.打开Terminal,并且定位到.dSYM文件和.crash文件所在的文件夹

5.设置DEVELOPER_DIR系统变量

cd ~/

vi .bash_profile

并输入如下内容
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"

保存并退出

6.继续输入  ./symbolicatecrash​  crashFile.crash  projectName.app.dSYM > crash.txt

7.打开目录中的crash.txt文件,迅速定位错误代码​

注意:symbolicatecrash的参数顺序,否则会报类似如下错误

Use of uninitialized value $data in substitution (s///) at /usr/bin/symbolicatecrash line 678.

Use of uninitialized value $data in substitution (s///) at /usr/bin/symbolicatecrash line 681.

Use of uninitialized value $data in substitution (s///) at /usr/bin/symbolicatecrash line 685.

Use of uninitialized value in pattern match (m//) at /usr/bin/symbolicatecrash line 404.

Use of uninitialized value in scalar assignment at /usr/bin/symbolicatecrash line 418.

No crash report version in XXX.app.dSYM/ at /usr/bin/symbolicatecrash line 954.



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值