Xcode iOS组织者提交到应用商店收益“存档无效”错误

时间:2011-03-30 08:16:34

标签: iphone xcode ios4 organizer

我刚从Xcode 3切换到4.当我尝试将已存档的应用程序上传到管理器时,收到此错误:

  

存档无效。   /var/folders/.../app.ipa没有   存在。

archive is invalid. app.ipa does not exist.

这是在我登录itunes connect后,选择要更新的应用程序并选择下一步。我不知道从哪里开始试图找出导致此错误的原因。如果我遗漏任何对诊断有用的信息,请告诉我。感谢

21 个答案:

答案 0 :(得分:6)

我自己刚刚遇到这个问题,而且我似乎找到了解决方法。 即使选择了正确的配置文件,也可能不是。

尝试手动导航可能的配置文件列表并选择正确的配置文件。不要将设置保留为自动选择。

在“身份:”列表中,确保它没有说“当前匹配...”。自己手动选择正确的。

这应解决问题,您应该可以上传到AppStore。

答案 1 :(得分:5)

好的,所以在安装Xcode 4软件包时,请确保选择了“Unix Tools”选项。这就是我的问题。

答案 2 :(得分:4)

如果您运行的是Xcode测试版(Apple称之为“开发者预览版”),则会出现此错误,因为您无法从测试版提交应用。 Read Me文件或Xcode下载页面中未提及此限制。要提交应用程序,您需要卸载开发人员工具,然后重新安装最新的非测试版,然后重新启动计算机。

这是要卸载的命令行命令:

sudo /Developer/Library/uninstall-devtools --mode=all

答案 3 :(得分:2)

  1. 退出Xcode
  2. 使用文本编辑器打开文件YourProject.xcodeproj / project.pbxproj
  3. 删除包含PROVISIONING_FILE =
  4. 的所有行
  5. 删除包含CODE_SIGN_IDENTITY =
  6. 的所有行
  7. 保存&关闭project.pbxproj
  8. 在Xcode中重新打开您的项目
  9. 清理项目
  10. 在“构建设置”窗格中,选择正确的代码签名标识
  11. 重建

答案 4 :(得分:1)

测试的一个好方法是从命令行运行构建。切换到项目文件夹并运行'xcodebuild'并仔细查看输出,尤其是'codesign'命令。

我这样做并发现了以下内容:

architecture armv7 object: /Users/chris/Documents/x/x/build/Release-iphoneos/x.app/x malformed object
object file format invalid or unsuitable

所以它不是一个解决方案,但它至少可以让你了解问题所在。无论如何,对我来说,看起来像一个架构配置错误。

更新 - 为了解决这个问题,我将/ usr / bin文件夹中的codesign_allocate副本替换为/ Developer / somewhere中的一个并修复了它。

答案 5 :(得分:1)

同样的事发生在我身上。我的错误是我有类似名称的证书(如“Giammy的配置文件”,“Giammy的配置简介”......)。

从XCode 4.0运行“存档”,然后从管理器“验证...”我面临“app.ipa不存在”问题。问题是我从名字相似的人那里选了错误的证书。 “存档”阶段运行良好,但存档未通过验证。

解决方案:只需在“存档”阶段选择正确的配置文件。

获得的经验教训:检查配置文件名称的两倍!

答案 6 :(得分:1)

我尝试了上面的大部分想法,但它们对我不起作用,可能是因为我使用的是Appcelerator Titanium平台。然而,我删除了Build目录并重新构建了产品,它通过了验证,我能够将二进制文件上传到应用程序商店。

答案 7 :(得分:1)

在我的情况下,这与Xcode或unix工具无关。事实上,我发现有太多的发行证书(为什么?我不知道)。删除了所有这些,但只有一个,代码签署了这个,重新代码签名,同时验证并提交没有错误。我跳了这个帮助。

答案 8 :(得分:1)

我对TestFlight和App Store都有同样的问题。我的解决方案是归档应用程序,当您尝试验证/提交或共享时,在组织者中选择“不签名”(在TestFlight的情况下)。

希望这有帮助。

答案 9 :(得分:1)

我最近改用了新的MacBook Pro,并通过迁移助手从Time Machine驱动器安装了XCode 4。

