- (void)catchCrash{
NSSetUncaughtExceptionHandler (&UncaughtExceptionHandler);
//由挂起导致的终止信号
signal(SIGHUP, ExceptionSignalHandler);
//由中断导致的终止信号
signal(SIGINT, ExceptionSignalHandler);
//由退出导致的终止信号
signal(SIGQUIT, ExceptionSignalHandler);
//注册程序由于abort()函数调用发生的程序终止信号
signal(SIGABRT, ExceptionSignalHandler);
//注册程序由于非法指令产生的程序终止信号
signal(SIGILL, ExceptionSignalHandler);
//注册程序由于无效内存的引用导致的程序终止信号
signal(SIGSEGV, ExceptionSignalHandler);
//注册程序由于浮点数异常导致的程序终止信号
signal(SIGFPE, ExceptionSignalHandler);
//注册程序由于内存地址未对齐导致的程序终止信号
signal(SIGBUS, ExceptionSignalHandler);
//程序通过端口发送消息失败导致的程序终止信号
signal(SIGPIPE, ExceptionSignalHandler);
}
/**
捕获普通的闪退
*/
void UncaughtExceptionHandler(NSException *exception) {
}
/**
捕获因内存访问错误,重复释放等原因的闪退
*/
void ExceptionSignalHandler(int signalval){
UncaughtExceptionHandler(nil);
}
// 杀死程序时的回调
- (void)applicationWillTerminate:(UIApplication *)application {
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
UncaughtExceptionHandler(nil);
}
iOS闪退后调用的一些回调函数
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...