簡體   English   中英

使用iCloud將iPhone和iPad的Coredata iPhone轉換為iPad / Mac?

[英]Coredata iPhone to iPad/Mac with iCloud?

我們已完成編寫使用coredata的iPhone應用程序。 在其他版本中,我們計划添加一個iPad App,該App能夠顯示由iPhone App收集的數據(並進行修改,使用它),以便為用戶提供更多的交互可能性。

我的問題是:是否可以將(iPhone上已安裝的應用程序的)現有核心數據移動到雲中,並使用iPad應用程序讀取該數據?

如果是:您能指出我正確的起點嗎?

如果不是:是否還有另一種方法可以通過iPad應用程序訪問通過iPhone應用程序創建的核心數據?

使用Core Data的內置iCloud支持時,無論您使用哪種設備,都只需要以相同的方式初始化Core Data堆棧即可。 任何iOS設備或Mac都可以使用相同的iCloud存儲,而在一個設備上創建的數據可以在另一個設備上讀取。

但是,一個關鍵的細節是:如果您已經有一個數據存儲,並且添加了iCloud支持,則這些預先存在的記錄不會自動遷移到雲中。 iCloud基於事務日志工作,並且僅在保存更改時創建事務日志。 不會立即更改的現有數據不會產生任何事務,因此不會轉到雲中。

如果在添加iCloud時已有數據,則需要將數據遷移到新的數據存儲以強制進行這些現有記錄的事務。 您可以使用NSPersistentStoreCoordinatormigratePersistentStore:toURL:options:withType:error:方法輕松地做到這一點。 這並不難,但並非總是很明顯有必要。

首先,我首先建議在iCloud上觀看Apple的WWDC視頻,尤其是WWDC 2012的第227節“ 將iCloud與核心數據結合使用” 接下來,我建議特別謹慎,因為到目前為止,Core Data對iCloud的支持仍然遠遠不是蘋果API中最可靠的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM