我想实现应用程序内崩溃日志的创建,并在应用程序崩溃后从用户那里获取它。所以,我查看了 PLCrashReport 并尝试添加到我的应用程序中。我发现有很多链接可以下载这个框架。喜欢谷歌代码,Github。
我真的不知道我应该下载哪个文件。它显示了某种二进制发布、源代码发布、大量 PLCrashReporters..
有人可以指出在我的应用程序中添加 PLCrashReporter 的方法吗?
提前致谢
此处显示了如何集成 PLCrashReporter 的示例(已存档):
//
// Called to handle a pending crash report.
//
- (void) handleCrashReport {
PLCrashReporter *crashReporter = [PLCrashReporter sharedReporter];
NSData *crashData;
NSError *error;
// Try loading the crash report
crashData = [crashReporter loadPendingCrashReportDataAndReturnError: &error];
if (crashData == nil) {
NSLog(@"Could not load crash report: %@", error);
goto finish;
}
// We could send the report from here, but we'll just print out
// some debugging info instead
PLCrashReport *report = [[[PLCrashReport alloc] initWithData: crashData error: &error] autorelease];
if (report == nil) {
NSLog(@"Could not parse crash report");
goto finish;
}
NSLog(@"Crashed on %@", report.systemInfo.timestamp);
NSLog(@"Crashed with signal %@ (code %@, address=0x%" PRIx64 ")", report.signalInfo.name,
report.signalInfo.code, report.signalInfo.address);
// Purge the report
finish:
[crashReporter purgePendingCrashReport];
return;
}
// from UIApplicationDelegate protocol
- (void) applicationDidFinishLaunching: (UIApplication *) application {
PLCrashReporter *crashReporter = [PLCrashReporter sharedReporter];
NSError *error;
// Check if we previously crashed
if ([crashReporter hasPendingCrashReport])
[self handleCrashReport];
// Enable the Crash Reporter
if (![crashReporter enableCrashReporterAndReturnError: &error])
NSLog(@"Warning: Could not enable crash reporter: %@", error);
}