上传到iOS App Store时出错:错误ITMS-9000“此捆绑包无效”

当我们尝试上传我们的应用程序的新版本到苹果的App Store时,我们在应用程序加载器中得到以下错误:

ERROR ITMS-9000: "This bundle is invalid. New apps and app updates submitted to the App Store must be built with public (GM) versions of Xcode 5 and iOS 7 SDK. Do not submit apps built with beta software." at SoftwareAssets/SoftwareAsset (MZItmspSoftwareAssetPackage) 

我们已经开发了最新版本的Xcode,5.1.1(从Mac App Store下载)和iOS SDK(Xcode 5.1.1附带)的v7.1版本。

我们的应用程序是用Marmalade 7.2.1构build的。 我们已经尝试重build我们的应用使用的所有EDK扩展和静态库。

有什么可能出错? 还有其他人能告诉我们关于这个错误的更多信息吗?

 Starting May 15, 2014, new apps and app updates submitted to the App Store must be built with Xcode 5.1.1 

你必须更新你的xcode。

只要清理所有的东西。

检查正确创build的开发者/分发证书和移动供应configuration文件,如果不是,则从开发者账户撤销它们并创build所有新的。

从/ Users / yourSystemName / Library / MobileDevice / Provisioning Profiles中删除所有configuration文件

现在,从您的钥匙串中导出所有证书和密钥,并将其另存为备份以再次使用它们。

现在先安装开发人员/分发证书,然后安assembly置文件。 并上传你的应用程序。 这是testing方式,应该解决您的问题。 谢谢。

当Xcode创build一个.ipa包时,它会在您的项目的Info.plist中添加一些元素。

由于我们的软件包是使用Marmalade的部署工具创build的,因此这些元素需要手动包含在Info.plist ,并直接复制到最终的.ipa (预处理量较less)。

为此,Marmalade在其安装中包含一个标准的Info.plist文件。 然而,你可以重写这个,我们通过复制他们的文件来完成这个工作,并且用我们需要做的修改来更新它。

后来的Marmalade版本对这个文件做了一些修改,我们没有将它们复制到我们的文件中,不同之处在于,App Store认为应用程序是由Xcode的早期版本构build的,而不是版本实际使用。

不同的值是DTSDKNameDTSDKBuildDTXCodeDTXcodeBuildDTPlatformBuildDTCompiler