ios 异常处理 来自开源中国代码 记录下

来源:互联网 发布:初学者学linux 编辑:程序博客网 时间:2024/05/16 11:09

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中 加入

NSSetUncaughtExceptionHandler(&UncaughtExceptionHandler);


void UncaughtExceptionHandler(NSException * exception){    return;    NSArray * arr = [exception callStackSymbols];    NSString * reason = [exception reason];    NSString * name = [exception name];    NSString * url = [NSString stringWithFormat:@"========异常错误报告========\nname:%@\nreason:\n%@\ncallStackSymbols:\n%@",name,reason,[arr componentsJoinedByString:@"\n"]];    NSString * path = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject] stringByAppendingPathComponent:@"Exception.txt"];    [url writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:nil];        NSString *urlStr = [NSString stringWithFormat:@"mailto:xxx@xxxx.com?subject=娱乐精选客户端bug报告&body=很抱歉应用出现故障,感谢您的配合!发送这封邮件可协助我们改善此应用<br>"                        "错误详情:<br>%@<br>--------------------------<br>%@<br>---------------------<br>%@",                        name,reason,[arr componentsJoinedByString:@"<br>"]];        NSURL *url2 = [NSURL URLWithString:[urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];    [[UIApplication sharedApplication] openURL:url2];}



0 0
原创粉丝点击