使用苹果提供的异常处理类

来源:互联网 发布:开淘宝店能赚几千万吗 编辑:程序博客网 时间:2024/05/07 16:40

苹果给我们提供了异常处理的类,NSException类。这个类可以创建一个异常对象,也可以通过这个类获取一个异常对象。

这个类中我们最常用的还是一个获取崩溃信息的C函数,我们可以通过这个函数在程序发生异常的时候收集这个异常。

// 将系统提供的获取崩溃信息函数写在这个方法中,以保证在程序开始运行就具有获取崩溃信息的功能- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    // 将下面C函数的函数地址当做参数    NSSetUncaughtExceptionHandler(&UncaughtExceptionHandler);    return YES;}// 设置一个C函数,用来接收崩溃信息void UncaughtExceptionHandler(NSException *exception){    // 可以通过exception对象获取一些崩溃信息,我们就是通过这些崩溃信息来进行解析的,例如下面的symbols数组就是我们的崩溃堆栈。    NSArray *symbols = [exception callStackSymbols];    NSString *reason = [exception reason];    NSString *name = [exception name];    NSLog(@"symbols:%@", symbols);    NSLog(@"reason:%@", reason);    NSLog(@"name:%@", name);}

我们也可以通过下面方法获取崩溃统计的函数指针

NSUncaughtExceptionHandler *handler = NSGetUncaughtExceptionHandler();


0 0
原创粉丝点击