2016-10-29 36 views
1

我有一個大型圖像存儲爲CKAsset,作爲記錄的一部分,該記錄還包含日期和其他可能會更改的詳細信息。圖像和其他細節都存儲在我的應用程序本地。如何避免重新傳輸大型CKAssets,繼其他數據更新

如果我更改日期(例如)並嘗試重新提交記錄到CloudKit(通過創建新記錄,設置其數據字段並使用CKModifyRecordsOperation),CKAsset數據將重新上傳並隨後下載到所有設備。

如果我嘗試不在記錄中設置CKAsset信息,我會收到「無法修改某些記錄」的錯誤消息。

如何避免不必要的圖像傳輸(我不擔心其他數據不必要地發送,因爲它很小)?

我是否應該將CKAsset存儲到單獨鏈接的記錄中,以便在更改時只需下載圖像?

+0

我不一定知道最佳做法,但我處於類似的情況,並且我爲圖像設置了單獨的記錄。作爲一個單獨的記錄,我使用後臺下載的「CKSubscription」進行設置,以便只有在客戶端應用程序發生變化時才能通知客戶端應用程序下載圖像。 –

+1

我最終還是分開存儲圖像,只花了一兩個小時就改變了過來,但現在我掌控了一切。 –

回答

2

爲避免大塊數據發生額外的不必要傳輸,可以將圖像存儲在單獨的記錄中。

通過這種方式,可以更頻繁地同步小數據項(可能會頻繁更新),而不會影響圖像對數據上限的不利影響。

相關問題