-
最好直接pod安装
pod 'AvoidCrash'
-
在AppDelegate.h 导入头文件#import "AvoidCrash.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// 1 开始监听
[AvoidCrash becomeEffective];
// 2 监听通知:AvoidCrashNotification, 获取AvoidCrash捕获的崩溃日志的详细信息
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(dealwithCrashMessage:) name:AvoidCrashNotification object:nil];
return YES;
}
- (void)dealwithCrashMessage:(NSNotification *)note {
//注意:所有的信息都在userInfo中
//你可以在这里收集相应的崩溃信息进行相应的处理(比如传到自己服务器)
NSLog(@"%@",note.userInfo);
}
- 在调用处验证崩溃
void)viewDidLoad {
[super viewDidLoad];
NSString *nilStr = nil;
NSMutableArray *array = [NSMutableArray array];
[array addObject:nilStr];
}
-
Run吧 你会发现程序并没有闪退 控制台会输出引起这次crash的原因
屏幕快照 2016-11-30 17.22.12.png -
AvoidCrash的功能不仅仅是数组,还报错字典等许多功能,具体用法可以参考https://github.com/chenfanfang/AvoidCrash
网友评论