【发布时间】:2017-11-16 03:15:05
【问题描述】:
在做了一些研究之后,我尝试了这些,这就是我得到的:
我发现崩溃日志放在这个文件夹中:
/var/mobile/Library/Logs/CrashReporter/
有了这些信息,我尝试:
通过使用获取该路径下的文件
[[NSFileManager defaultManager] contentsOfDirectoryAtPath:crashReportPath error:&error];
但我总是得到 NSCocoaErrorDomain 257,这意味着我没有权限。
因此,我尝试通过使用来设置此文件夹的权限
NSFileManager *manager = [NSFileManager defaultManager];
NSMutableDictionary *attributes = [NSMutableDictionary dictionaryWithDictionary:[manager attributesOfItemAtPath:crashReportPath error:nil]];
[attributes setValue:[NSNumber numberWithShort:0777] forKey:NSFilePosixPermissions];; // chmod permissions 777
[manager setAttributes:attributes ofItemAtPath:crashReportPath error:&error];
但我总是得到 NSCocoaErrorDomain 513 NSFileWriteNoPermissionError 这意味着我没有写权限。
没有运气,我试过这个帖子:
iPhone sdk read crash files programmatically?
通过设置NSSetUncaughtExceptionHandler 来处理未处理的异常,但这似乎有一些问题,因为有时应用程序可能会处于不稳定或无效状态。
我知道有很多第三方崩溃报告插件,但它们中的大多数只是生成对某些监控信号的报告,而不是真正的崩溃报告。
关于获取真正的崩溃报告有什么建议吗? 有没有其他办法?
【问题讨论】:
标签: ios objective-c