【问题标题】:If I upload a next version of ios app in app store, is my Old data will be deleted如果我在应用商店上传下一个版本的 ios 应用程序,我的旧数据会被删除吗
【发布时间】:2016-10-29 06:57:23
【问题描述】:

我有一个澄清,如果我在 ituenes 应用商店上传了我的应用程序的第一个 1.0 版本,并且该应用程序 100 个用户已经下载并使用它,一个月后我在同一个应用程序中添加了一些额外的功能并上传下一个版本,例如:1.2

那么已经使用该应用程序的 100 个用户已经更新了下一个版本。

我的问题是:在第一个版本中,如果他们将数据保存在 1. Nsuser 默认 2. 核心数据

更新下一个版本时会被删除吗?

流程是什么,有人可以解释一下。

【问题讨论】:

  • 是的,如果 coredata 有任何变化,那么一旦用户更新应用程序,所有旧记录都将被删除。使用 coreData 迁移解决此问题。
  • 感谢 Nsuserdefault 和 Plist 怎么样?
  • 没有....看看这个链接stackoverflow.com/questions/1638766/…

标签: ios


【解决方案1】:

在使用 Core Data 时,如果您对数据模型进行了更改,那么有几种可能性。

首先,如果您什么都不做,只更新数据模型,那么当更新应用于现有安装时,应用程序将在尝试访问 CoreData 数据时崩溃。这是因为它所期望的模型与数据库中的模型不同。

其次,您可以通过手动删除核心数据存储并设置一个新存储来解决此问题。这也将删除所有数据,因此可能不是一个好的解决方案。

第三,您可以更新您的 CoreData 模型版本号。从现有数据模型创建新版本的数据模型,而不是仅仅更改数据模型。

现在,当应用检测到数据模型和数据不匹配时(如上面的第一个版本),它会将数据从旧版本迁移到新版本。有时这可以自动完成,但可能需要您提供一些额外的代码来帮助它。

本网站介绍迁移的工作原理...https://www.objc.io/issues/4-core-data/core-data-migration/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-18
    • 1970-01-01
    • 2012-02-27
    • 2019-06-01
    • 2018-09-03
    • 1970-01-01
    • 2017-07-28
    相关资源
    最近更新 更多