美文网首页
查看iOS崩溃日志

查看iOS崩溃日志

作者: 863cda997e42 | 来源:发表于2018-08-09 15:34 被阅读464次

iOS开发经常会遇到崩溃的情况,许多上架的应用也会经常出现崩溃的情况,今天就来总结一下如何查看iOS奔溃日志。

先写一段让程序崩溃的代码。

- (IBAction)crash:(id)sender {
    NSArray *array = @[@1];
    NSLog(@"%@", array[1]);
}

在屏幕中加一个按钮,点击按钮程序崩溃。

Xcode 版本 9.2。
手机操作系统:iOS11.3,进入设置->隐私->分析->分析数据。里面包含了应用程序的崩溃日志。

想要查看日志里面的信息,需要三个东西。

  1. 崩溃日志文件
  2. Xcode自带的symbolicatecrash工具
  3. dSYM文件

使用真机可以导出日志文件,symbolicatecrash工具在/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources文件夹下。
dSYM文件在发布的应用程序包中,每一个发布版本都有一个dSYM文件。需要保存好这些dSYM文件。

将上面三个文件统一放在crash文件夹下。
打开终端程序,进入crash文件夹,输入下面的命令可以解析奔溃日志信息。

sfit-macmini-for-test:crash user$ pwd
/Users/user/Desktop/crash
sfit-macmini-for-test:crash user$ ./symbolicatecrash CrashDemo0809-2018-08-09-143458.ips CrashDemo0809.app.dSYM > out.crash
Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69.
sfit-macmini-for-test:crash user$ export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
sfit-macmini-for-test:crash user$ ./symbolicatecrash CrashDemo0809-2018-08-09-143458.ips CrashDemo0809.app.dSYM > out.crash
sfit-macmini-for-test:crash user$ 

打开out.crash里面有导致程序崩溃的原因:

Last Exception Backtrace:
0   CoreFoundation                  0x182efad8c __exceptionPreprocess + 228
1   libobjc.A.dylib                 0x1820b45ec objc_exception_throw + 55
2   CoreFoundation                  0x182e93d80 -[__NSSingleObjectArrayI objectAtIndex:] + 127
3   CrashDemo0809                   0x104c06660 -[ViewController crash:] + 26208 (ViewController.m:19)
4   UIKit                           0x18cc2a6c8 -[UIApplication sendAction:to:from:forEvent:] + 95
5   UIKit                           0x18cd4b8a4 -[UIControl sendAction:to:forEvent:] + 79
6   UIKit                           0x18cc3077c -[UIControl _sendActionsForEvents:withEvent:] + 439
7   UIKit                           0x18cd661dc -[UIControl touchesEnded:withEvent:] + 571
8   UIKit                           0x18ccada48 -[UIWindow _sendTouchesForEvent:] + 2427
9   UIKit                           0x18cca28f8 -[UIWindow sendEvent:] + 3159
10  UIKit                           0x18cca1238 -[UIApplication sendEvent:] + 339

定位到了出错文件及位置:

3   CrashDemo0809                   0x104c06660 -[ViewController crash:] + 26208 (ViewController.m:19)

当手机连接Xcode进行测试时,可以直接查看崩溃信息。
具体方法打开 window->Devices & Simulators

真机测试.png

点击View Device Logs


查看Crash信息.png

有关dSYM文件,可以在Build Settings搜索dSYM进行设置。


dSYM设置.png

相关文章

  • iOS 查看及导出项目运行日志

    级别:★☆☆☆☆标签:「iOS 查看及导出项目运行日志」「iOS 查看日志」「iOS 查看崩溃日志」作者: WYW...

  • iOS应用崩溃日志分析

    点击查看iOS的应用崩溃日志分析

  • iOS Crash 大解析

    iOS crash / 崩溃/ 异常 /捕获 1 崩溃日志(crash log) Xcode中 查看崩溃信息 手...

  • iOS 符号化闪退日志

    iOS分析崩溃日志 二 iOS应用崩溃日志分析 iOS崩溃crash大解析

  • 查看iOS崩溃日志

    iOS开发经常会遇到崩溃的情况,许多上架的应用也会经常出现崩溃的情况,今天就来总结一下如何查看iOS奔溃日志。 先...

  • iOS 崩溃日志查看

    原文链接:http://bbs.feng.com/read-htm-tid-7907323.html 什么是崩溃日...

  • iOS崩溃日志查看

    1.取手机日志文件 设置-隐私-分析-共享iphone分析-打开与应用开发者共享 点击:设置-隐私-分析-分析数据...

  • iOS crash日志查看

    iOS crash日志查看 1.iOS开发中经常遇到程序闪退问题,关于崩溃日志产生原因: 1、应用中有Bug。​2...

  • iOS15之后苹果崩溃日志解析方法

    iOS15之后苹果崩溃日志解析方法 背景 iOS 15之后,iPhone 崩溃日志崩溃之后,崩溃日志的组织格式有变...

  • iOS线上崩溃日志分析

    一、崩溃日志的获取 1、iOS设备可以直接查看 路径: ios10之后:设置->隐私->分析->数据分析 ios1...

网友评论

      本文标题:查看iOS崩溃日志

      本文链接:https://www.haomeiwen.com/subject/wqtcbftx.html