我希望能夠讀取崩潰日誌並將其發送到我的服務器。我見過這樣做的庫,實際上我的代碼基於他們 - 除了其中許多看起來過時,這就是爲什麼我相信我目前遇到OSX沙箱問題。以編程方式在OSX /可可應用程序中讀取目標C中的崩潰日誌
似乎有任何生成的崩潰日誌的2個部分。在/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"}
我認爲這是一個問題與權利/沙箱。有什麼方法可以訪問此文件,或者以其他方式獲取完整的堆棧跟蹤以發送給我的崩潰記者?
您可以嘗試爲文件URL創建書籤,並使用com.apple.security.files.bookmarks.app-scope設置爲YES的書籤。 – Volker
您是否找到解決方案?我花了2天時間重構FeedbackReporter來完成崩潰報告處理。所有工作都因沙箱而下地獄。 – SayeedHussain
不,我沒有任何運氣。書籤的東西是一個好主意,但它並不能逃避沙盒:嘗試創建書籤具有相同的錯誤。 –