【发布时间】:2012-02-03 02:24:48
【问题描述】:
我正在尝试创建一个 ipa 文件(产品->存档->共享),但 Xcode 只生成存档文件。
几天前它运行良好。我一直在工作 ipa,但现在我无法生成 ipa(当我单击存档中的共享时,我无法签署代码)。我在过去几天内将子项目添加到主项目中(CorePlot-CocoaTouch)。我不确定它是否可以关联。
【问题讨论】:
标签: xcode cocoa-touch archive ipa
我正在尝试创建一个 ipa 文件(产品->存档->共享),但 Xcode 只生成存档文件。
几天前它运行良好。我一直在工作 ipa,但现在我无法生成 ipa(当我单击存档中的共享时,我无法签署代码)。我在过去几天内将子项目添加到主项目中(CorePlot-CocoaTouch)。我不确定它是否可以关联。
【问题讨论】:
标签: xcode cocoa-touch archive ipa
如果您添加了静态库,它们现在会默认安装。这不适用于 iPhone 应用程序。转到项目文件并选择静态库的目标。在Build Settings 下,转到Deployment 部分并将Skip Install 设置更改为YES。从 Xcode 4 开始,现在默认为 NO,这会破坏您的 IPA(因为您可以合法安装的唯一二进制文件是应用程序二进制文件本身)。
您可能必须从 Basic 视图切换到 All 视图才能看到此设置。
【讨论】:
由于对我有用的答案隐藏在 cmets 中,我想我会把它带到顶部。就我而言,将静态库的头文件更改为 Project 解决了这个问题。
为此,请选择您的库目标,然后转到 Build Phases > Copy Headers 并将头文件从 Public 移动到 Project。
【讨论】:
在 XCode 5 中,如果您在管理方案中有多个目标和错误的复选标记,则会发生相同的错误。然后 Xcode 将 2 个二进制文件放入 1 个通用存档中。这不会影响签入的文件,例如混蛋!
【讨论】:
其他答案可能都是正确的,但对我的情况没有帮助。我花了几个小时在这上面,最后重新启动了。然后我又一次拿到了一周前拿到的申请档案。
【讨论】:
尝试了所有其他答案但没有运气的人,请选中此复选框,希望它会有所帮助(为我做了 xcode 6.0.1 的诀窍)
【讨论】:
如果您包含一个生成静态库的项目,请尝试选中“仅在安装时复制”选项。这阻止了 Xcode 在我的应用程序存档中包含静态库。我使用的是 Xcode 6.3.2。
【讨论】: