iOS Crash文件分析方法汇总
方法一 symbolicatecrash
1、查找symbolicatecrash
不同XCode版本symbolicatecrash的目录不一样
find /Applications/Xcode.app -name symbolicatecrash -type f
2、创建一个crash文件夹
mkdir crash
3、将crash文件、symbolicatecrash、dSYM拷贝到同一个目录下
4、导出DEVELOPER_DIR环境变量
export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"
这个行不执行有可能出现下面错误
Error:"DEVELOPER_DIR"isnotdefinedat./symbolicatecrashline69.
5、到处错误符号
./symbolicatecrash your.crash your.dSYM > result.crash
方法二 xcrun atos
以百度统计后台为例
xcrun atos -arch arm64 -o yourappname.app.dSYM/Contents/Resources/DWARF/yourappname -l 0x104b84000 0x0000000104c0a678
查找App UUID
dwarfdump --uuid xxx.app/xxx dwarfdump --uuid xxx.app.dSYM
相关推荐
-
iOS中程序异常Crash友好化处理详解
前言 前两天接到个面试,面试官问到上线的app怎么避免闪退,首先想到的就是在编码的时候进行各种容错,但貌似并不是面试官想要的答案,所以表现的很糟糕.今天有时间就来整理一下,希望有所帮助. 实现效果如图: 效果实现: 用法: 1.将截图的中CatchedHelper文件夹拖到你的项目工程中. 2.在AppDelegate.m中找到以下方法并如下添加代码: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithO
-
查看iOS Crash logs的方法
当应用在设备中运行发生崩溃,iOS将记录这些错误日志并且创建了崩溃报告(Crash Report).崩溃报告中包含了iOS的版本.日期.异常类型.堆栈跟踪以及其他信息. ① 在Xcode中查看崩溃报告 当应用还在开发过程中发生了崩溃,则直接可以使用Xcode Organizer来查看崩溃报告.按如下操作: 1.打开Organizer: 2.选择"Devices"选项(界面的顶部): 3.选择左侧菜单栏中的device项: 4.选择"Devices"中的"D
-
iOS开发笔记之键盘、静态库、动画和Crash定位
前言 本文主要分享了开发中遇到的问题,和相关的一些思考.分享出来给有需要的朋友们参考学习,下面话不多说了,来一起看看详细的介绍吧. iOS11键盘问题 功能背景: 弹出键盘时,如果有输入框的话,需要输入框的位置跟随键盘大小而变动. 问题描述: 当快速切换键盘之后,容易出现输入框的位置没有紧贴键盘,如下:(以简书键盘为例) 相关实现: 输入框监听系统的UIKeyboardWillShowNotification和UIKeyboardWillHideNotification事件,在回调的过程中用UI
-
iOS Crash常规跟踪方法及Bugly集成运用详细介绍
iOS Crash常规跟踪方法及Bugly集成运用 当app出现崩溃, 研发阶段一般可以通过以下方式来跟踪crash信息 #1.模拟器运行, 查看xcode错误日志 #2.真机调试, 查看xcode错误日志 #3.真机运行, 查看device系统日志 下面举例说明, 先写一段会Crash的代码crashdemo: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view
-
查看iOS已上架App的Crash信息定位、应对处理方式的实例
完整的App都是经过很多轮测试才能正式上架的,但是没有任何一个开发人员可以保证一定会不出现任何问题.如果已上架App出现奔溃(Crash)情况,对于开发人员来说如何查看Crash信息定位及对应的处理方式尤为重要.以下就是查看Crash信息定位的步骤和处理方式. Crash的来源:分布情况(自发现或者用户发现) 1. 通过对应的苹果开发者账号进入iTunes connect,进入App分析,查看对应的App信息,如:App购买量,使用次数,展示次数等. 2. 进入后找到App奔溃的信息,在这里可以
-
iOS监控笔记之启动crash
前言 相较于正常的崩溃问题,启动crash造成的损失要远远大得多.正常来说,如果有足够强健的构建发布系统,大多数时候能在版本上线之前及时发现问题并且修复,但是仍然存在小概率的线上意外.启动crash一般同时具备损害严重以及难以捕获两大特点 启动过程 从应用图标被用户点击开始,直到应用可以开始响应发生了很多事情.正常来说,尽管我们希望crash监控工具启动的尽可能早,但接入方往往总是等到launch事件之后才能启动工具,而在这个时间之前发生的崩溃就是启动crash,下面列出了在应用直到launch
-
iOS开发之WKWebViewJavascriptBridge Xcode9中导致crash的解决
前言 本文主要给大家介绍了关于iOS WKWebViewJavascriptBridge Xcode9中导致crash的相关解决办法,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. WKWebViewJavascriptBridge 这个第三方还是比较不错的,但是最近Xcode9上,却出现了crash:WKWebViewJavascriptBridge官方github看了大家也都有如此问题,最后终于解决了: 需要在WKWebViewJavascriptBridge类里,如下修改
-
iOS10适配之权限Crash问题的完美解决方案
升级 iOS 10 之后目测坑还是挺多的,记录一下吧,看看到时候会不会成为一个系列. 直入正题吧 今天在写 Swift 3 相关的一个项目小小练下手,发现调用相机,崩了.试试看调用相册,又特么崩了.然后看到控制台输出了以下信息: This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist must cont
-
iOS App连续闪退时上报crash日志的方法详解
前言 当一个iOS应用程序崩溃时,系统会创建一份crash日志保存在设备上.这份crash日志记录着应用程序崩溃时的信息,通常包含着每个执行线程的栈调用信息(低内存闪退日志例外),对于开发人员定位问题很有帮助. 为保障线上 App 的用户体验,我们一般都会对线上 App 的 crash 率做实时监控,一旦检测到 spike,可以即刻调查原因,但这一切的前提是 crash 日志能够准确上报. crash 日志上报有两个难点: crash handler 安装之前的代码要绝对稳定 如果日志采集器还没
-
iOS Crash文件分析方法汇总
方法一 symbolicatecrash 1.查找symbolicatecrash 不同XCode版本symbolicatecrash的目录不一样 find /Applications/Xcode.app -name symbolicatecrash -type f 2.创建一个crash文件夹 mkdir crash 3.将crash文件.symbolicatecrash.dSYM拷贝到同一个目录下 4.导出DEVELOPER_DIR环境变量 export DEVELOPER_DIR="/Ap
-
ios Plist文件配置方法
如下所示: 使用方法:info.plist文件右键 -> ->Open As -> sourceCode 将代码贴上(后续继续添加) <!-- 相册 --> <key>NSPhotoLibraryUsageDescription</key> <string>App需要您的同意,才能访问相册</string> <!-- 相机 --> <key>NSCameraUsageDescription</key
-
清除SQL Server数据库日志(ldf文件)的方法汇总
目录 解决方案1 - 直接删除本地ldf日志文件:(比较靠谱方案!) 解决方案2 -收缩数据库日志文件(最靠谱方案!) 解决方案3 - 采用SQL脚本删除. 清除SQL Server数据库日志(ldf文件)的几种方法 随着系统运行时间的推移,数据库日志文件会变得越来越大,这时我们需要对日志文件进行备份或清理. 解决方案1 - 直接删除本地ldf日志文件:(比较靠谱方案!) 1. 在SQL管理器分离数据库. 2. 对数据库日志文件进行压缩备份(rar, zip) 3. 直接删除ldf文件. 附加数
-
C#文件加密方法汇总
本文实例汇总了C#文件加密方法.分享给大家供大家参考.具体实现方法如下: 1.AES加密类 复制代码 代码如下: using System; using System.IO; using System.Security.Cryptography; using System.Text; namespace Utils { /// <summary> /// AES加密解密 /// </summary> public class AES {
-
Android Studio 引入 aidl 文件的方法汇总
AndroidStudio 引入 aidl 文件,一般来说,有两种方法. 第一种方法 直接在 src/main 目录下新建 aidl 文件夹,并将我们的 aidl 文件放到该目录下.因为 AndroidStudio 默认的 aidl 文件默认配置是这样的. 第二种方法 把 adil 文件拷贝到libs文件夹下在build.gradle文件中配置 sourceSets { main { jniLibs.srcDirs = ['libs'] aidl.srcDirs = ['src/main/jav
-
iOS关闭虚拟键盘方法汇总
在iOS应用开发中,有三类视图对象会打开虚拟键盘,进行输入操作,但如何关闭虚拟键盘,却没有提供自动化的方法.这个需要我们自己去实现.这三类视图对象分别是UITextField,UITextView和UISearchBar. 这里介绍一下UITextField中关闭虚拟键盘的几种方法. 第一种方法,使用它的委托UITextFieldDelegate中的方法textFieldShouldReturn:来关闭虚拟键盘. 在UITextField视图对象如birdNameInput所在的类中实现这个方法
-
使用批处理按要求批量删除文件夹方法汇总
示例一: 有这样一大堆文件夹结构,例如 abcde |-----abcd2000 |---------0003 |----------0004 ........ |------abcd2001 |---------0006 |----------0002 ........ |------abcd2002
-
C#读写文件的方法汇总
1.使用FileStream读写文件 文件头: 复制代码 代码如下: using System;using System.Collections.Generic;using System.Text;using System.IO; 读文件核心代码: 复制代码 代码如下: byte[] byData = new byte[100];char[] charData = new char[1000];try{FileStream sFile = new FileStream("文件路径",F
随机推荐
- javascript解三阶幻方(九宫格)
- WinForm实现仿视频播放器左下角滚动新闻效果的方法
- 精通JavaScript 纠正 cleanWhitespace函数
- 详解使用PM2管理nodejs进程
- VBS教程:属性-TotalSize 属性
- 正则替换换行符和把 br 替换成换行符
- 零基础写python爬虫之打包生成exe文件
- go语言执行等待直到后台goroutine执行完成实例分析
- Android SdkVersion的区别及获取版本信息方法
- js类型检查实现代码
- 利用XMLHTTP传递参数在另一页面执行并刷新本页
- Javascript中apply、call、bind的巧妙使用
- 浅析C/C++中的可变参数与默认参数
- 详解如何通过Mysql的二进制日志恢复数据库数据
- JS实现队列的先进先出功能示例
- 博客网站的“钱”途
- PHP程序员玩转Linux系列 nginx初学者引导
- IIS支持exe文件下载的配置方法
- Android基于Sensor感应器获取重力感应加速度的方法
- GridView使用学习总结