当一个iOS应备宽空用程序崩溃时,系统会创建一份crash日志保存在设备上。这份crash日志记录着应用程序崩溃时的信息,通常包含着每个执行线程的栈调用信息(低内存闪退日志例外),对于开发人员定位问题很有帮助。
这个日志里有报错是不影响使用的,详情看下面。
这个日志主要是用来提供给开发者的。
可以忽略不急,也可以删除。
奔溃日志一般是系统出错或者某个软件出错。
这种日志一般是不会影响正常使用的,可以不用担心。
iTools--创想天空第一个核心产品,巧旅是一款简洁有着"无需越狱,即可同步"功能的苹果设备同步管理软件,也是继iTunes后全球第二款支持对iOS管理的软件。它可以让你非常方便的完成对iOS设备的管理,包括信息查看、同步媒体文件、仿瞎安装软件、备份SHSH等功能。
iTools 大大的简化了苹果用户对设备的使用,与业内同类软件相比在软件大小、资源占用、运行速度、功能完备、产品体验上都有显著的优势,并通过提供更多更深的功能让苹果用户获得更多的乐趣。
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)
}
以上代码很简单,但是带来的作用是非常大的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)