异常报告记录 传给服务器或者其他
1. 在 main 函数中 加方法(抛异常)
int main (int argc, char * argv[]) {
@try {
@autoreleasepool {
return UIApplicationMain(argc,argv,nil,NSStringFromClass([AppDelegate class]));
}
}
@catch (NSException *exception) {
NSLog(@"main----%@", [exception callStackSymbols]); // 数据可以传给服务器
}
}
2. 在AppDelegate 中 Finish方法中
/**
* 拦截异常
*
*/
void handleException(NSException *exception)
{
NSMutableDictionary *info = [NSMutableDictionary dictionary];
[info setObject:[exception callStackSymbols] forKey:@"callStack"];
[info setObject:[exception name] forKey:@"name"];
[info setObject:[exception reason] forKey:@"reason"];
NSLog(@" handle exception %@",info);
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
NSSetUncaughtExceptionHandler(handleException);
return YES;
}