iOS 捕获程序崩溃日志_IOS

iOS开发中遇到程序崩溃是很正常的事情,如何在程序崩溃时捕获到异常信息并通知开发者?

下面就介绍如何在iOS中实现:

1. 在程序启动时加上一个异常捕获监听,用来处理程序崩溃时的回调动作

复制代码 代码如下:

NSSetUncaughtExceptionHandler (&UncaughtExceptionHandler);

官方文档介绍:Sets the top-level error-handling function where you can perform last-minute logging before the program terminates.
UncaughtExceptionHandler是一个函数指针,该函数需要我们实现,可以取自己想要的名字。当程序发生异常崩溃时,该函数会得到调用,这跟C,C++中的回调函数的概念是一样的。

2. 实现自己的处理函数

复制代码 代码如下:

void UncaughtExceptionHandler(NSException *exception) {
    NSArray *arr = [exception callStackSymbols];//得到当前调用栈信息
    NSString *reason = [exception reason];//非常重要,就是崩溃的原因
    NSString *name = [exception name];//异常类型
    NSLog(@"exception type : %@ \n crash reason : %@ \n call stack info : %@", name, reason, arr);
}

以上代码很简单,但是带来的作用是非常大的。

以上所述就是本文的全部内容了,希望对大家学习IOS开发能够有所帮助。

时间: 2024-10-29 21:12:47

iOS 捕获程序崩溃日志_IOS的相关文章

iOS 捕获程序崩溃日志

  我们常常会遇到iPhone手机或者iPad平板上运行APP崩溃的问题,有时候打开某个APP,却一下子"闪退"了.对于开发者来说,这个绝对是头疼的问题.那么如何获取到iOS设备崩溃日志呢?这个提供一些简单的方法,共开发者与用户沟通使用. iOS开发中遇到程序崩溃是很正常的事情,如何在程序崩溃时捕获到异常信息并通知开发者? 下面就介绍如何在iOS中实现: 1. 在程序启动时加上一个异常捕获监听,用来处理程序崩溃时的回调动作 代码如下: NSSetUncaughtExceptionHan

iOS应用的crash日志的分析基础

Outline如何获得crash日志如何解析crash日志如何分析crash日志     1. iOS策略相关     2. 常见错误标识     3. 代码bug 一.如何获得crash日志 当一个iOS应用程序崩溃时,系统会创建一份crash日志保存在设备上.这份crash日志记录着应用程序崩溃时的信息,通常包含着每个执行线程的栈调用信息(低内存闪退日志例外),对于开发人员定位问题很有帮助. 如果设备就在身边,可以连接设备,打开Xcode - Window - Organizer,在左侧面板

android程序崩溃后重启

有时候由于测试不充分或者程序潜在的问题而导致程序异常崩溃,这个是令人无法接受的,在android中怎样捕获程序的异常崩溃,然后进行一些必要的处理或重新启动 应用这个问题困恼了我很久,今天终于解决了该问题,写篇文章记录一下. 首先捕获程序崩溃的异常就必须了解一下java中UncaughtExceptionHandler这个接口,android沿用了此接口,在android API中: 通过实现此接口,能够处理线程被一个无法捕捉的异常所终止的情况.如上所述的情况,handler将会报告线程终止和不明

应用商店-(iOS)有个日志文件,希望能帮忙分析一下,说是在程序加载的时候,应用程序崩溃了。

问题描述 (iOS)有个日志文件,希望能帮忙分析一下,说是在程序加载的时候,应用程序崩溃了. 10C http://a103.phobos.apple.com/us/r30/Purple7/v4/38/1e/87/381e875f-bdf2-b8ed-33b6-b56cb1a6165b/temp..rgbcntpc.crash?downloadKey3=1449655120_daec0230692a58a1ba3f2a4c2d24b499 http://a1363.phobos.apple.co

iOS的应用程序崩溃率为何高于Android

应用崩溃的主要原因之一就是目前iOS和Android操作系统的分散和混乱.随着苹果和谷歌都发布了更多的全新操作系统,应用开发人员在测试自己开发的应用时需要面临着更多的操作系统.据调查显示,12月1日到15日之间,至少有23个不同iOS系统和33个Android系统存在着应用崩溃的情况. 图:iOS应用的整体崩溃了要高于Android iOS应用的崩溃率要高于Android 应用崩溃的情况同时存在于Android和iOS两大平台,而且其中占比例最大的是iOS 5.0.1,整体崩溃率达到了28.64

Windows程序崩溃捕获一例

背景: windows系统内某进程总是异常崩溃退出,导致程序频繁死掉,windows自带崩溃捕获dump的功能,只需要我们手动设置一下即可 1.启动 Windows Error Reporting Service 服务 2.移除默认的调试器 如果你的机器装了VS开发工具,会在注册表里写入调试器地址,需要把它删除 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger HKEY_LOCAL_M

Mac OS X 10.8及iOS 6系统存漏洞可致程序崩溃

&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;   硅谷网讯 近日, 苹果公司的Mac OS X 10.8及iOS 6系统被发现存在文本漏洞,可导致应用程序崩溃.据悉,苹果公司在半年之前就应该已经知晓该漏洞,但一直未进行修复,一部分越狱 开发者已经推出了相关补丁,但并不完善.目前,苹果公司仍未对这个Bug表态,但可以 肯定的是,这个Bug在未来的Mac OS X 10.9及iOS 7正式版中得到修复. 该漏洞源自

详解iOS应用程序内购/内付费(一)_IOS

很久之前就想出一篇iOS内付费的教程,但是一查网上的教程实在太多了,有的写得真的蛮不错的,就心想算了,于是就保存在草稿箱了.至于为什么写完它呢!真是说来话长,最近公司有个项目经理跑来问我有关苹果内付费相关的细节,跟他聊了半天,从项目对接苹果官方支付接口聊到了如何查看App收益,最后终于使他有了一些眉目,但是悲催的是还要我继续去跟他们项目的程序员讲解(真是疯了),所以我就决定给他们项目写一个内购的文档,所以我顺便把这篇博客完成吧! 首先进入苹果的ItunesConnection(https://i

为什么iOS的应用程序崩溃率高于Android

编者按:有没有想过为什么某些应用程序会如此频繁的崩溃吗?原因是多种多样的,根据你所使用的设备不同原因也是不同的,比如说苹果iOS设备(iPhone.iPad)或Android设备.本文将通过详实的统计数据为读者详细解析. 应用崩溃的主要原因之一就是目前iOS和Android操作系统的分散和混乱.随着苹果和谷歌都发布了更多的全新操作系统,应用开发人员在测试自己开发的应用时需要面临着更多的操作系统.据调查显示,12月1日到15日之间,至少有23个不同iOS系统和33个Android系统存在着应用崩溃