14

使用 Xcode 7b5 构建包含 Today Extension 的应用程序时,我无法创建有效的存档。当我进行存档时,构建成功,然后在管理器中显示在“其他项目”下,而不是“iOS 应用程序”下。

如果我在制作存档时关闭项目并在 Xcode 6.3.2 中打开同一个项目,它会显示在“iOS 应用程序”下。

我比较了档案,我注意到的一件事是我的 Today Widget 被放置在 Applications 目录之外。Xcode 6.3.2 与 Xcode 7b5 的结构如下所示:

Xcode 6.3.2
| -存档
|--产品
|---应用程序
|----MyMainApp.app

Xcode 7 Beta 5
| -存档 |--
产品
|---应用程序
|----MyMainApp.app
|---MyTodayWidget.appex

我认为问题在于 MyTodayWidget 被打包在 Applications 目录和 .app 之外。我不确定为什么 Xcode 7 beta 5 在我没有进行任何更改时会以不同于 Xcode 6.3.2 的方式打包应用程序。

2015 年 8 月 14 日更新:这似乎是 CocoaPods 和 WatchKit 或 Today 扩展等扩展的问题。另一位开发人员在 Xcode 7 beta 5(带有 watchkit 扩展)#4021 中使用“存档”时已将其报告为无效存档。这似乎是这个问题的根本原因。

环境:
- Xcode 7 Beta 5
- Today Extension
- 普通应用程序
- CocoaPods 0.38.2(截至 9/22 的最新发布版本)
- AFNetworking 用于扩展程序和应用程序

4

7 回答 7

16

这是 CocoaPods v0.39.0.beta.4 的问题。

CocoaPods GitHub中所述,CocoaPods的 beta 3 允许您按预期构建档案。Beta 4 有一个错误阻止它工作。

先卸载你以前的 CocoaPods 版本

sudo gem uninstall cocoapods

然后做:

sudo gem install cocoapods -v 0.39.0.beta.3 --verbose

然后

pod update

并且您将能够按预期再次构建档案。

于 2015-09-18T14:35:20.200 回答
12

我今天刚刚确认这对我来说是一个 CocoaPods 问题,特别是4021。我以其他用户的身份尝试了该问题,并从我今天的扩展目标中删除了“复制 pod 资源”。一旦删除它,我就能够在 Xcode 7 Beta 5 中成功打包一个存档。

希望这在下一个测试版和通用汽车中仍然有效......

更新 9/22:如果您使用2015年 9 月 22 日最新发布版本的 CocoaPods 0.38.2 ,这就是答案。我能够使用这种方法使用 Xcode 7 GM 将我的应用程序提交到应用程序商店。

于 2015-08-19T03:07:28.280 回答
3

最后它在最新的稳定版本 0.39.0 中得到修复:

所以而不是卸载

sudo gem uninstall cocoapods

并通过重新安装

sudo gem install cocoapods

也是一个简单的

sudo gem update cocoapods

应该修复它!

于 2015-10-02T14:50:43.367 回答
1

将 Xcode 更新到版本 7.0 (7A220) 时,我遇到了同样的问题。他们说这个问题已经被跟踪(Issue#4274

最后,我通过以下步骤解决了这个问题:1)清除所有 Pods Targets->Build Setting->Packaging 中的所有“Private Headers Folder Path”和“Public Headers Folder Path” 2)删除我们的“Copy Pods Resources”目标-> 构建阶段。

于 2015-09-29T06:14:37.990 回答
0

如果将Xcode 7cocoapods v.0.38.2 一起使用。尝试copy pod resources从今天的扩展目标中删除。

于 2015-10-13T05:03:08.987 回答
0

如果您从扩展程序中删除 Copy Pod Resources,则可以正常工作。虽然我不知道这会导致什么,但我的应用程序工作、存档并进行了审查。

于 2015-09-18T14:06:25.687 回答
0

这可能是由使用 CocoaPods 0.38.[0-2] 和 Xcode 7 引起的。

它适用于旧版本的 CocoaPods:

$ gem install cocoapods -v "=0.37.2"
$ gem uninstall cocoapods # then select 0.38.[0-2]
$ pod update

(此外,我还必须在 Podfile 中清理我的构建文件夹并擦除 Pods 文件夹,pod update并对AFNetworing 安装后挂钩进行更改

无法在 xcode 中生成 iOS App 存档中讨论了更多原因。

于 2015-08-14T07:45:26.393 回答