iOS应用版本升级- Bundle内容是否被删除



想知道iOS版本升级的具体细节吗,特别是新版本中删除的捆绑内容会发生什么?例如,如果版本1.0中有一个名为"foo.png"的文件,但版本2.0没有,iOS在升级时是否会删除现有的foo.png ?还是把它留在那里?谢谢你,亚历克斯

可以这样考虑:

  1. 旧的包(可执行文件,资源等)被完全删除。
  2. 新bundle被放到原来的位置。
  3. 应用包外的文件系统保持不变。

所有应用程序存储的数据、文档和用户默认值都保持在原来的位置。你的应用程序的新版本将醒来,发现所有的状态仍然在那里,需要正确地处理它。但是旧的应用包的资源都不在这里,你不需要担心这些东西的升级和版本。

升级将删除所有旧文件。更新后,bundle中只会有属于目标的文件。

这是至关重要的。比如说你删除了一个笔尖。如果它实际上没有被删除,它仍然会从bundle的文件系统中初始化。你可能不会在视图控制器中为你删除的xib中的连接设置iboutlet等。这将导致应用程序在初始化nib时崩溃。

最新更新