【问题标题】:IOS: Data persistence between versions of the appIOS:应用程序版本之间的数据持久性
【发布时间】:2015-07-28 15:37:24
【问题描述】:

我找不到有关主题的任何信息:当我在 iTunes 上发布新版本的 iOS 应用程序时发生了什么?设备上的旧版本是否已完全替换?或者有持久性的 Documents 文件夹? 是否可以使更新类似于“干净”安装?

【问题讨论】:

    标签: ios iphone xcode ipad itunes


    【解决方案1】:

    当您发布对 iOS 应用的更新并且用户安装它时,系统不会清除应用内的任何数据。

    这意味着给定用户的 Documents 目录 NSUserDefaults 中的数据以及钥匙串将在应用更新之间保持不变。

    然而,有几个重要的注意事项:

    1. 应用程序的 Caches 目录永远不会可靠地持久化,因此如果您想确保数据保持安全,请不要将其放在此目录中
    2. 即使您完全删除应用程序并重新安装,钥匙串中的项目似乎仍然存在。我过去曾注意到这一点,因此请牢记这一点

    简而言之,如果您希望在每次更新时从应用中清除数据(不知道为什么要这样做),您必须手动执行此操作。

    【讨论】:

      【解决方案2】:

      您的 Documents 文件夹将不会被清理。
      如果要清除它,请确保在新版本中以编程方式进行。

      仅当用户删除应用程序时才会删除 Documents 文件夹。

      【讨论】:

      • 感谢您的回复。 Documents 文件夹是唯一在版本之间保留的东西还是还有其他东西?在我的情况下,我需要确保新版本几乎就像全新的全新安装一样。
      • 不,只有你的应用包被替换。所有用户数据(文档、钥匙串、NSUserDefaults ......都被持久化了。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多