我目前正在开发一个需要数据的应用程序。示例:书籍清单。在首次启动时创建预先填充的数据库的最佳方法是什么?还是我们需要在首次启动时填充核心数据库?
在此先感谢您的帮助 :)
我目前正在开发一个需要数据的应用程序。示例:书籍清单。在首次启动时创建预先填充的数据库的最佳方法是什么?还是我们需要在首次启动时填充核心数据库?
在此先感谢您的帮助 :)
您可以以任何您喜欢的方式存储“种子数据”、文本文件、plist 等,甚至可以存储在数据库中(可能是 sqlite)。
然后在启动您的应用程序时,检查数据是否已存在于您的核心数据存储中。如果没有,请将文件导入数据库。
您还可以有一个预配置的数据库并将其复制到应用程序文档目录以使其可写。这是一种更复杂的方法,因为每次种子数据或模型更改时,您都必须重新生成此种子数据库。
在我的应用程序中,我有一个仅用于读取(不写入)的数据库,我将其包含在分发的捆绑包中。然后我更新 AppDelegate->persistentStoreCoordinator 方法以指向我的数据库的正确位置。
如果我需要写入数据库,那么我需要在访问它之前将它移动到 Documents 目录。并且不需要对 AppDelegate->persistentStoreCoordinator 进行更改。