发布应用程序在App Store中的更新

3

这里有一个关于在应用商店发布更新的问题。

  1. 假设我在我的iPhone上安装了一个应用程序,其中包含一些数据库,即用户加入信息并将数据保存在本地。
  2. 如果新版本的应用程序发布并安装在我的iPhone上,那么数据库会丢失吗?

我认为应用程序的所有信息都将被删除,并且更新将像新应用程序一样安装。请确认。

谢谢

4个回答

4
不,用户数据不会丢失。
当您更新应用程序时,只会更新捆绑数据,这意味着已安装应用程序的.app目录。任何其他目录,例如Documents和Library都不会被触及。
如果有需要更新的文件在例如Documents目录中,则必须编写代码来检测并进行必要的更改。
如果数据库由Core Data使用,则需要版本和迁移数据。

2

您的应用程序文档目录中存储的所有文件(通常是存储db文件的位置)在应用程序更新期间都会被保留。


1
如果您为 iPhone 的数据库设置了版本号,那么处理起来就会很容易。将版本号保存到数据库中,每次调用数据库时与预期的版本进行比较。如果新版本大于旧版本,则使用 SQL ALTER 语句更改模式(如果您已更改了数据库的模式),并更新应用程序版本号。因此,每当用户更新或进行新安装时,它都会检查新版本和旧版本,如果不同,则更新模式,如果相同,则不需要做出任何更改。
引用: 如果您没有进行任何模式相关更改(例如添加新列...),则无需担心,用户将不会丢失数据。

0

我的猜测是,它不会替换任何现有的文件,而只是在有更改时更新它们......数据不会丢失的最好例子是......我通常会更新大多数游戏。即使在更新后,它们也会保留我的高分记录.. 哈哈!所以,继续吧。没有什么会丢失的。不过这是个好问题。 :)


没错,它会适用于你,因为你没有对数据库进行任何模式相关的更改 :) - Praveen-K

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接