我希望能够读取崩溃日志并将其发送到我的服务器。我已经看到了执行此操作的库,实际上我将代码建立在它们的基础上-除非其中许多似乎已经过时,这就是为什么我认为我目前在OSX沙箱方面存在问题。

任何生成的崩溃日志似乎都有两部分。 /Users/zane/Library/Containers/**[BUNDLE_ID]**/Data/Library/Application Support/CrashReporter中的.plist信息不多。但是,它包含的一件事是Path~/Library/Logs/DiagnosticReports/**FULL_CRASH_FILE**.crash

但是,当我尝试通过[NSString stringWithContentsOfFile...]打开此完整路径时,出现读取访问错误:
Error Domain=NSCocoaErrorDomain Code=257 "The file “Aftermath_2014-02-12-210934_inZania.crash” couldn’t be opened because you don’t have permission to view it." UserInfo=0x600000264700 {NSFilePath=/Users/zane/Library/Logs/DiagnosticReports/Aftermath_2014-02-12-210934_inZania.crash, NSUnderlyingError=0x600000246900 "The operation couldn’t be completed. Operation not permitted"}

我认为这是权利/沙盒的问题。有什么办法可以访问此文件,或者获得完整的堆栈跟踪信息发送给我的崩溃报告器?

最佳答案

您可以检查日志文件的权限!!它可能需要root权限才能访问!

关于objective-c - 在OSX/cocoa应用程序中以编程方式在Objective C中读取崩溃日志,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21746364/

10-12 00:09