升级后,XCode 归档时出现“The Package Does Not Contain an Info.plist”错误
Posted
技术标签:
【中文标题】升级后,XCode 归档时出现“The Package Does Not Contain an Info.plist”错误【英文标题】:After Upgrading, XCode gives "The Package Does Not Contain an Info.plist" error when Archiving 【发布时间】:2014-10-29 12:56:35 【问题描述】:我在应用商店中有一个 ios 7 应用,它有很多应用内购买。应用内购买只是我在 Apple 托管的新的 .json 数据结构。 IAP 过去可以完美提交,但当我将机器从 Mountain Lion 升级到 Yosemite 时,我刚刚升级到 XCode 6.1。现在,每当我归档新的 IAP 包或重新归档上周正确提交的旧 IAP 包时,我都会得到:
“无法验证您的应用程序。包不包含 Info.plist”。
当我单击我的目标(在导航器窗格中)时,构建设置 |包装展示:
Info.plist 文件为“north_carolina.pittsburgh/ContentInfo.plist”。 (调试和发布副标题显示相同的信息)。 产品名称是“north_carolina.pittsburgh”。ContentInfo.plist 文件位于我的目标的 Supporting Files 文件夹中(在导航器窗格中)。在里面我有钥匙
ContentVersion(值设置为 2.0) IAPProductIdentifier 捆绑版本字符串,短(值设置为 2.0)最后,在 Navigator 的 Products 文件夹中,我在红色目标图标旁边有 north_carolina.pittsburgh,字样是红色的。
我怎样才能让这个存档正确验证?
【问题讨论】:
确保您的 plist 文件存在于您的项目导航器中,并且它没有以红色突出显示。 (以防它在光盘上被删除或重命名,无论出于何种原因) 我不确定你的意思。我有一个“ContentInfo.plist”文件。它的内容在第二个项目符号列表中进行了概述。是否需要在包中包含不同的 .plist 文件? 【参考方案1】:错误信息不正确。真正出错的是您的“版本”和“捆绑”数字字符串可能都没有设置。确保在“身份”部分中同时指定两者。
【讨论】:
被否决,因为版本/内部版本号不适用于 Xcode 中的应用内购买项目,这是 OP 正在努力解决的问题。 不知道为什么这没有更多的赞成票这解决了我的问题。【参考方案2】:这似乎是 XCode 6.1 的错误。但是,您实际上可以忽略该错误并继续导出为安装程序包(将创建 .pkg 文件)。在应用程序加载器中使用此 .pkg。
【讨论】:
Application Loader 会告诉你它是无效的,因为它包含一个可执行文件。 我遇到了完全相同的问题,导出不起作用,因为 Application Loader 给出了相同的错误。我还尝试在 Xcode 6.1 中从头开始重新创建 IAP 项目,它给出了同样的错误。我已经用 Apple (19095529) 记录了错误,它与 18893033 重复,所以他们必须知道这个问题。【参考方案3】:我在使用 Xcode Archiver 时遇到了同样的问题,但我能够使用 Application Loader 提交。以下是我遵循的步骤:
-
打开 Application Loader 并选择 New In-App Purchase 并点击 Choose 按钮
将打开一个新的弹出窗口,其中包含来自 iTunes Connect 的应用程序列表。点击您要为其添加应用内购买的应用,然后点击管理按钮。
您应该会看到您为应用创建的应用内购买列表。选择您要上传的应用内购买。然后点击弹出窗口底部的托管内容标签。
该窗口应更新为显示托管内容包的新部分。单击 Choose... 按钮并找到您从 Archiver 导出的 .pkg 文件。然后点击下一步按钮。
您应该会收到消息验证已完成。您的包已正确验证。单击交付,您应该会看到消息已将包上传到 iTunes Store。
如果您在 iTunes Connect 中进行应用内购买,您应该会在 Hosting Content With Apple 部分下看到您刚刚上传的包。希望这会有所帮助!
【讨论】:
【参考方案4】:将“Bundle OS Type code”设置为“APPL”它解决了我的问题,但你必须确保它在你的项目目录中,包括短字符串和版本字符串。
【讨论】:
【参考方案5】:我遇到了同样的问题,原来是 .app 名称中的空格有问题。确保产品名称没有任何
【讨论】:
【参考方案6】:实际上,如果有错误,组织者似乎没有提供信息。
最好的做法是: - 将文件导出为 ipa - 使用应用程序加载器
然后您将获得有关该问题的详细说明
在我的例子中,错误是架构是 Arm7(在一个旧项目上),而现在的请求是“标准 (arm7/arm8/arm64) 以及 CFBundlePackageType 条目。
【讨论】:
以上是关于升级后,XCode 归档时出现“The Package Does Not Contain an Info.plist”错误的主要内容,如果未能解决你的问题,请参考以下文章
Xcode:将我的应用程序放到 AppStore 时出现问题