在 iOS 通过堆栈 crash log debug定位函数调用入口

在ios开发中,会经常有crash奔溃,但是只是显示一堆堆栈信息,比如使用了第三方统计信息,在第三方后台是可以查看捕捉到的crash信息,但是并不能定位到某个文件或者函数。

解决方案是:找到打包的包名,在Xcode管理里会保存有一个xcarchive文件,这是和你的版本包名需要一致,接下来使用命令行cd到该目录下

cd App名称\ 14-1-15\ 下午4.00.xcarchive/
cd 你的app名称.app.dSYM/
cd Contents/
cd Resources/
cd DWARF/
ls列出真正的文件

执行

atos -arch armv7 -o 你的app名称 0x27a7b
上面armv7是看你的设备架构来定的,可能是7s也可能是i386

地址在友盟后台是加下划线的那个地址

回车接下来就可以看到函数调用崩溃的地方了。

-[CCChooseLocationViewController currentData:] (in 你的app) (CCChooseLocationViewController.m:316)
后面显示的是行数

参考:

http://stackoverflow.com/questions/7675863/atos-cannot-get-symbols-from-dsym-of-archived-application

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值