Exception异常处理

1.Exception 前言                        
 
在iOS里对异常的处理及捕获,并没有其它语言里那么常见,相信很多iOS程序员都知道,更多的时候是对内存的的检测与分析,检测相关内存方面的问题。
 
而在app闪退并不是因为内存的时候,这时候我们完全可以将常见的一些异常捕获。
 
捕获后发送至服务器,并且友好提示用户错误,或则直接回滚到用户操作前,阻止应用程序的崩溃。
 
 
 
 
 
2.Exception处理                         
2.1.当知道具体位置偶尔发生错误,又无法解决时                      
这时可以利用xcode自带的try 来处理,避免程序崩退。
 
 
 
 
 
 
 
2.2.不知道具体位置,监听常用错误,发送到服务器                     
这里我们需要利用到两个框架。 两个第三方框架的,使用按具体的情况来应对
 
都可以在github上搜到
 
1.UncaughtExceptionHandler
可以检测出常见错误,并友好的提示用户 例如
 
 
 
1.NSArray、NSDictionary、NSString、KVC等问题引起的闪退。 
2.解决NSObject performSelector找不到selector引起的闪退。 
 
 
   使用方法:
 
1、首先需要在appDelegate中使用InstallUncaughtExceptionHandler()用于监听
2、添加UncaughtExceptionHandler这个类
 
iOS SDK提供的函数是NSSetUncaughtExceptionHandler来进行异常处理。但是无法处理内存访问错误、重复释放等错误,因为这些错误发送的SIGNAL。所以需要处理这些SIGNAL
 
 
 
效果在Demo里可以来检测。
 
 
 
 
2.DurexKit安全工具包
可以阻止程序崩溃,并且可以自己写段逻辑在后台拦截到异常信息,发送至服务器,让程序从容运行。
 
缺点:用户没用提示,操作回滚。
 
 
 
使用方法:导入即可
 
#import "DurexKit.h" 
 
使用Category,参数经过判断后才能执行方法,再将原生抛异常的方法替换,所以不需要修改任何已有的代码,仅import工具包的头文件,即可解决部分异常问题。 
 
    1、NSArray、NSDictionary、NSString、KVC等问题引起的闪退。 
 
    2、解决NSObject performSelector找不到selector引起的闪退。 
 
 
1.1.将文件夹 "DurexKit" 添加到项目中; 
1.2.#import "DurexKit.h" 
1.3.无需修改项目中的任何代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值