Xcode已经开始制作存档文件,而不是应用程序。我该如何将其改回来?

6
我正在使用Xcode 4.2编写手机应用程序。在最近几天的某个时刻,我更改了一些东西-我不知道是什么,在git历史记录中也没有明显的线索-尽管我仍然可以在我的设备上运行它并在模拟器中运行它,但当我归档构建时,它创建一个档案而不是应用文件。我无法将这些档案共享为IPA文件;如果我尝试这样做,会收到“此类型的存档不存在打包程序”的提示。

我做了什么?如何恢复以便再次生成IPA文件?


3个回答

16
我做了以下几点才让它对我起作用:
  1. 对于three20静态库,我使用cocoapods将文件包含在主项目中。这摆脱了three20给我的所有麻烦(而且很多)。顺便说一下,我试图用Nimbus替换three20,但是Nimbus缺少我项目正在使用three20的某些功能,所以Nimbus没有帮助。
  2. 在所有其他子项目/静态库的构建设置中,将跳过安装设置为是,并在构建阶段下将复制标头从公共更改为项目。
  3. 最重要的是:在子库的构建阶段下,我确保复制文件目的地从绝对路径更改为产品目录

就是这样!

提示:要了解导致您的存档创建存档文件而不是ipa的有问题文件,请执行以下操作:

  1. 选择归档文件,然后点击“分发”按钮。
  2. 选择“保存构建产品”选项。
  3. 点击“下一步”并保存。
  4. 在Finder中浏览创建的目录。
  5. “libraries”子目录将标识您需要将“跳过安装”设置为“是”的库。
  6. 在某些情况下,usr/local/include将确定您需要从公共移动到项目中的罪犯头文件或者您需要从绝对路径更改为产品目录的文件。但该目录(即usr/local/include)取决于您的子库目录结构。

那个提示部分非常有用。 - Christophe Biocca
最好的提示,救了我的命!谢谢! - Karoly Nyisztor

11
请确保对于任何中间目标,您选择其“构建设置”中的“跳过安装”。

6

点击Xcode窗口右上角的构建下拉菜单,选择“编辑方案”,查看是否有任何问题。

如果您什么也看不到,请尝试选择“管理方案”,然后删除旧方案并按“自动创建方案”以创建新方案。

您只需要一个方案来构建您的应用程序(或每个目标一个方案,如果有多个目标)。如果有其他方案(例如用于创建静态库的嵌入式子项目),请将其删除。

另外,正如jrtc27所说,如果您有任何生成静态库的子项目,则需要在构建设置中将它们标记为“跳过安装”。 这里有另一个问题与此问题有关,并具有更详细的解释:


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接