我正在創建一個應該下載大量JSON文件的應用程序,並且第一次啓動時,我正在考慮在應用程序文件夾中插入這些文件。通過這種方式,當用戶下載應用程序時,不需要第一次下載這些文件,我可以離線填充數據庫。 然後,(例如幾個小時),這個應用程序下載新文件(在後臺下載,解析和更新數據庫),它具有所有數據更新。 這是完美的,但它有一個大問題:如果用戶刪除應用程序並再次下載(例如一週後),他可以查看舊數據; 什麼可以解決這個「問題」?iOS:在第一次啓動應用程序時管理數據
謝謝
我正在創建一個應該下載大量JSON文件的應用程序,並且第一次啓動時,我正在考慮在應用程序文件夾中插入這些文件。通過這種方式,當用戶下載應用程序時,不需要第一次下載這些文件,我可以離線填充數據庫。 然後,(例如幾個小時),這個應用程序下載新文件(在後臺下載,解析和更新數據庫),它具有所有數據更新。 這是完美的,但它有一個大問題:如果用戶刪除應用程序並再次下載(例如一週後),他可以查看舊數據; 什麼可以解決這個「問題」?iOS:在第一次啓動應用程序時管理數據
謝謝
iOS應用程序只能寫入數據到它的文件夾。此文件夾將與應用程序一起完全刪除。所以沒有理由擔心舊數據。
更新: 應用程序文件夾被完全刪除。但是,如果用戶開啓此功能,舊數據可以與iCloud同步。爲避免這種情況,您應該將數據標記爲禁止同步。你可以在這裏找到解決方案Prevent iCloud sync of data (using .nosync?)
這不是一個問題 - 如果用戶從現在起2個月內安裝你的應用程序,他還將擁有「舊」數據,直到從網絡獲取任何更新的數據。如果您想要在您的應用中提供的數據在幾周後沒有任何價值,那麼爲什麼還要預加載它呢?
您應該嘗試儘快從網站加載更新的數據,以確保用戶看到的數據是最新的數據。
順便說一句,您還可以爲您的應用程序提供預加載的數據庫 - 您無需在第一次啓動時使用JSON文件填充空數據庫。
對此的一個警告 - 如果數據存儲在鑰匙串中,則在應用程序被刪除時它不會被刪除。如果舊數據不需要,應採取其他預防措施。 –
有用的筆記。 +1。 – Avt
是的,但在應用程序保持舊數據,當你再次下載它 – CrazyDev