2012-04-11 160 views
2

我有一個庫式iCloud +核心數據設置。我正在處理的應用程序包含位於登錄屏幕後面的用戶數據。用戶登錄後,實例化Persistent Store Coordinator,並將iCloud存儲添加到其中。處理iCloud核心數據錯誤

這裏是我的使用情況和問題:

1)開始使用應用程序,數據被存儲到iCloud 2)刪除應用程序 3)重新生成到設備,登錄到應用程序,預計交易日誌被召回並在本地商店中重新創建數據。 4)當使用慢速連接時,我在調試日誌中出現錯誤,多次指出文件下載失敗... 5)該應用程序爲空,現在看起來好像備份恢復失敗。

我的配置確實是正確的,並且通過下降連接100%工作。

有沒有辦法強制iCloud重試立即下載這些文件?是否有回撥,我可以使用它來確保這些文件已成功下載,然後才允許用戶進入應用程序?

任何意見將不勝感激!謝謝。

回答

1

iCloud是一項仍處於初級階段的技術,尤其是與Core Data的整合。

iCloud決定將內容推送到設備的時間間隔是不可預知的,不幸的是,目前沒有辦法迫使iCloud檢索數據。在蘋果開發者論壇的某處,它說,當iCloud內容無法下載時,它會稍後再試。

現在還沒有可以立即使用的回調函數,您的應用程序將需要(如果可能)足夠聰明以知道何時下載了正確的內容。根據您需要的內容數量,您可以通過查看通知中獲得的數據來執行一些清單:NSPersistentStoreDidUpdateUbiquitousContentChangesNotification(如果有)以及檢查userInfo字典是否包含插入(或更新,刪除)的行。

我已經能夠在應用程序中做類似的事情,並且當您的情況發生時,爲用戶加載本地商店並稍後將商店遷移到無處不在的商店。

這些只是一些建議,您的情況可能會有很大的不同。希望這至少有助於某種方式。