iOS 捕获崩溃

用苹果提供的api NSSetUncaughtExceptionHandler进行捕获


void CustomExceptionHandlers(NSException *exception){

    NSMutableDictionary *userInfo= [NSMutableDictionary dictionaryWithDictionary:[exception userInfo]];

    [userInfo setObject:exception.callStackSymbols forKey:@"CallstackSymbolsKey"];

    [userInfo setObject:[exception name] forKey:@"NameKey"];

    [userInfo setObject:[exception reason] forKey:@"ReasonKey"];

    NSLog(@"%@",userInfo);

    //可以在这个位置进行一些操作,比如保存或上传等,可以将堆栈信息一起上传

}

+(void)uncaughtSignalExceptionHandler {

    NSSetUncaughtExceptionHandler(&CustomExceptionHandlers);

}

uncaughtSignalExceptionHandler 可在项目启动时进行调用

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容