应用程序更新的iOS方法

嗨,我想知道是否有任何方法,当一个应用程序更新类似于androids onUpgrade()。 我在我的应用程序中使用SQLite数据库,并在新版本中架构已经改变了很多。

如果旧版本是在手机上,我通过Xcode运行新版本。 它不会工作,因为旧的表不对应。 该应用程序同步到服务器,所以我不担心用户数据。 所以我可以放弃更新的所有表格。

没有指示升级的API。 你需要自己确定一下。 有许多可能的方法。

我在我的基于sqlite的应用程序中做的是我有一个数据库中的元数据表。 这包含模式版本号。 我对照我放入代码的硬编码版本号进行检查。 如果他们不同,那么我知道数据库需要更新。 我在我的应用程序中提供了SQL脚本,可以将任何以前的模式版本更新到当前版本。 我只需运行与数据库中显示的版本相匹配的脚本。

这种方法允许我处理那些在一段时间内没有升级的用户,并且模式可能需要经过多次修订。