iOS 获取崩溃信息
2016-06-06 18:36
417 查看
NSSetUncaughtExceptionHandler (&UncaughtExceptionHandler);
// 收集崩溃信息的调用方法
void UncaughtExceptionHandler(NSException *exception) {
NSArray *arr = [exceptioncallStackSymbols];//得到当前调用栈信息
NSString *reason = [exceptionreason];//非常重要,就是崩溃的原因
NSString *name = [exceptionname];//异常类型
NSLog(@"exception type : %@ \n crash reason : %@ \n call stack info : %@", name, reason, arr);
}
获取到了崩溃的发送给开发者有以下两种方式:
1. 将崩溃信息持久化在本地,下次程序启动时,将崩溃信息作为日志发送给开发者。
2. 通过邮件发送给开发者。不过此种方式需要得到用户的许可,因为iOS不能后台发送短信或者邮件,会弹出发送邮件的界面,只有用户点击了发送才可发送。不过,此种方式最符合苹果的以用户至上的原则。
发送邮件代码也很简单:
NSString *crashLogInfo = [NSStringstringWithFormat:@"exception type : %@ \n crash reason : %@ \n callstack info : %@", name, reason, arr];
NSString*urlStr = [NSStringstringWithFormat:@"mailto://tianranwuwai@yeah.net?subject=bug报告&body=感谢您的配合!
"
"错误详情:%@",
crashLogInfo];
NSURL *url =[NSURL URLWithString:[urlStrstringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
[[UIApplication sharedApplication] openURL:url];
// 收集崩溃信息的调用方法
void UncaughtExceptionHandler(NSException *exception) {
NSArray *arr = [exceptioncallStackSymbols];//得到当前调用栈信息
NSString *reason = [exceptionreason];//非常重要,就是崩溃的原因
NSString *name = [exceptionname];//异常类型
NSLog(@"exception type : %@ \n crash reason : %@ \n call stack info : %@", name, reason, arr);
}
获取到了崩溃的发送给开发者有以下两种方式:
1. 将崩溃信息持久化在本地,下次程序启动时,将崩溃信息作为日志发送给开发者。
2. 通过邮件发送给开发者。不过此种方式需要得到用户的许可,因为iOS不能后台发送短信或者邮件,会弹出发送邮件的界面,只有用户点击了发送才可发送。不过,此种方式最符合苹果的以用户至上的原则。
发送邮件代码也很简单:
NSString *crashLogInfo = [NSStringstringWithFormat:@"exception type : %@ \n crash reason : %@ \n callstack info : %@", name, reason, arr];
NSString*urlStr = [NSStringstringWithFormat:@"mailto://tianranwuwai@yeah.net?subject=bug报告&body=感谢您的配合!
"
"错误详情:%@",
crashLogInfo];
NSURL *url =[NSURL URLWithString:[urlStrstringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
[[UIApplication sharedApplication] openURL:url];
相关文章推荐
- iOS音频播放的几种方式,打开后台模式的音乐播放、使用AVAudioPlayer播放音乐、播放指定的音频文件、注册音频文件
- IOS开发最新的公告关于保存缓存到Documents 发布被拒的解决办法
- iOS开发小技巧--获取自定义的BarButtonItem中的自定义View的方法(customView)
- ios进阶--Autolayout 之第三方框架--Masonry
- iphone6P上字体变大iOS适配ios6P
- iOS 获取当前正在显示的ViewController或者当前的PresentedViewController
- iOS开发runtime实现任意界面跳转
- ios进阶--Autolayout 之VFL语言
- ios进阶--Autolayout
- GRMustache的使用(HTML模板渲染工具)For iOS
- iOS证书过期的解决方法
- iOS 为分类添加属性
- IOS 打包成Ipa 文件
- IOS时间与日期处理
- iOS中的小问题总结
- iOS 工程如何在debug和release之间切换
- IOS之同步请求、异步请求、GET请求、POST请求
- iOS近场通信(蓝牙开发,WiFi开发)
- iOS中的并发编程
- iOS添加测试设备与调试