OC-将ips符号化(crash)

什么是符号化

一般崩溃了会生成一个ips文件 但是这个文件打开一般都是十六进制内存地址的集合
而符号化就是将这些信息转化为可视化文件 符号化之后就可以显示各个线程的函数调用

比如原来是这样

Last Exception Backtrace:
0  CoreFoundation  0x1ca4cd27c 0x1ca3b5000 + 1147516
1  libobjc.A.dylib  0x1c96a79f8 0x1c96a2000 + 23032
2  CoreFoundation  0x1ca3ded94 0x1ca3b5000 + 171412
3  TestBacktrace  0x102a47464 0x102a40000 + 29796
4  UIKitCore  0x1f6c86e30 0x1f63d3000 + 9125424

符号化之后

Last Exception Backtrace:
0   CoreFoundation                  0x1ca4cd27c __exceptionPreprocess + 228
1   libobjc.A.dylib                 0x1c96a79f8 objc_exception_throw + 55
2   CoreFoundation                  0x1ca3ded94 -[__NSSingleObjectArrayI objectAtIndex:] + 127
3   TestBacktrace                   0x102a47464 -[AppDelegate Application:didFinishLaunchingWithOptions:] + 29796 (AppDelegate.m:23)
4   UIKitCore                       0x1f6c86e30 -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 411

然后通过TestBacktrace知道最后调用的是Application:didFinishLaunchingWithOptions 崩溃文件是AppDelegate 行号23

crashRepoter

~/Library/Application Support/CrashReporter.
在程序crash的时候会生成这个 作为一个调试工具

symbolicatecrash

symbolicatecrash主要是将crash文件和dSYM文件中的符号进行映射,即可将crash文件中的内存地址转换为可读的字符串
常规套路,先还是把*.crash文件、*.dSYM文件放到一起来,再来调用symbolicatecrash命令。先建立symbolicatecrash的软链接:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值