使用Unix Tools重新安装XCode 4修复它。

由于某些原因,这些文件未通过迁移助手进行复制。

答案 10 :(得分:0)

我尝试了一切,包括使用unix工具重新安装xcode4。一切正常。 我认为我不应该这样做,因为我能够提交其他应用程序没有问题。 我只是遇到了这个问题(来自xcode3)。

我甚至从头开始创建了一个项目,导入了所有代码并再次尝试 - 失败。 所以这不仅仅是我的项目,而是其中的一些东西。 所以我开始创建一个新项目,添加一些文件,然后提交,然后拒绝找出导致它的原因。到目前为止这是有效的。

更新:好的 - 它与使用CorePlot并将其作为库链接有关。瞧 - 在这里找到答案。 Can't submit app with CorePlot using Xcode4 解决方案:提交时选择“不要辞职”

答案 11 :(得分:0)

我无法通过更改或修复代码签名身份来解决此问题(在许多情况下,应该解决此问题。也不是简单地重新安装Xcode。这些是我发布的前两个解决方案这个答案。

我在卸载所有开发人员工具中取得了成功,并从头开始重新安装。

答案 12 :(得分:0)

确保使用密钥签名以获取正确的产品/捆绑包ID。如果我没记错的话,将其混淆可能导致归档问题。 此外,转到该临时文件夹并检查创建的内容。也许xCode正在以不同的名称创建IPA,这可能会给你一个提示。

答案 13 :(得分:0)

以下是我解决它的方法:

  1. 打开钥匙串并从我的“登录”和“系统”中删除所有分发证书。
  2. 从开发人员中心下载最新的分发证书。
  3. 双击要在Keychain上安装的证书。
  4. 在XCode上,确保证书名称与“构建设置”匹配。
  5. Build for Archive(钥匙串弹出窗口应该要求签署应用程序的许可)。
  6. 存档(再次,需要确认钥匙串)。
  7. 验证已归档的应用(同样,需要确认钥匙串)。
  8. 提交应用(再一次,需要钥匙串确认)。
  9. 如果您正在构建存档而您没有看到任何钥匙串确认对话框,则可以在此时停止,因为提交无法正常工作。

答案 14 :(得分:0)

我通过从钥匙串中删除所有过期的签名证书来解决同样的问题。 Xcode似乎只是抓住它找到的第一个给定名称,无论它是否仍然有效。

答案 15 :(得分:0)

我使用xcode_4.2_and_ios_sdk_5_beta__snow_leopard确实遇到了同样的问题,我的工作解决方案。

在不同的位置安装以前的(非测试版)Xcode并使用该版本,就是这样,它能够将我的应用程序上传到AppStore,而不会给您带来任何不便。

的问候,

豪尔赫。

答案 16 :(得分:0)

我的解决方案是:

打开项目中的info.plist文件,在产品名称中输入您的产品名称而不是$[PRODUCT_NAME]

答案 17 :(得分:0)

永远不要尝试使用您使用Beta SDK构建的应用作为基础SDK提交。

通过使用以下命令

卸载所有开发人员工具,我摆脱了这个问题

sudo / Developer / Library / uninstall-devtools --mode = all

然后重新启动我的系统并安装了最新的非测试版XCode和非beta iOS SDK。

答案 18 :(得分:0)

您是否一直在使用/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/SDKSettings.plist中的ENTITLEMENTS_REQUIRED属性(比如创建越狱应用程序)?

在这种情况下,请将ENTITLEMENTS_REQUIRED重置为YES。

答案 19 :(得分:0)

对于xcode 4我尝试了所有的东西,但我无法解决这个错误,直到 安装xcode 4.2 for snowleopart

如果您无法在验证页面中看到您的应用图标,那么您的xcode可能会出错。 从apple developer page xcode 4.2下载并安装。它解决了。 你不需要卸载你的xcode 4只需下载新的xcode 4.2并安装。 我现在很好

答案 20 :(得分:0)

在Xcode中出现此错误,但在使用Application Loader时没有出现此类错误。通过Xcode获取它 - >打开开发人员工具 - >应用加载器。非常令人沮丧。