zoukankan      html  css  js  c++  java
  • iOS 崩溃日志分析(个人总结,最实用)

    iOS 崩溃日志分析(个人总结,最实用)

    要分析奔溃日志需要三个文件:crash日志,symbolicatecrash分析工具,.dSYM符号集


    0. 在桌面创建一个crash文件夹

    1. 需要Xcode自带的崩溃分析工具symbolicatecrash,这个文件的位置参考:/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash
    快速找到的方法:打开finder后右键code.app 显示包内容然后   /Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash
    将symbolicatecrash 拷贝到桌面的crash文件夹中

    2. 找到崩溃程序对应的.dSYM文件,这个文件是每个打包的程序都唯一对应的,所以每次打测试包的时候就要注意提前保存
    寻找.dSYM文件的位置:Xcode->window->organizer 选择Archives(打测试包的时候就在这个位置,可以直接操作)右键show in finder 可以看到你的程序文件,再右键这个文件显示包内容有一个dSYMS文件夹,点击进去,将.dSYM文件拷贝到桌面上的crash文件夹

    3.找到你崩溃时的crash文件,位置:Xcode->window->Devices->选中测试手机,点击views Devices Logs,根据时间点找到你的崩溃日志,右键Export 到桌面,再将这个crash文件放入桌面的crash文件夹

    4.打开终端,进入你的crash文件夹:/Desktops/crash 然后使用命令:./symbolicatecrash ./*.crash ./*.app.dSYM>symbol.crash 如果出现解析过程就说明解析成功,这个时候再返回你的crash文件夹打开crash文件,就能够看到解析后的crash,可以直接定位奔溃位置,奔溃函数名也能看到

    5.如果执行命令失败出现Error:"DEVELOPER_DIR" is not defined at ./symbolicatecrash line 60.
    需要先执行export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer 命令后再执行./symbolicatecrash ./*.crash ./*.app.dSYM>symbol.crash

    6.如果出现Error: can't find tool named 'otool' in the macosx SDK or any fallback SDKs at ./symbolicatecrash line 115.参照http://stackoverflow.com/questions/33358799/cant-find-tool-named-otool-in-the-macosx-sdk-or-any-fallback-sdks-at-symbol以及http://www.tuicool.com/articles/VzEBBn 

    7. 补充说明:

    cat ./symbol.crash

    可以在终端打开解析后的crash文件,再使用

    dwarfdump --lookup 0x000cf358 --arch armv7 appname.app.dSYM/

    根据奔溃位置地址信息找到指定位置

    Line table dir : '/Users/zhy/Downloads/ios/vlink_app_xunyi/xunYi7/library/ASIHttpRequest'
    Line table file: 'ASIDownloadCache.m' line 320, column 3 with start address 0x00000000000cf340

     


    注:关于.dSYM文件,当程序运行之后直接去products中右键show in finder 也能找到

  • 相关阅读:
    web实现rtmp推流拉流(vue + nginx)
    css邊框
    通过IIS操作修改服务器文件没有权限的解决办法
    C#、ASP.NET、WinForm
    阿里云 ECS实例诊断与修复工具,将问题解决周期从24小时缩短至分钟级
    Gartner发布云产品评估报告:阿里云计算能力全球第一
    晓生:这个朋友我交定了!
    从 VMWare 到阿里神龙,虚拟化技术 40 年演进史
    如何在公有云上部署私有云?阿里云专有宿主机轻松搞定
    RHEL6.4安装出现“sda must have a GPT disk label ”解决方法
  • 原文地址:https://www.cnblogs.com/YangFuShun/p/6337266.html
Copyright © 2011-2022 走看看