iOS symbolicatecrash工具crash日志分析
若一个App没有加入Crashlytics或者Buggly这些崩溃日志监控,那么我们在App崩溃的时候如何获取崩溃信息呢?
此时我们可以通过symbolicatecrash工具对手机日志来进行分析定位,需要以下一些步骤:
一、获取crash日志文件
1.手机直接获取日志
在手机 设置->隐私->分析->数据分析 中找到对应App(文件名为App设置的product name),打开文件,右上角可以分享导出文件,分享出来的文件改一下后缀为.crash
2.使用iTools导出日志
使用iTools的工具箱里面的崩溃日志导出对应的.ips文件,改后缀为.crash
3.使用Xcode导出
设备连接Xcode,选择“Window->Devices and Simulators”,选择左侧设备,点击中间的“View Device Logs”,同理,选择对应App(文件名为App设置的product name),右键“Export Log”即可,此处导出的文件为.crash文件。
二、获取dSYM文件
1.Xcode获取
Xcode在archives时候,都会生成一个对应的dSYM文件,我们直接去获取app对应的dSYM文件就好;打开App工程,点击“Window->Organizer”,里面有你此工程archives过的记录,找到对应的,右键“show in finder”,对应文件右键"显示包内容",在dSYM文件夹下的.app.dSYM就是我们要获取的dSYM文件了。
2.App Store Connect获取
如果App已经上架,并在上架的时候选择提交过dSYM,那么还可以从App Store Connect获取,登录选择App,进入“活动”页签,“所有构建版本”,选择对应版本,点击app版本号,会出现包的详细信息,右下角有“包含符号”,若有提交的话,此处可以下载dSYM文件
三、symbolicatecrash工具
symbolicatecrash工具是Xcode自带的工具,我们在中断输入: find /Applications/Xcode.app -name symbolicatecrash即可找到工具
四、crash日志分析
将crash文件、dSYM文件以及symbolicatecrash工具拷贝到同一个目录,cd进入此目录,然后输入命令:
./symbolicatecrash (你导出的崩溃日志).crash (导出的dSYM文件).app.dSYM > (解析后的crash文件).crash
ps:运行上面的命令后可能会报错:“Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 53.”,如果出现错误,再输入:export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"
接着再输入一次 ./symbolicatecrash (你导出的崩溃日志).crash (导出的dSYM文件).app.dSYM > (解析后的crash文件).crash 这个命令就可以了。
iOS symbolicatecrash工具crash日志分析的更多相关文章
- iOS crash日志分析
iOS crash日志分析 一. 寻找crash文件:手机崩溃后的ips或者crash文件(ips文件可以直接修改成crash文件,直接改后缀名就可以了),这里说下如何拿到crash文件 1. 把运行 ...
- Crash日志分析
从Crash文件出发解决bug的一般步骤,分三步: a, 获取设备上的崩溃日志. b, 分析崩溃日志,找到报错位置(定位到函数和代码行数). c, 打开代码,改bug. 1, 获取设备日志 1. 在可 ...
- iOS应用的crash日志的分析基础
Outline如何获得crash日志如何解析crash日志如何分析crash日志 1. iOS策略相关 2. 常见错误标识 3. 代码bug 一.如何获得crash日志 ...
- iOS 苹果官方 Crash文件分析方法 (iOS系统Crash文件分析方法)
时间2013-08-20 12:49:20 GoWhich原文 http://www.gowhich.com/blog/view/id/343 苹果官方 Crash文件分析方法 (iOS系统Cras ...
- Android Native crash日志分析
在Android应用crash的类型中,native类型crash应该是比较难的一种了,因为大家接触的少,然后相对也要多转几道工序,所有大部分对这个都比较生疏.虽然相关文章也有很多了,但是我在刚开始学 ...
- ios crash 日志分析
以下内容来自网络 https://coderwall.com/p/ezdcmg/symbolicating-an-ios-crash-log-without-the-original-dsym-fil ...
- iOS开发工具-网络封包分析工具Charles
转自唐巧的技术博客:http://blog.devtang.com/blog/2013/12/11/network-tool-charles-intr/ Charles是在Mac下常用的截取网络封包的 ...
- iOS开发工具——网络封包分析工具Charles
简介 Charles是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析.Charles通过将自己设置成系统的网络访问代理服务器,使 ...
- [转] iOS开发工具——网络封包分析工具Charles
简介 Charles是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析.Charles通过将自己设置成系统的网络访问代理服务器,使 ...
随机推荐
- 五、python沉淀之路--字典
一. 1.根据序列,创建字典,并指定统一的值 v = dict.fromkeys(["],222) print(v) {': 222} 2.根据key 获取值,key不存在时,报错:get方 ...
- 多版本python管理miniconda(集成了virtualenv和pip功能)
miniconda下载地址: https://conda.io/docs/user-guide/install/index.html Installing on Linux Download the ...
- 自然语言处理--nltk安装及wordnet使用详解
环境:python2.7.10 首先安装pip 在https://pip.pypa.io/en/stable/installing/ 下载get-pip.py 然后执行 python get-pip. ...
- scala 定时器
假如我们要开发一个定时器,该定时器每秒钟执行一定的动作,我们如何把要执行的动作传给定时器?最直观的回答是:传一个实现动作的函数(function) object Helloworld { def on ...
- spring之:XmlWebApplicationContext作为Spring Web应用的IoC容器,实例化和加载Bean的过程
它既是 DispatcherServlet 的 (WebApplicationContext)默认策略,又是 ContextLoaderListener 创建 root WebApplicationC ...
- 本地测试html文件时CSS效果显示, 但是当django的服务器上运行时效果不显示
本地测试时各种效果都显示, 但是当在django服务器上测试时, 效果却不显示, 原因是我将css文件放在一个static文件夹里, 没有在settings中设置static_dir选项.将stati ...
- 2014.12.22 几个有用的oracle正则表达式
SELECT REGEXP_REPLACE('LSS12345', '[^0-9]') FROM DUAL 结果:12345 '[^0-9]'中的^表示‘非’上述表达式的含义是“将LSS12345中的 ...
- CS231n 2016 通关 第三章-SVM与Softmax
1===本节课对应视频内容的第三讲,对应PPT是Lecture3 2===本节课的收获 ===熟悉SVM及其多分类问题 ===熟悉softmax分类问题 ===了解优化思想 由上节课即KNN的分析步骤 ...
- ie6 ie7下报脚本错误"Expected identifier, string or number" 的原因和解决方法
在IE6和ie7里面,脚本报错"Expected identifier, string or number" 写下这个是个之前我已经很头疼了,因为我的代码在其他浏览器里都是正常的, ...
- Android 4学习(1):学习路线图
学习路线图 如下图所示,整个Android的架构可以分为四层,五个部分.我给自己制定的学习路线图是这样的: 对于有java基础的入门级android开发者而言,首先要学会使用Application F ...