2010-09-08 41 views
0

我正在研究iphone應用程序項目。我們已經發布了一個使用coredata模型的應用程序,現在在我們的新版本中,我們希望刪除舊應用程序並添加一個新應用程序。 (我們不在現有核心數據模型上存儲任何用戶值)。我們忘了從應用程序文件夾中刪除xcdatamodel,但我們刪除了所有與核心數據相關的代碼。現在我們必須刪除xcdatamodelfile及其相關的h和m類。如何從核心數據中刪除datamodel並添加一個新的?

在我們的新項目包中,我們是否可以創建新的核心數據模型並提交該應用程序?我想知道這個新的xcdatamodel會在更新我們的新版本時爲用戶創建任何問題?

謝謝! 拉姆

回答

0
在我們的新項目包才能 創建一個新的核心數據模型和 提交申請

永遠不要忘記將改變數據模型後一個完整的重建,作爲構建過程中有時不能正確識別的數據模型改變

我喜歡 知道這個新xcdatamodel將創建 的任何問題同時更新我們的新版本 ?更新我們的新版本?

由於您不需要任何舊數據/遷移,因此在新位置創建持久存儲,舊模型/舊數據文件根本不會成爲問題。 (鑑於該模型已被適當的新版本所取代)

0

答案有點棘手,但這對我來說總是有效。這是一個乾淨安裝一個新的兼容.sqlite文件,不是遷移

啓動模擬器,刪除應用程序和數據(刪除應用程序後彈出)。

退出模擬器

打開X-代碼,進行任何編輯您的數據模型後

如果需要更新的數據模型版本:

  1. Editor > Add Model Version...
  2. 設置您的首選項對話框中(出現這種情況更可取)
  3. 單擊{appname}。xcdatamodeld然後在最右邊的窗格中
  4. 點擊的3個圖標左邊的圖標在最右邊一欄
  5. 的頂部Versioned Core Data Model下選擇剛纔創建

刪除{appname}.sqlite文件中的一個(或支持它起來,從項目文件夾中刪除,並刪除參考)

乾淨的應用程序(Product > Clean

運行在模擬器中的應用程序(本教程中我將承擔4.2)

當模擬器運行時,在Finder窗口,導航到: {home} > Library > Application Support > iPhone Simulator > 4.2 > Applications > {random identifier} > Documents > {appname}.sqlite

複製這個文件到另一個位置

停止運行在您的應用程序X-代碼

拖放將{appname} .sqlite文件放入X代碼中的文件列表中。

在彈出的對話框中,確保選中copy to folder複選框。

Product > Clean

然後在模擬器上再次運行應用程序

現在你應該有一個工作sqlite的文件!

乾杯, 羅伯特

相關問題