在Xcode 6中归档生成的是pkg而不是ipa文件

27

最近更新到Xcode 6后,每当我归档一个项目时,我得到的是.pkg而不是.ipa文件。我已将项目中的其他目标(CocoaPods)设置为跳过安装,但这并没有起作用。部署目标是iOS,而不是Mac(这是一个之前可以成功归档.ipa文件的iPhone / iPad应用程序)。

我是否漏掉了某个新设置(例如默认归档iOS应用程序为.ipa)或者在Xcode 6上进行adhoc分发时有什么需要注意的事项我不知道?


顺便说一下,这是Xcode 6 GM种子版本。 - maxhs
2
如果有人因为正在寻找通过TestFlight分发自定义构建(但无法处理.pkg文件)的方法而阅读此内容,我建议安装TestFlight桌面应用程序。它将拉取您最近的XCode存档并实际构建.ipa文件。 - maxhs
2个回答

54

LSRequiresIPhoneOSYES添加到您的Info.plist中
该键可表示为应用程序需要iPhone环境


是的,那对我有用。 - daxiang28
1
是的,我也在那里读到了(我是其中一个发帖者)。很高兴找到了解决方案……讨厌它一开始就成为了问题。 - maxhs
1
在 Twitter 上发现的,让我非常烦恼。向 @jamesthomson 致敬。 - AntiHaus

4

我在Xcode 6 GM(或beta版)中找不到直接的方法来完成这个任务,但我找到了几个解决方案:

  1. 在Xcode 6中归档,然后在Xcode 5中导出。在使用beta版时,这对我有用,但是安装了GM版本之后,Xcode.app二进制文件覆盖了我的Xcode 5版本(这很容易重新安装)。@Anan在这里回答了这个问题。

  2. 从.xarchive中获取 .app 文件,并通过创建Payload目录、将 .app 复制到其中、压缩它并将扩展名更改为 .ipa 来打包您自己的 .ipa。

  3. 我尝试使用TestFlight桌面应用程序,在创建帐户后将归档文件拖入其中。这似乎按照打包 .ipa 并将其上传到 TestFlight 服务器的步骤进行。我无法在本地计算机上找到 .ipa 的痕迹。这可能有效,只是不确定从哪里获取 .ipa。您需要自己生成 .plist 或使用旧的 .plist。

不管怎样,这似乎是一个bug,这些解决方法很烦人,因为以前只需要5秒钟就能完成这个任务。

Steve


1
没错,以前只用了5秒钟...现在需要5分钟(在经历了5个小时的调试后)。@steve 关于TestFlight,上传.ipa到他们的服务器后,你有保存到本地的选项。不过默认情况下好像没有保存任何东西到本地。 - maxhs
很烦人的是我必须自己生成.plist文件。 - namanhams

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