ITMS 9000:您上传的二进制文件无效 [英] ITMS 9000: The binary you upload was invalid

查看:48
本文介绍了ITMS 9000:您上传的二进制文件无效的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我遇到这个问题时,我的第一个想法是搜索 Stack Overflow 以寻求解决方案.我进行了搜索,找到了几个主题.但是,与我的问题不同,这些海报从错误中得到了一些线索,例如,

  • == Apple Developer 中的 App ID == iTunes Connect 中的应用程序).​​..检查!
  • App ID 区分大小写检查 .... 检查!(小写,com.companyname.productname)
  • 删除项目中的目标,然后创建一个新目标(我有一个项目,多个目标)......完成!
  • 删除方案,然后创建新方案......完成!
  • 检查图标大小、检查加载图像大小、检查每英寸像素......检查!
  • 检查 Localizable.strings 是否有错别字...检查!
  • 删除构建文件夹...完成!
  • 重启 Xcode,重启电脑……完成!
  • 连接到另一个 wifi 路由器......完成!
  • 由我的同事 Macbook 提交...完成!
  • 创建新应用 ID、新证书、新配置文件并更新 iTunes Connect Bundle ID ......完成!
  • 休息一小时,再试一次......完成!

我真的不知道我做错了什么.从 iOS 4 开始,我一直在提交应用程序,数百次更新.但从来没有遇到过这样的事情.事实上,我昨天刚刚更新了另一个应用程序,它与这个应用程序共享相同的代码库,完全没有问题.

有什么方法可以收集更多关于 Xcode 告诉我的无效二进制文件"的信息?或者还有什么我应该尝试的吗?

对于发现此主题的每个人(2014 年 7 月 18 日),也许您最好的办法是休息几个小时(或一天),然后再试一次.

--- 上次更新---

原来是苹果服务器的问题

  • 说,我有一个名为示例应用"的应用
  • 此应用的应用 ID 为 com.tartw45.sampleapp
  • 此应用使用名为简单 App Store 分发配置文件"的 App Store 分发配置文件
  • 回到上周五(2014 年 7 月 18 日),一切正常,没有任何错误迹象,但我无法按照上述说明发布应用
  • 今天(2014 年 7 月 21 日),我再次尝试使用上周的存档,仍然没有成功.
  • 我决定重做存档过程,但我发现Simple App Store Distribution Profile"不再有效
  • 我登录 developer.apple.com,发现Simple App Store Distribution Profile"也不再出现在所有配置文件的列表中.**
  • 然后我尝试创建一个具有相同名称的新配置文件(Simple App Store Distribution Profile)但是有一个错误说这个配置文件已经存在,请选择另一个名称 **
  • 因此,我创建了一个名称略有不同的新配置文件,在 XCode 中刷新配置文件,再次存档,然后发布....有效!

所以,这绝对是 Apple Server 问题和您的配置文件 (**),它与您的 XCode 版本或项目设置无关(如果您在无缘无故地遇到此问题之前成功提交了一次应用程序).因此,发现此主题的任何人,请尝试验证您的配置文件并尝试再次发布.

解决方案

我从昨晚开始就遇到了同样的问题,现在终于让它工作了.必须经过这个过程

  1. 已登录 https://developer.apple.com> > 证书、标识符和Profiles > Provisioning Profiles 并吊销了我公司的分销证书.

  2. 然后 Xcode > Preferences > Accounts > Apple IDs > (my company) > View Details 并刷新证书和 Provisioning Profiles.它提示在开发者资料中没有找到分发证书,并提出代表我请求一个,它确实做到了.

  3. 启动钥匙串访问>证书并删除所有过期的证书(不知何故我有一些)

  4. 我回到了 https://developer.apple.com>> 证书、标识符和Profiles > Provisioning Profiles 并编辑了我所有手动管理的 Provisioning Profiles(开发 - 必须重新生成 - 和分发 - 必须链接到新创建的分发证书并再次生成)

  5. 再次 Xcode > Preferences > Accounts > Apple IDs > (my company) > View Details 并刷新证书和 Provisioning Profiles.

在苹果开发论坛上感谢 Rodrigo

When I ran into this issue, my first thought was to search Stack Overflow for solution. I did the search, found several topics. But, unlike my issue, those posters got some clue from the error such as,

