美文网首页
你知道有哪些情况会导致app崩溃,分别可以用什么方法拦截并化解?

你知道有哪些情况会导致app崩溃,分别可以用什么方法拦截并化解?

作者: natewang | 来源:发表于2018-10-07 21:19 被阅读212次

1、NSInvalidArgumentException 异常
向容器加入nil,引起的崩溃。hook容器添加方法,进行判断。
https://github.com/jasenhuang/NSObjectSafe

2、 SIGSEGV 异常

SIGSEGV是当SEGV发生的时候,让代码终止的标识。 当去访问没有被开辟的内存或者已经被释放的内存时,就会发生这样的异常。另外,在低内存的时候,也可能会产生这样的异常。

3、 NSRangeException 异常

造成这个异常,就是越界异常了,在iOS中我们经常碰到的越界异常有两种,一种是数组越界,一种字符串截取越界

4、SIGPIPE 异常

先解释一下什么是SIGPIPE异常,通俗一点的描述是这样的:对一个端已经关闭的socket调用两次write,第二次write将会产生SIGPIPE信号,该信号默认结束进程。

SIGABRT 异常 这是一个让程序终止的标识,会在断言、app内部、操作系统用终止方法抛出。通常发生在异步执行系统方法的时候。如CoreData、NSUserDefaults等,还有一些其他的系统多线程操作。 注意:这并不一定意味着是系统代码存在bug,代码仅仅是成了无效状态,或者异常状态。

https://www.jianshu.com/p/c7efbc283480

相关文章

网友评论

      本文标题:你知道有哪些情况会导致app崩溃,分别可以用什么方法拦截并化解?

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