利用 NSSetUncaughtExceptionHandler,當程序異常退出的時候,就給指定的郵箱發送郵件,郵件內容包括髮生異常時候的詳情。代碼以下:app
void UncaughtExceptionHandler(NSException *exception) { NSArray *arr = [exception callStackSymbols]; NSString *reason = [exception reason]; NSString *name = [exception name]; NSString *urlStr = [NSString stringWithFormat:@"mailto://suifeng_89@163.com?subject=bug報告&body=感謝您的配合!<br><br><br>" "錯誤詳情:<br>%@<br>--------------------------<br>%@<br>---------------------<br>%@", name,reason,[arr componentsJoinedByString:@"<br>"]]; NSURL *url = [NSURL URLWithString:[urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; [[UIApplication sharedApplication] openURL:url]; }
而後在函數
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptionsui
裏面函數裏面添加url
NSSetUncaughtExceptionHandler (&UncaughtExceptionHandler);