ITMS 9000: The binary you upload was invalid

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,

  • App Store error: The binary you uploaded was invalid
  • Invalid iPhone Application Binary
  • Uploading Binary iPhone App "The signature was invalid" again again and again

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

  • Error called trying to get Bundle URL
  • iOS: How to get duration of long press gesture?
  • How to get UIBarButtonItem center position
  • Black line appearing at bottom of UIWebView. How to remove?
  • Objective-c Check file size from URL without downloading
  • Different results in AES256 encryption in Swift (iOS) and PHP
  • Or this one:

    • "The binary you uploaded was invalid. the file was not a valid zip file" Error message uploading app to iTunes Connect

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

    Or this one

    • CFBundleVersion in the Info.plist Upload Error

    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”

    Enter image description here

    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.

    10 Solutions Collect From Internet About “ITMS 9000: The binary you upload was invalid”

    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

    iTunes connect (or at least some services that iTunes Connect uses) are down for the moment, so “Take a break for an hour, try again …” is your best shot. Apple of course doesn’t update their status page until tomorrow or so.
    https://developer.apple.com/system-status/

    It’s on Apple’s side. I tried to validate a couple of apps that worked last night, no changes in code, credentials, or Xcode and this is what I get.enter image description here

    We found it wasn’t necessary to revoke anything- when I went to Provisioning Profiles->Distribution, the two profiles for our two apps we were trying to release had been removed. I recreated those profiles (but I had to assign new names, using the old name led to a “profile already exists” message- so those identifiers are still out there- somewhere). Downloaded and installed the new profiles, resubmitted the archives we made on 7/18/14, and everything sailed right through.

    Apple iTunes’ Connect server is down at the moment. I have tried almost everything, but all failed.

    I suggest as above to take some rest and try upload after an hour or so.

    I ran into the same error when I tried validating my app. I got a message saying,

    Unable to process app at this time due to general error

    I searched on SO for this and only found a suggestion to wait for some time, as this is an error from Apple’s servers. I tried all sorts of things, from playing with provisioning profiles to improving app performance and linking libraries, none of which resolved the issue. Unfortunately, I guess we don’t have any other options than to wait and let Apple do its work.

    Yesterday, I had to regenerate an expired distribution certificate and got errors each time. Now it works, but I got the invalid binary error. It looks like Apple have done some changes and missed up something.

    There might be a link between a change in certificates yesterday and the invalid binary error today, which gives a possible explanation of this problem.

    I’ve had the same issue and have found out that my Provisioning Profile for Distribution “somehow” disappeared from the Apple Developer Portal. But when I tried to re-create it, I received error message about the existing one (which I couldn’t find at all).

    Finally, I’ve just created a brand new Distribution Provisioning Profile, downloaded and installed it. In the end, I was able to validate the application package and upload was successful.

    Just spent a while on this also, my upload previously worked and managed to get through validation.

    However, once up Apple would fail/reject the uploaded binary due to something similar to the below
    https://stackoverflow.com/questions/18952213/invalid-directory-name-your-app-contains-a-directory-name-that-is-already-rese#=

    Upon retrying, later without making any modifications, rather then sucedding then failing after validation I started receiving an error exactly the same as the OP.

    Fixing the framework reference issue, enabled me to succesfully upload.

    So rather then uploading passing validation and then being rejected, it would not pass validation, and I give the same error, without any hints.

    Hopefully this helps someone else.

    In my case I updated my Mac version and it worked fine afterwards.