iOS App版本升级 - 捆绑内容是否被删除?

时间:2011-09-28 21:40:49

标签: objective-c ios

寻找有关iOS版本升级版本如何工作的具体细节,具体说明在新版本中删除的捆绑内容会发生什么?例如,如果版本1.0在捆绑包中有一个名为“foo.png”的文件,但版本2.0没有,那么iOS在升级过程中会删除现有的foo.png吗?还是留在那里?谢谢,亚历克斯

2 个答案:

答案 0 :(得分:6)

考虑它的方法是:

  1. 旧捆绑包(可执行文件,资源等)已完全删除。
  2. 将新捆绑在其位置上。
  3. 捆绑包外的应用程序文件系统保持不变。
  4. 您的所有应用程序存储的数据,文档和用户默认值都保持原样。您的应用程序的新版本将被唤醒,以找到仍然存在的所有状态,并且需要正确处理它。但是,旧应用程序包的资源都不存在 - 但您不必担心会看到这些内容的升级和版本化。

答案 1 :(得分:4)

升级会删除所有旧文件。更新后,您将只拥有捆绑包中属于目标的文件。

这实际上至关重要。假设你删除了一个笔尖。如果它实际上没有被删除,它仍然只是简单地在bundle的文件系统中初始化。并且您可能没有在视图控制器中使用IBOutlet等来删除您删除的xib中的连接。这将导致应用程序在初始化nib时崩溃。