zoukankan      html  css  js  c++  java
  • ios Crash Log 分析汇总

    方法一:

    1.xcode 有自带的symbolicatecrash,可以将.crash文件中的16进制地址转换成可读的函数地址。

    symbolicatecrash位于:

    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/symbolicatecrash(Xcode 4.5)

    可以将symbolicatecrash拷贝到便于操作的目录。

    如:将其拷贝到Desktop/iphonedug文件夹中。

    2.每一次Build之后会有相应的xxx.app, xxx.app.dSYM文件,.dSYM文件是将Build之后的文件16进制地址对应的函数地址储存起来之后的文件。

    每一个xx.app, xxx.app.dSYM文件都拥有相应的uuid,crash文件也有uuid,只有三者uuid一至才表明之三者可以解析出正确的日志文件。

    查看xx.app文件的uuid的方法,在terminal中输入命令:dwarfdump --uuid xxx.app/xxx (xxx工程名)

    查看xx.app.dSYM文件的uuid的方法,在terminal中输入命令:dwarfdump --uuid xxx.app.dSYM (xxx工程名)

    而.crash的uuid位于,crash日志中的Binary Images:中的第一行。如:armv7s  <13760bde0d073f1eb4d596c3df753f4b>

    将对应的xx.app, xx.app.dSYM文件也拷贝到Desktop/iphonedug文件夹中

    3.使用symbolicatecrash解析.crash日志。

    在terminal中输入命令:./symbolicatecrash xxx.crash xxx.app.dSYM > test.log

    这样可以将.crash日志转换成test.log,test.log即可读的函数文件。

    输入上述命令可能会出现Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 53.这个错误。

    如果出现上述错误,输入命令:export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer,

    然后继续执行./symbolicatecrash xxx.crash xxx.app.dSYM > test.log可以成功

    方法二:

    使用命令:atos -o xxx.app/xxx -arch armv7 0x38ad42f9 0x38ad42f9 0x38ad42f9(多个16进制地址,使用空格分开)

    注意.app, .app.dSYM需要跟日志程序版本build一致

  • 相关阅读:
    input上传mp3格式文件,预览并且获取时间
    jquery 页面input上传图后显示
    将String类型的字符串拼接成以逗号分隔的字符输出
    layui select多选下拉显示 以及回显
    input输入框只能输入数字和英文逗号
    电脑开机右下角有小金锁,并且提示一分钟后重启电脑
    修改tomcat控制台的标题
    VC防止程序被多次运行 互斥体方法
    VC中遍历进程并获取进程信息
    VC中遍历目标进程中的模块
  • 原文地址:https://www.cnblogs.com/yingkong1987/p/3157705.html
Copyright © 2011-2022 走看看