符号化Crash日志

软件开发完成后虽然经历了相当多的测试,但是谁都不可能保证项目不会出现任何问题,所以偶尔出现Crash问题也是正常的现象,但是既然出现了Crash我们怎么获取Crash log呢?

方法一:利用的Xcode中可以定位到程序崩溃的位置

Carsh

方法二:有一定的局限性,仅限于我们测试人员的手机出现了崩溃

我们需要将崩溃的所有的手机连接我们的Xcode,找到窗口 - >设备这里可以拿到这个手机中所有安装的应用程序的崩溃日志,找到崩溃日志后,重新使用第二种方法即可找到问题。

Carsh

注意:通过这种方式获取的Carsh日志乍看有点发蒙不知道从哪里入手,其实这个日志我们是无法定位Crash位置的,这时候我们需要使用Symbolicatecrash工具对日志进行“符号化“。

Carsh

符号化的步骤如下:

1、首先,我们需要准备的文件分别是.crash,.dSYM和.app三个文件。
2、需要将这三个文件和symbolicatecrash工具放在同一个文件夹中。
3、打开终端输入如下命令

cd /Users/dzq/Desktop/crash
./symbolicatecrash /Users/dzq/Desktop/crash/***.crash /Users/dzq/Desktop/crash/***.app.dSYM > carshLog.crash

提示: ***指的是具体的文件名(项目文件名)
symbolicatecrash文件 查找方法:find /Applications/Xcode.app -name symbolicatecrash -type f
注意:如果出现-bash:./ symbolicatecrash:Permission denied提示,这时候需要先输入如下命令
如果在符号化过程中遇到如下错误:
Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69.
可以在终端输入:
export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"
解决。

chmod a + x ./symbolicatecrash

这时候,我们就可以了符号化Crash Log。
注意:
1、以上三个文件必须保证UUID一直

UUID

2、symbolicatecrash文件获取方法
MacBook-Pro:~ dzq$ find /Applications/Xcode.app -name symbolicatecrash -type f
symbolicatecrash

方法三:利用第三方统计日志
这里以友盟Crash统计为例进行符号化,符号化的步骤如下:
1、准备符号化工具 umcrashtool
2、从友盟网站获取 .csv Error log文件
3、打开终端输入如下命令

./umcrashtool Error log文件路径.csv
umcrashtool

最后需要注意:有一些方法是有大前提是必须在工程中做如下配置:

Debug Information Format

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容