iOS 崩溃日志分析

2020-03-13  本文已影响0人  刃之剑

要分析崩溃日志,首先需要保留发布时的编译出来的.xcarchive文件。这个文件包含了.DSYM文件

第一种方法:

使用dwarfdump命令

dwarfdump --uuid xx.app.dSYM     用来得到app的UUID。

dwarfdump --lookup 0x12b45d -arch armv7 xx.app.dSYM  使错误的日志能看懂,把相应的内存地址对应到正确的地方。

如果一开始dwarfdump命令不能用的话,要先装Command Line Tools,这个在设置里面能下载(cmd+“,”打开设置)。另外还必须在进入.DSYM所在文件夹。

使用dwarfdump需要安装Command Line Tools,XCode里设置下载。而且需要进入.DSYM所在文件夹里进行操作。

第二种方法:

使用xcrun atos命令

atos -o YourApp.app.dSYM/Contents/Resources/DWARF/YourApp 0x00062867

下面重点推荐下这个方法,方便快捷

第三方法:可视化工具

下面这是我的项目里通过友盟统计到的崩溃日志,如果光看这些日志报告的话,是不会知道是哪行代码引起的。

使用方法是把对应版本的.xcarchive文件拖到工具。对比UUID和友盟里日志是否一致,一致就把错误的地址信息拷贝到箭头处。点击分析。

即可得出具体代码崩溃位置。

2020-3-27更新--->


手动生成dysm文件

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dsymutil  /Users/yym/Library/Developer/Xcode/Archives/2020-03-27/HuoGameBox\ 2020-3-27\,\ 4.39\ PM.xcarchive/Products/Applications/HuoGameBox.app/HuoGameBox  -o HuoGameBox.app.dSYM

no debug symbols in executable (-arch armv7)

bugly

https://bugly.qq.com/docs/user-guide/symbol-configuration-ios/?v=1492997248592

XCode -> Build Settings -> Code Generation -> Generate Debug Symbols -> Yes

这个很重要,有的APP需要自己做签名可能把这个勾掉了

XCode -> Build Settings -> Build Option -> Debug Information Format -> DWARF with dSYM File

上一篇下一篇

猜你喜欢

热点阅读