Xcode编译并运行旧版本的应用程序

时间:2015-07-11 16:50:44

标签: ios xcode

我有一个应用程序已经存在了五年并经历了许多更新。当我想启动更新工作流程时,我将所有应用程序文件复制到新目录,在Xcode中打开新版本,更新不同目标的版本号,然后开始处理新版本。第一步一直是编译和运行新版本,看看我是从一个工作版本开始的。通过许多更新,这一直有效。

今天我做了这个,将我的应用从4.1.43更新到4.1.44。我将所有文件复制到新目录,更新所有版本并运行应用程序。但它不是在模拟器和设备上运行4.1.44版本,而是运行4.1.43。

第一个版本给了我很多重复接口和文件定义的错误。一个干净的修复,但Xcode仍然运行4.1.43,即使我在4.1.44目录中,只使用那里的文件。如果我回到4.1.43,我会得到重复的错误;再一次,干净将它们移除。

Xcode必须有一些设置导致它使用旧代码和应用程​​序设置,但我不知道为什么或什么。我将非常感谢对这里的错误以及如何纠正它的任何见解。

约翰

2 个答案:

答案 0 :(得分:0)

我解决了这个问题,但仍然不知道导致问题的原因。

删除派生数据并再次运行应用程序后,我意识到派生数据中没有新条目。我检查了首选项/位置/派生数据,发现Legacy已被选中。选择Unique可以解决问题。

为什么选择遗产是一个谜;我没有改变它,在上一次更新中也没有这样做。由于Legacy将应用程序放入应用程序独有的目录中,因此它似乎应该使用旧版位置正确运行。

无论如何,这似乎就是答案 - 确保为派生数据选择了唯一。

答案 1 :(得分:0)

有同样的问题。
做了一个Xcode->产品-> Clean Build文件夹。没有帮助。
关闭Xcode,删除DerivedData,也没有帮助。
重新启动即可解决问题。