iOS程序闪退时的处理一句代码搞定异常拦截
2016-11-22 本文已影响3183人
iCode_
APP在使用时难免出现BUG甚至引起闪退,这在很大程度上降低了用户的体验度。这个封装类,可以拦截到系统异常并弹出警告框(AlertView),即在APP闪退时,由用户决定是退出还是继续。宝宝再也不用担心APP闪退了这在某种程度上能够提高用户的体验度。GitHub传送门。先上图
这是一种自定义的样式,当然您可以下载demo后查看一下默认样式。在自定义设置时采用“链式编程”(我的这一篇文章《iOS,Objective-C链式编程简谈》有介绍)。
而且使用超简单,只需一句代码搞定:
1.导入头文件 #import "SPUncaughtExceptionHandler.h"
2.在Appdelegate里面只需调用捕捉异常类的一个方法如下:
-(BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
InstallUncaughtExceptionHandler();
return YES;
}
已添加cocoapods支持: pod search SPUncaughtExceptionHandler
另外将日志存储在本地Documents文件夹下,并提供了获取日志文件路径的方法
只要整个程序有任何地方崩溃,它都能够捕捉到:(然后你在任何一个文件中写一个会导致程序崩溃的方法,比如给一个Button添加方法,但是并没有实现方法)
⚠️注:不要在debug环境下(会出现只拦截一次的情况)测试。因为系统的debug会优先去拦截。要运行一次后,关闭debug状态(不连接Xcode)。即直接点击我们在模拟器或真机上build的app去运行。
GitHub地址有任何问题您可以留言
😊如果对您还有所帮助,记得在github上给颗星哦😊