我使用CKModifyRecordsOperation
來保存一組記錄,如果我有互聯網連接都可以正常工作,並且正在調用完成塊。但是,當我沒有連接完成塊沒有被調用,我沒有得到任何信息,我的操作失敗。CKModifyRecordsOperation modifyRecordsCompletionBlock不被稱爲
我用下面的代碼完成塊
modifyOperations.modifyRecordsCompletionBlock = ^(NSArray *savedRecords, NSArray *deletedRecordIDs, NSError *error)
{
if(error){
NSLog(@"Error: %@", error.localizedDescription);
}
item.creatorRecordId = record.recordID;
};
,然後我用
[self.publicDB addOperation:modifyOperations];
任何想法如何,我可以得到的信息進行操作,如果操作失敗,例如在沒有互聯網連接的情況下?
我最近一直在處理這個問題。如果沒有互聯網,操作不會失敗。它只是等待。當您的Internet連接返回時,操作將完成。一個選項(我實現的)是在將操作添加到數據庫之前進行可達性檢查。 – rmaddy
是的,我也一直在想它。但是,如果在檢查可達性並執行操作之前連接丟失,則此解決方案可能存在問題...我一直在考慮實現計時器,然後在一段時間後檢查可達性(如果操作未觸發)。但是,現在又有一個問題應該是什麼。 – Wojtek