iOS 获取crash日志

在项目上架到App Store以后,谁也不能保证没有一个错误,可能在测试期间连测试人员都没有发现的隐藏小bug在上线之后被用户发现了,这就无疑给用户造成了困扰。所以作为开发人员,要及时的收集这些crash日志信息,然后修复这些问题。

这里我用了一种方法,就是当应用在用户使用时发生崩溃现象,会获取到崩溃的日志,然后调起邮箱让用户通过邮件发送给我们。

具体代码如下:

#pragma mark - 获取异常日志

- (void)installUncaughtExceptionHandler {

    NSSetUncaughtExceptionHandler(&UncaughtExceptionHandler);
}
void UncaughtExceptionHandler(NSException *exception) {

    NSArray *arr = [exception callStackSymbols];
    NSString *reason = [exception reason];
    NSString *name = [exception name];
    NSString *currentVersion = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"];
    NSString *urlStr = [NSString stringWithFormat:@"mailto://developer@qq.com?subject=Crash报告&body=您的建议会让我们做的更好,感谢您的配合!<br><br><br>""错误详情(%@):<br>%@<br>-----------------------<br>%@<br>---------------------<br>%@",currentVersion,name,reason,[arr componentsJoinedByString:@"<br>"]];
    NSURL *url = [NSURL URLWithString:[urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
    [[UIApplication sharedApplication]openURL:url];
}

然后在AppDelegate里的

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{

//获取异常报告
    [self installUncaughtExceptionHandler];

}

方法中调用就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值