iOS Crash文件的解析(二)如何使用symbolicatecrash工具


上传一软件,被拒了,自己测试了n遍都未出现这个情况,今天用symbolicatecrash工具分析了一下苹果提供的Crash文件,最终查到是


- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation这里出问题,
在第一次进入更新位置的时候,userLocation.coordinate有时候会是0,0,这时候用setRegion就一定会Crash,
所以任何时刻请记得做非空处理, if (userLocation.location == nil)



下面建议如何用symbolicatecrash工具分析iOS Crash文件:


一、在桌面创建一个crash文件夹
1.Xcoe-Window-Organize找到Archives找到App-右击-Show in Finder




 

2.复制.app和.app.dSYM到crash夹文件:右击..xcarchive文件-显示包内容
如图:

 



 

复制好以后如图:

 



二、首先找到symbolicatecrash工具存放的地址
1.打开终端输入以下命令:
find /Applications/Xcode.app -name symbolicatecrash -type f

你会找到:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/./symbolicatecrash


2.用命令将symbolicatecrash拷贝到桌面的crash文件夹里面,与.app和.app.dSYM放一起
cp /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash /Users/angel/Desktop/crash

如图:

 

3.将Crash文件也拷到当前文件夹里面
如图:

 


三、执行symbolicatecrash
1.打开终端用命令切换到桌面的crash目录下:
cd /Users/你的电脑名称/Desktop/crash

2.执行命令
./symbolicatecrash /Users/angelseahappiness/Desktop/crash/Control_2014-01-13-111838_Lynns-iPad3.crash /Users/angel/Desktop/crash/Control.app.dSYM > Control_symbol.crash

这时候终端有可能会出现:Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 60.

3.输入命令:export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer" 


4.再执行./symbolicatecrash /Users/angelseahappiness/Desktop/crash/Control_2014-01-13-111838_Lynns-iPad3.crash /Users/angel/Desktop/crash/Control.app.dSYM > Control_symbol.crash
这时候终端将会进行处理了


5.将终端完成以后,在crash文件夹里面会多出一个文件Control_symbol.crash:这个就是最终的文件,可以查看bug所在的
如图:

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值