0
我正在使用使用核心數據的ios6的應用程序。有時候當我的應用程序崩潰時,數據不一致,有時候我終止應用程序。每當我對數據進行更改時,我都會保存上下文,並且'applicationWillTerminate:'中也調用了'saveContext'。在這方面的任何幫助。核心數據ios,數據在崩潰時出現不一致
我正在使用使用核心數據的ios6的應用程序。有時候當我的應用程序崩潰時,數據不一致,有時候我終止應用程序。每當我對數據進行更改時,我都會保存上下文,並且'applicationWillTerminate:'中也調用了'saveContext'。在這方面的任何幫助。核心數據ios,數據在崩潰時出現不一致
在保存數據的行上放置斷點,或使用NSLog
。然後重現您的崩潰情況。很可能您的保存代碼從未被調用過。
如果仍然有數據丟失,請使用sqlite3
命令行工具或Firefox插件查看SQLite數據庫來檢查數據庫。您很可能會在物理數據庫中找到這些數據 - 這意味着您在檢索並顯示數據時遇到問題,而不是保存數據。
如果您仍然缺少數據 - 恭喜! 你超越了時空的連續體,進入了現實的新層面。
你是什麼意思的「不一致?」。如果你的應用程序崩潰或者你停止了Xcode或者從多任務欄中刪除它,它將不會得到'applicationWillTerminate:'。 – jrturton
相關:http://stackoverflow.com/questions/7818045/applicationwillterminate-when-is-it-called-and-when-not – jrturton
是的,我明白你的觀點。我如何防止數據不一致,我的意思是我對核心數據進行了一些更改並保存了上下文,如果我停止了xcode的應用程序;下次運行應用程序時,我沒有收到停止之前保存的數據。 – Afnan