我正在使用sqlite作为持久存储,所以我可以将.sqlite文件上传到例如Amazon S3,以便为用户提供备份其应用数据的能力吗? 然后进行恢复只需将其下载并替换应用程序文件夹中现有的.sqlite文件。
有人看到有任何问题吗?有人做过吗?关于如何实现数据备份功能的任何其他建议?
答案 0 :(得分:3)
是的,可以上传SQLite文件;它只是一个文件,可以像任何文件一样备份。
一般来说,这种方法可能有点不灵活:处理.sqlite文件中的数据是一种全有或全无的方法。
如果您想提供更精细的备份,您可能需要考虑一种解决方案,用于将手机数据库中的记录与存储在其他位置的记录同步。即,读取您要备份的所有对象,将它们转换为JSON / XML /,然后将它们上传到服务器,然后将服务器添加到自己的数据库中。
您将导出,发送到服务器并将服务器导入其自己的数据库的原因是,这将允许您执行更精细的编辑 - 即仅同步自上次同步以来已更改的条目。然而,由于您需要控制服务器上运行的软件并且还有代码将CoreData对象序列化为传输格式,因此需要做更多的工作。