Ios 重置模拟器时删除Sqlite文件
我在IOS项目中使用sqlite。启动应用程序时,我正在将sqlite文件从主捆绑包复制到documents目录。它确实会复制,但假设我重置模拟器,documents目录中的sqlite文件也会被删除,因此所做的所有更改都会随之消失Ios 重置模拟器时删除Sqlite文件,ios,sqlite,ios5,ios-simulator,nsfilemanager,Ios,Sqlite,Ios5,Ios Simulator,Nsfilemanager,我在IOS项目中使用sqlite。启动应用程序时,我正在将sqlite文件从主捆绑包复制到documents目录。它确实会复制,但假设我重置模拟器,documents目录中的sqlite文件也会被删除,因此所做的所有更改都会随之消失 任何帮助都将不胜感激。首先,您可以阅读保存持久数据的位置,以及如何防止iCloud备份。对于模拟器,您需要将代码添加到封装在“ifdef模拟器”中的程序中(我手头没有关于测试定义的参考,但我知道有一个),并将文件的副本保存到指向用户帐户(ie/Users/xyz/i
任何帮助都将不胜感激。首先,您可以阅读保存持久数据的位置,以及如何防止iCloud备份。对于模拟器,您需要将代码添加到封装在“ifdef模拟器”中的程序中(我手头没有关于测试定义的参考,但我知道有一个),并将文件的副本保存到指向用户帐户(ie/Users/xyz/iOS/xzy.data)的完全限定路径。当你的应用程序启动时,你首先会像在设备上一样在适当的位置查找文件。然后,如果没有找到该文件,仅针对模拟器,您可以查看该硬编码路径中是否有文件,如果有,请将其复制回模拟器。重置模拟器就是这样做的。它会删除你的应用程序及其数据。如果您不想丢失数据库,则不应重置模拟器。因此,如果我不想在重置模拟器时丢失数据,则应将其保存在documents目录以外的某个文件夹中??您还应注意,documents目录已备份到iCloud,所以,除非这是需要的行为,否则您的sqlite文件应该存储在其他地方。所以,在模拟器运行的情况下,我应该将它保存在其他地方?但在设备运行的情况下,文档目录是存储的地方吗?