2017-02-25 41 views

回答

1

要將數據永久存儲在設備上,您有幾個選項,例如, Core Data,.plist files,或者像你說的UserDefaults。如果您的應用程序不需要其他任何數據庫/持久性,但僅用於存儲少量數據(如少數通知),那麼使用UserDefaults可能是一個不錯的選擇,因爲它非常易於使用。請記住,UserDefaults僅適用於少量數據。在這裏存儲太多會對性能產生不利影響,尤其是發佈時間。

我爲你描述(數據存儲在UserDefaults,但如果應用程序被終止丟失)的bug的猜測是,你不要在你的應用程序委託的applicationWillResignActive:方法至少調用UserDefaults.standard.synchronize()設置數據後,或。因爲只有這個調用才能確保數據實際寫入磁盤。

如果我猜錯了:請提供您嘗試的代碼。

相關問題