手动解析crash日志
2015-11-16 18:06
246 查看
向苹果提交项目审核,结果别拒绝了,还返回几个crash日志。
下面是分析crash日志的步骤:
一,在桌面创建一个文件夹crashDir
①.Xcoe-Window-Organize找到Archives找到App-右击-Show in Finder
②.复制.app和.app.dSYM到crashDir夹文件:右击..xcarchive文件-显示包内容
二、首先找到symbolicatecrash工具存放的地址
①.打开终端输入以下命令:
find /Applications/Xcode.app -name symbolicatecrash -type f
你会找到:
/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash
②.用命令将symbolicatecrash拷贝到桌面的crashDir文件夹里面,与.app和.app.dSYM放一起
cp /Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash /Users/yangliu/Desktop/crashDir
③.将Crash文件也拷到当前文件夹里面
,注意苹果返回日期文件是.txt格式,后缀名修改成.crash ,一定要注意:苹果返回的文件名字一定不要修改,即crash文件的名字不能修改,是固定的,刚开始我以为crash文件的名字是随意的,结果一直出现错误,最后才想到可能名字的问题。下图中的crash文件有两个,苹果返回了两个给我。。
三、执行symbolicatecrash
①.打开终端用命令切换到桌面的crashDir目录下:
cd /Users/你的电脑名称/Desktop/crashDir
②.执行命令
./symbolicatecrash temp..cridsoty.crash minsuyun.com.app.dSYM > test1.log
这时候终端有可能会出现:Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 60.
③.输入命令:export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"
④.再执行
./symbolicatecrash temp..cridsoty.crash minsuyun.com.app.dSYM > test1.log
这时候终端将会进行处理了
5.将终端完成以后,在crash文件夹里面会多出一个文件 test1.log:这个就是最终的文件,可以查看bug所在的
注意事项:
这一解析过程需要使用Symbolicatecrash来完成,首先要找到Symbolicatecrash文件,可以拷到刚才放crash log的文件夹中使用,在开始解析之前需要先进行一些校验:
①. 查看xx.app文件的uuid的方法,在命令行中输入:
②. 查看xx.app.dSYM文件的uuid的方法,在命令行输入:
③.查看.crash的uuid,位于crash日志中的Binary Images:中的第一行。如:188187BD-997F-3EC4-BEEF-62791C5EFF72 (armv7)
只有三者的uuid相同才能解析.crash文件,然后在命令行输入:
下面是分析crash日志的步骤:
一,在桌面创建一个文件夹crashDir
①.Xcoe-Window-Organize找到Archives找到App-右击-Show in Finder
②.复制.app和.app.dSYM到crashDir夹文件:右击..xcarchive文件-显示包内容
二、首先找到symbolicatecrash工具存放的地址
①.打开终端输入以下命令:
find /Applications/Xcode.app -name symbolicatecrash -type f
你会找到:
/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash
②.用命令将symbolicatecrash拷贝到桌面的crashDir文件夹里面,与.app和.app.dSYM放一起
cp /Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash /Users/yangliu/Desktop/crashDir
③.将Crash文件也拷到当前文件夹里面
,注意苹果返回日期文件是.txt格式,后缀名修改成.crash ,一定要注意:苹果返回的文件名字一定不要修改,即crash文件的名字不能修改,是固定的,刚开始我以为crash文件的名字是随意的,结果一直出现错误,最后才想到可能名字的问题。下图中的crash文件有两个,苹果返回了两个给我。。
三、执行symbolicatecrash
①.打开终端用命令切换到桌面的crashDir目录下:
cd /Users/你的电脑名称/Desktop/crashDir
②.执行命令
./symbolicatecrash temp..cridsoty.crash minsuyun.com.app.dSYM > test1.log
这时候终端有可能会出现:Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 60.
③.输入命令:export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"
④.再执行
./symbolicatecrash temp..cridsoty.crash minsuyun.com.app.dSYM > test1.log
这时候终端将会进行处理了
5.将终端完成以后,在crash文件夹里面会多出一个文件 test1.log:这个就是最终的文件,可以查看bug所在的
注意事项:
这一解析过程需要使用Symbolicatecrash来完成,首先要找到Symbolicatecrash文件,可以拷到刚才放crash log的文件夹中使用,在开始解析之前需要先进行一些校验:
①. 查看xx.app文件的uuid的方法,在命令行中输入:
$ dwarfdump --uuid xxx.app/xxx (xxx工程名)
②. 查看xx.app.dSYM文件的uuid的方法,在命令行输入:
$ dwarfdump --uuid xxx.app.dSYM (xxx工程名)
③.查看.crash的uuid,位于crash日志中的Binary Images:中的第一行。如:188187BD-997F-3EC4-BEEF-62791C5EFF72 (armv7)
只有三者的uuid相同才能解析.crash文件,然后在命令行输入:
$ ./symbolicatecrash xxx.crash xxx.app.dSYM > test.log
相关文章推荐
- AppDelegate关于应用程序挂起、复原与终止的代理方法
- 控制 父布局上的 子View 边界
- Java中的Volatile 变量
- WebApi系列~自主宿主HttpSelfHost的实现
- WebApi系列~实际项目中如何使用HttpClient向web api发异步Get和Post请求并且参数于具体实体类型
- 怎样面对痛苦?
- EBADF, read
- 工作半年总结 -web前端
- 对待二手车过户要理性
- Netty系列之Netty线程模型
- mysql 远程连接
- 启动,关闭Activity的两种方法
- Java的 transient关键字
- MongoDB与内存
- jquery弹出层完美居中
- React study(二)
- WebApi系列~通过HttpClient来调用Web Api接口~续~实体参数的传递
- windows服务器配置硬盘镜像阵列-软RAID
- Sublime Text2 License Key真实可用
- Job for nginx.service failed because the control process exited with error code. See "systemctl stat