【链接】iOS开发之Crash日志获取与分析
https://www.jianshu.com/p/531ca1834150
【链接】应用crash日志分析(已经符号化)
https://www.jianshu.com/p/68a6efbd8378
总的来说,就是: 获取crash log -》找到相匹配的 dSYM文件-》 获取symbolicatecrash工具 -》 符号化crash文件。
1、获取crash log
- 通过iTunes同步
首先iTunes将iPhone 日志同步到Mac,前往文件夹:~/Library/Logs/CrashReporter/MobileDevice
- 通过Xcode ->window ->Devices ->view Devices log
2、获取dSYM文件
- 通过Xcode ->window ->Organizer ->Archives
3、判断dSYM文件和crash文件 UUID 是否一致
https://blog.csdn.net/andanlan/article/details/51124145
每一个 xx.app 和 xx.app.dSYM 文件都有对应的 UUID,crash 文件也有自己的 UUID,只要这三个文件的 UUID 一致,我们就可以通过他们解析出正确的错误函数信息了。
1).查看 xx.app 文件的 UUID,terminal 中输入命令 :
dwarfdump --uuid xx.app (xx代表你的项目名)
2).查看 xx.app.dSYM 文件的 UUID ,在 terminal 中输入命令:
dwarfdump --uuid xx.dSYM
3). 在 terminal 中输入命令:
3.在 terminal 中输入命令:
grep "appName arm64" crashName.crash
4、 符号化crash文件
- 首先查找symbolicatecrash:
find /Applications/Xcode.app -name symbolicatecrash -type f
打印出来路径如下:
/Applications/Xcode.app/Contents/Developer/Platforms/WatchSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
前往,前往文件夹,找到symbolicatecrash,拷贝出来。放入统一文件夹,首先cd 进入这个文件夹,然后执行命令:
./symbolicatecrash APPA.app.crash APPA.app.dSYM > xxxxx.log(xxxxx.crash,xxxx.txt都可以)
如果执行命令出现错误:Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash,那么输入:
export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"