在新版本发行版中备份和还原sqlite db

时间:2014-04-28 17:56:45

标签: ios objective-c ipad sqlite version-control

我正在开发iPAD应用程序。发布新版本时,我在服务器端db上添加版本号,并通过Web服务调用它,并检查应用程序的构建版本。如果版本有变化,我调用URL来安装新版本的应用程序。什么是可能的解决方案,而不是从iPAD应用程序丢失我的数据,一旦安装新的应用程序,我使用相同的sqlite数据库。仅供参考...我没有使用任何MDM,也没有通过URL安装应用程序。如果我需要详细解释,请告诉我。

1 个答案:

答案 0 :(得分:0)

过去,应用版本更新通常会将数据重置为打包(ipa)中打包的数据包。然后,数据库中的用户数据将丢失。 (注意:由于已公布的增量更新选项,在IOS 7中可能已更改,但我从未能够检查出来)。

我的方法是提供一个备份恢复工具,在/ Document文件夹中创建一个Plist。这允许用户通过iTunes文件共享提取他的数据,然后如果他或她希望恢复它。如果您有服务器,则更好的方法是为注册用户创建文件夹,并将设施编程为从服务器返回/恢复。在任何更新之前提示用户使用备份,并提示用户从服务器恢复数据(如果可用且数据库为空)。