2012-09-20 66 views
6

我建立通用app.In我的應用我使用SQLite database.I要同步我的iCloud的本地數據,以便在誰iPhone上安裝應用程序的任何其他用戶可以同步數據到他的手機/ Ipad。iCloud的同步與應用程序中使用SQLite數據庫 - IOS

我做搜索與此相關的很多地方,我發現的iCloud同步的代碼數據,但我使用SQ-精簡版。

是他們的任何方式來執行此操作。

在此先感謝。

+1

任何一個可以請幫我出this.I時遇到了實施it.As我的整個項目使用SQ-精簡版,並在結束時,我可以在我的數據庫不能轉移到coredata麻煩。 –

+0

你必須手動想出一個同步方案/協議。 icloud在這裏表現得像一個桶,而且相當。啞。 CoreDataa是否帶有現成的同步協議,但是在較低的層面上它沒有存在 –

+0

試圖通過iCloud同步SQLite數據庫而沒有像Core Data這樣的東西將會充滿困難。思考SQLite的工作方式 - 更新個人記錄 - 以及iCloud的工作原理 - 在文件級別 - 並且您發現與他們結婚非常困難。核心數據通過稍後合併的事務文件來完成。重新創建你自己將是...挑戰。 – Hunter

回答

2

最好的辦法是實現核心數據能夠與iCloud的同步。從我的研究中,沒有使用Core Data同步SQLite數據庫與iCloud的便捷方式。使用它獲得的優勢不僅限於訪問數據。實現核心數據可以幫助您更有效地處理數據,因爲它爲對象關係映射提供了一個成熟的框架。它確實存在限制,例如模式更改如何使現有商店無法訪問。但是,它在支持對象持久性等方面也很出色。總體而言,它只能幫助您使用它,特別是在與iCloud同步方面。

有開始您的數據庫轉換爲核心數據不同的方式。一種方法是一旦擁有模型,就手動修改由Core Data生成的SQLite數據庫。您可以通過查看Xcode中管理器中可用的/ AppData/Documents中生成的數據庫來確定要更改的內容。從那裏可以簡單地將SQLite數據複製到新數據庫。儘管Apple不推薦此方法,因爲它們可能會更改核心數據架構,但它可以提供輕鬆遷移現有數據集的方法。另一種方法是編寫代碼在應用程序中的數據存儲之間進行轉換。如果您願意,您甚至可以同時維護這兩種實現,SQLite和Core Data。

相關問題