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,代码仅仅是成了无效状态,或者异常状态。