The binary you uploaded was invalid. The signature was invalid, or it was not signed with an Apple submission certificate

Or this one:

The binary you upload was invalid. the file was not a valid zip file

Or this one

The binary you uploaded was invalid. The key CFBundleVersion in the Info.plist file must contain a higher version than that of the previously uploaded version.

But for me, I got nothing, it just says ERROR ITMS-9000: "The binary you uploaded was invalid"

I try to resolve this issue by the following attempts, all of them failed

  • Test on simulator make sure the app works ... Check!
  • Test on device (iPhone 5S, iOS 7 and iPhone 4s iOS 6) to make sure the app works ... Check!
  • Clean and build ... Done!
  • Make sure that I'm using distribution profile (not ad hoc, dev) ... Check!
  • Redo the whole process of certificate and provisioning profile ... Done!
  • Check my code signing identity ... Check!
  • Check bundle id, there are matches (Xcode == App ID in Apple Developer == App in iTunes Connect) ... Check!
  • App ID case sensitive check .... Check! (lower case, com.companyname.productname)
  • Delete target in project and then create a new one (I have one project, multiple targets) ... Done!
  • Delete scheme and then create new one ... Done!
  • Check icon size, check loading image size, check pixels per inch ... Check!
  • Check Localizable.strings for typo ... Check!
  • Delete build foler ... Done!
  • Restart Xcode, restart computer ... Done!
  • Connect to another wifi router ... Done!
  • Submit from my colleague Macbook ... Done!
  • Create new App ID, new certificate, new provisioning profile and update iTunes Connect Bundle ID ... Done!
  • Take a break for an hour, try again ... Done!

I really have no idea what did I do wrong. I've been submit app since iOS 4, hundreds of updates. But never ran into anything like this. In fact, I've just update another app yesterday which share the same codebase with this one, no issue at all.

Is there a way I can gather more information about "the invalid binary" Xcode is telling me? Or is there anything else I should try?

For everyone who found this topic (18 July 2014), maybe your best shot might be, taking a break for few hours (or a day) and try again.

--- Last Update ---

It turns out to be Apple Server issue

  • Says, I have an application called "Sample App"
  • This app has an app id of com.tartw45.sampleapp
  • This app use an App Store Distribution profile called "Simple App App Store Distribution Profile"
  • Back to last Friday (18 July 2014), everything seems ok, no indicator of any error but I couldn't publish the app as I stated above
  • Today (21 July 2014), I tried again with archive from last week, still no success.
  • I decide to redo the archive process and I found that "Simple App App Store Distribution Profile" is no longer valid
  • I login to developer.apple.com and found that "Simple App App Store Distribution Profile" also no longer there in the list of all provisioning profile. **
  • Then I try to create a new provisioning profile with the same name (Simple App App Store Distribution Profile) but there is an error says that this profile is already exist, please choose another name **
  • So, I create a new provisioning profile with slightly different name, refresh the provisioning profile in XCode, archive again and then publish .... Works!

So, It's definitely Apple Server issue and your provisioning profile (**), it has nothing to do with your XCode version or project setting (if you successfully submitted your app once before running into this issue with no reason). So, anyone who found this topic, please try to validate your provisioning profile and try to publish again.

解决方案

I was having the same issue since last night and finally got it to work just now. Had to go through this process

  1. Logged in on https://developer.apple.com> > Certificates, Identifiers & Profiles > Provisioning Profiles and revoked my company's Distribution Certificate.

  2. Then Xcode > Preferences > Accounts > Apple IDs > (my company) > View Details and refreshed the certificates and Provisioning Profiles. It prompted that no Distribution Certificate was found on the Developer Profile and offered to request one on my behalf, which it did.

  3. Launched Keychain Access > Certificates and removed all of the expired Certificates (somehow I had a few of them)

  4. I went back to https://developer.apple.com> > Certificates, Identifiers & Profiles > Provisioning Profiles and edited all of my manually managed Provisioning Profiles (Development — which had to be re-generated — and Distribution — which had to be linked to the newly created Distribution Certificate and generated again)

  5. Once again Xcode > Preferences > Accounts > Apple IDs > (my company) > View Details and refreshed the certificates and Provisioning Profiles.

Credit to Rodrigo on the apple dev forums

这篇关于ITMS 9000:您上传的二进制文件无效的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