我希望我的应用程序中包含一些初始核心数据对象。用户可以删除这些对象,并在下次启动应用程序时,对象应该仍然消失。如何才能实现它,只有当我的应用程序安装时,它才会使用我选择的初始值填充核心数据库?也就是说,我不希望每次应用启动或启动时都会加载这些值;只有一次。有没有任何方法可以做到这一点类似于我们如何使用xcode的图形界面创建实体?
答案 0 :(得分:0)
只需将数据保存为其他形式,例如plist或xml文件,并在首次运行时导入它,在代码中创建必要的Core Data对象并保存到持久性存储。您还应设置NSUserDefaults
密钥以记录应用程序是否已运行且项目是否已成功创建。
当应用程序启动时,检查用户默认密钥,如果不存在,则填充,否则不要。仅仅检查持久性存储的内容是不够的,因为正如您在问题中指出的那样,用户可能已经删除了种子数据。
如果您使用的是iCloud,则应首先检查该应用是否已在其他设备上运行。