【问题标题】:What precisely happens when iOS installs an update to an app?当 iOS 为应用程序安装更新时,究竟会发生什么?
【发布时间】:2011-03-07 22:19:57
【问题描述】:

当您安装应用更新时,官方记录的行为是什么?

This question 提出了同样的问题,但answer 表示应用程序包已被替换,但所有其他文件夹均未触及,它没有提供任何文档。我有 reason 相信 app bundle 实际上没有被替换,所以我想确定一下。

请链接到文档!

【问题讨论】:

  • 作为问答的后续。 Middaparka 的回答回答了问题的一部分——保留了哪些文件/数据。我试图弄清楚在这样的场景中调用了哪些委托方法(如果有的话): 1. 我们在 iOS 4.x 上,后台处理开启 2. 应用程序进入后台(主页按钮) - applicationWillResignActive: & applicationDidEnterBackground: 被调用 3. 用户选择从 AppStore 更新 应用被杀了吗?是否调用了 applicationWillTeminate:?我猜(随着捆绑包被替换)该应用程序必须被杀死,对吧?

标签: iphone xcode


【解决方案1】:

来自iOS Application Programming Guide(请参阅“文件系统”中的“应用程序更新期间保存的文件”部分):

当用户下载应用程序时 更新,iTunes 将更新安装在 一个新的应用程序目录。那么它 将用户的数据文件从 旧安装到新安装 删除前的应用程序目录 旧安装。中的文件 保证以下目录 在更新期间保留 进程:

  • <Application_Home>/Documents
  • <Application_Home>/Library

虽然 其他用户目录中的文件可能 也被搬过来,你不应该 依靠他们在场后 更新。

您在 Why isn't my iPhone app bundle replacing the old one during an update? 问题中看到的是 Xcode 无法正确检测/推送更新资源到设备的问题,这是一种非常不同的情况。

【讨论】:

    猜你喜欢
    • 2014-04-20
    • 2023-04-01
    • 1970-01-01
    • 2011-01-18
    • 2019-07-29
    • 1970-01-01
    • 1970-01-01
    • 2015-12-25
    • 2023-03-29
    相关资源
    最近更新 更多