Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error itms-90035

Tags:

xcode

ios

App passes validation

On upload getting error Error itms-90035

"Invalid Signature. Code object is not signed at all. The binary at path [myApp.app/RNGridMenu.o] contains an invalid signature. Make sure you have signed your application with a distribution certificate, not an ad hoc..."

myApp.app/RNGridMenu.o is not anywhere in the project. RNGridMenu.h & RNGridMenu.m only. RNGridMenu has been in the project for over a year now, and even uploaded fine 3 days ago

I have checked

Error ITMS-90035 - Xcode 6.3.1 [Invalid Signature]

Error itms-90035 - Xcode

XCode Error itms-90035 - Invalid signature?

All of which have the same error code but dont address my issue

enter image description here

like image 236
JSA986 Avatar asked Apr 25 '15 01:04

JSA986


2 Answers

I tried out pretty much every solution on SO when debugging this for an app I am submitting, and realized you can get this error in many ways. Here's a summary of what is usually wrong and how to fix it.

1) You didn't select a Provisioning Profile for Distribution with a valid certificate for your PROJECT and TARGETS. Make sure you've selected a valid provisioning profile in your Build Settings for the "Release" option, and verify at developer.apple.com that your Provisioning Profile is still valid. (here: https://developer.apple.com/account/ios/profile/profileList.action)

2) Your Code Signing Identity in Build Settings is a valid one for Distribution. Make sure you've selected one that is valid and it is selected for the "Release" option.

3) Your scheme (can be found via Product -> Scheme -> Edit Scheme) for your execution type needs to be "Release" for your Build Configuration. If you are archiving your app for App Store submission, make sure you have "Release" set for the Archive build type in this window.

4) You have multiple distribution certificates in your keychain access. Try deleting the duplicate certificates from your keychain and then try to submit again.

5) One of the most evil ones.... you have a line of code that begins with "#!" at the top of one of your files, usually a ".sh" or ".py". Recently, Apple seems to be requiring these files to be code signed. Feels like a bug on their side, but for your submission just remove this line! This can happen too if you have ".sh" files besides the build script in your Pod directory.

6) You have duplicate CODE_SIGN_IDENTITY lines in your project.pbxproj file. They might look like this...

"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CODE_SIGN_IDENTITY = "iPhone Distribution";

Delete one of these lines and your file should be able to build correctly again.

7) Refresh the certificates and provisioning profiles in Xcode from your developer account. Xcode -> Preferences ... select your account -> View Details -> Hit the refresh button.

8) The kitchen sink approach: create a new project and load your settings from scratch. Recreate your certificates and provisioning profiles. Never fun, but this has worked for me in a few hopeless situations.

Good luck!

like image 97
madmanick Avatar answered Oct 19 '22 12:10

madmanick


It seems XCode starting with Version 10.0 (10A255) does not properly sign apps with PRODUCT_NAME containing umlauts like ü (and maybe other non-ASCII chars - but we haven't tested this). This is on macOS 10.13.6 (17G65) with APFS, which might be the reason as well.

It did work with the same macOS version with APFS with an earlier XCode version just fine, so we suspect it's XCode though.

Anyway, the fix is to set PRODUCT_NAME to a string without umlauts...

like image 5
bk138 Avatar answered Oct 19 '22 10:10

bk138