iphone - program - ttps developer apple com account




奇怪的新iOS 7錯誤:來自DB/ForceShrinkPersistentStore_NoLock的接收器 (5)

美好的一天。

我有一個使用SSL的大量網絡連接的項目。 這個項目運行良好,在iOS 5和6上沒有錯誤。但是對於新的iOS 7,我不斷得到這兩個錯誤:

ERROR: unable to get the receiver data from the DB

ForceShrinkPersistentStore_NoLock -delete- We do not have a BLOB or TEXT column type.  Instead, we have 5.

他們沒有任何關聯,我確實連續幾週獲得第一個,然後我也得到了第二個。

它們在我的應用程序啟動時收到,此時我發送幾個HTTP POST並處理接收到的數據。 我無法察覺這些錯誤來自哪裡。

如果我能理解它們,我就能找到它們。 任何人都知道他們的意思或者他們可以引起什麼樣的情況?


今天遇到同樣的問題。 在我的情況下ERROR: unable to get the receiver data from the DB通過從模擬器/設備清除應用程序來解決ERROR: unable to get the receiver data from the DB錯誤消息中ERROR: unable to get the receiver data from the DB 。 一旦運行app一段時間後再次報告錯誤。 每次我[NSURLSession dataTaskWithRequest:...]調用時[NSURLSession dataTaskWithRequest:...]記錄它。

發現它與緩存響應有關。 設置策略忽略本地緩存消除錯誤日誌記錄:

NSURLSessionConfiguration *defaultConfigObject = [NSURLSessionConfiguration  defaultSessionConfiguration];
defaultConfigObject.requestCachePolicy = NSURLRequestReloadIgnoringLocalCacheData;

NSURLSession *session = [NSURLSession sessionWithConfiguration: defaultConfigObject
                                                          delegate: nil
                                                     delegateQueue: [NSOperationQueue mainQueue]];

NSURLSessionDataTask * dataTask = [session dataTaskWithRequest:urlRequest completionHandler:completion];
[dataTask resume];

注意:一旦不再需要會話必須失效,否則會導致內存洩漏


刪除派生數據為我解決了這個問題。

窗口>管理器>項目

選擇您的項目,在派生數據旁邊點擊刪除。


我今天也遇到了你的第一個問題:

ERROR: unable to get the receiver data from the DB

我不知道原因(可能某種程度上緩存已損壞)但刪除所有模擬器的Applications文件夾使我的問題消失了。

rm -rf ~/Library/Application Support/iPhone Simulator/7.0-64/Applications/*

我遇到了同樣的問題,但是在iOS設備上調試時(iPhone 4 iOS 7.0.4)

不知道是什麼導致這個...但我嘗試刪除設備上的應用程序並重新運行,然後錯誤消失了。


這對我來說更容易解決:

剛剛從模擬器中刪除了應用程序(就像你從手機中刪除的那樣 - 不需要我刪除一些文件夾)修復了這個問題。





ios7