上周六参加cocoachina 8月份的线下活动,感觉很有收获,特别是有人提到了symbolicatecrash,symbolicatecrash是xcode自带的一个工具,可以根据真机上的crash日志,定位发生crash的位置,把默认显示的地址信息替换成代码信息
一开始找symbolicatecrash文件一直找不到,网上都这么写
Xcode 4.3的symbolicatecrash的位置和老版本的不一致了。
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/
Xcode 4.3之前
/Developer/Platforms/iPhoneOS.
platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/symbolicatecrash
但还是找不到,因为Applications下面根本就没有xcode这个文件(文件夹),后来我把xcode的安装目录拖到applications里面就可以了,原来就是在xcode安装源文件里就可以找到
symbolicatecrash工具能够把日志和dSYM文件转换成可以阅读的log信息,也就是将内存地址,转换成程序里的函数或变量和所属于的 文件名.所以我们我进行定位,需要依赖dSYM文件
实际上,dSYM文件中保存了相关symbol的内存地址信息,symbolicatecrash根据这些信息将.crash中的内存地址,一一替换成了相应的symbol。
有三个方案就是一个是切换到symbolicatecrash所在的目录下进行操作,另一个方案就是因为symbolicatecrash文件独立于xcode其他文件,所以可以把symbolicatecrash文件copy出来到dsym所在的文件夹里面,再有一个就是把symbolicatecrash文件copy到命令目录下,mac下是在/usr/bin 跟/usr/sbin下,我放到了前一个里面
然后就执行 symbolicatecrash -o output.txt xx.crash xxx.DSYM 命令,分析crash信息了
参考:http://blog.csdn.net/messageloop3/article/details/7805280
http://www.devdiv.com/CRASH分析利器_---_symbolicatecrash使用小记-weblog-21666-10217.html
http://www.cocoachina.com/macdev/cocoa/2010/0427/1222.html
分享到:
相关推荐
iOS Crash 文件分析工具 symbolicatecrash symbolicatecrash 是苹果官方提供的命令行工具,用于分析和符号化 iOS Crash 文件。通过使用 symbolicatecrash 工具,我们可以将 Crash 文件中的地址信息转换为可读的符号...
symbolicatecrash,crash分析工具
iOS系统Crash文件分析是指在iOS设备上发生崩溃时,如何对崩溃日志进行分析和诊断,以确定崩溃的原因和解决方案。下面将对iOS系统Crash文件分析方法进行详细介绍。 一、symbolicatecrash工具 symbolicatecrash是...
iOS Crash日志-分析 iOS Crash日志分析是指对iOS应用程序崩溃日志的分析和处理过程。崩溃日志是指当iOS应用程序崩溃时,系统记录的错误信息。这些错误信息通常包括崩溃的函数名、文件名、行号、错误码等信息。 ...
1. **导出日志**:将设备上的Crash日志复制到本地,可以通过Terminal命令行工具使用`symbolicatecrash`命令或者第三方工具如FLEX (Flipboard's Excellent Logger) 来处理。 2. **上传至服务器**:将处理后的日志上传...
iOS Crash文件分析方法汇总 iOS Crash文件分析是移动应用程序开发中非常重要的一步骤,它可以帮助开发者快速定位和解决应用程序崩溃问题。今天,我们将总结iOS Crash文件的几种分析方法,这些方法都是平时比较常用...
"iOS crash工具"就是用于帮助开发者高效分析并解决这类问题的工具。它能够一键获取错误信息,提供精确的位置定位,使得问题排查更加迅速和准确。下面将详细介绍这类工具的工作原理、常见功能以及如何使用它们。 一...
当release的版本 crash的时候,会有一个日志文件,包含出错的内存地址, 使用symbolicatecrash工具能够把日志和dSYM文件转换成可以阅读的log信息,也就是将内存地址,转换成程序里的函数或变量和所属于的 文件名.
4. 分析崩溃信息:在将地址转换为源代码行后,你需要解读堆栈信息,找出崩溃发生时的函数调用顺序,以及可能的错误原因。这可能涉及到对异常处理机制的理解,例如Objective-C的`@try/@catch`,或者C++的异常。 5. ...
首先,将.crash文件和symbolicatecrash工具放在同一个目录下。接着,使用`grep`命令找到与dSYM匹配的UDID,如`grep --after-context=1000 "Binary Images:" TestCrash.crash | grep TestCrash`。然后,将找到的UDID...
它利用Xcode 附带的内置symbolicatecrash命令行工具为您(作为iOS 或Mac 开发人员)提供易于使用的图形前端,用于符号化应用程序中出现的崩溃报告。 文档 Symbolicator 非常易于使用:只需选择一个 .crash 文件,为...
4. **使用symbolicatecrash工具**:Apple还提供了`symbolicatecrash`脚本,它是Xcode的一部分,可以自动化atos的过程,处理整个崩溃日志,生成更易读的报告。只需提供崩溃日志、dSYM文件以及应用的二进制文件路径,...
1. **分析调用堆栈**:根据符号化后的信息,从最底部的函数开始向上追溯,找出可能导致崩溃的原因。 2. **检查异常信息**:有时,崩溃日志会包含异常信息,如`EXC_BAD_ACCESS`或`SIGABRT`,这可以帮助确定问题类型。...
5. **符号化崩溃日志**:当从用户那里获取到远程崩溃日志时,需要通过Xcode的 Organizer 或命令行工具symbolicatecrash 来将十六进制地址转换为源代码行,以便分析。 6. **DWARF Debug Information**:DWARF是嵌入...
- **崩溃日志生成**:当应用崩溃时,Crasher会生成详细的崩溃日志,包含堆栈跟踪信息,这对于分析崩溃原因至关重要。 - **符号化崩溃信息**:Crasher集成了`symbolicatecrash`工具,可以将十六进制的内存地址转换...
这是用于 iOS/OSX 崩溃转储的 Xcode/symbolicatecrash 的简单替代。 它应该支持 32 位/64 位 ARM 和 x86 崩溃报告。 它使用 Spotlight 以与symbolicatecrash 相同的方式定位dSYM。 扩展它应该足够简单,以允许您指定...