【问题标题】:IOS Enterprise Distribution update keep user data?IOS Enterprise Distribution 更新保留用户数据?
【发布时间】:2013-04-02 12:38:26
【问题描述】:

我正在制作一个 iPad 应用程序,它将使用企业分发程序从我自己的 Web 服务器分发。 该应用程序本身会检查服务器上的较新版本,并在 IOS 中调用 itms-services 来更新自身。这很完美。

应用程序包包含一个目录,其中包含图像和电影等资源。

Apple 声称如果 bundle-identifier 相同,更新将保留用户数据。

发件人:http://help.apple.com/iosdeployment-apps/mac/1.1/#app43ad802c

如果您希望用户将应用的数据保存在他们的设备上,请确保新版本使用与要替换的相同的捆绑标识符,并告诉用户在安装新版本之前不要删除旧版本。如果捆绑标识符匹配,新版本将替换旧版本并将数据保存在设备上。

当从 Xcode 直接将应用程序运行到我连接的 iPad 时,我可以删除包含我的资源的文件夹,再次运行应用程序,该文件夹仍保留在我的 iPad 上的捆绑包中。

这种行为是我所寻找的。我计划通过新的更新添加更多包含新资源的文件夹。由于资源相当繁重,我不希望用户不得不下载越来越大的档案。我只想添加新内容。

当我在没有文件夹的情况下创建新存档并像用户一样从我的网络服务器更新应用程序时,就会出现问题。然后文件夹好像被删除了。

有这方面的经验吗?

【问题讨论】:

  • 据我所知,App Bundle 将始终被新的应用程序包覆盖。这确实适用于文档、库、缓存和临时目录。此外,您还会看到,如果您清理构建,您会丢失应用程序包中的旧文件,这些文件已从项目中删除。

标签: ios distribution updates enterprise


【解决方案1】:

您安装的包总是被您安装的新包覆盖。文档中提到的用户数据是存储在文件系统的 Documents 和 Library 文件夹中的数据。如果您希望确保旧的包文件始终可用,您可以将它们从包中复制到应用程序的 Library/Caches 文件夹中。 值得一提的是,确保临时安装覆盖当前捆绑包的方法是确保更改捆绑包版本。

希望这有帮助:)

【讨论】:

  • 感谢您的快速回复并为我指明了正确的方向。只需将我的文件夹复制到文档文件夹,然后将我的代码指向那里,它就可以完美地工作。
  • 那么您是说不要更改版本,否则它肯定会覆盖捆绑包?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-11
  • 1970-01-01
相关资源
最近更新 更多