-->

Error itms-90035 - Xcode

2019-01-10 18:37发布

问题:

I have developed a phonegap application which is running absolutely fine on iPhone. Now, I want to submit the app to the appstore. Following is the procedure I am following to submit my app:

  1. Open Xcode and archive the project
  2. Click on validate (which is successful)
  3. Click on Submit to appstore (which is where I am getting the following error)

Until yesterday night, I wasn't even getting this error and today morning, I archive the project and I get this error. Not sure what the issue is.

This is the final stage which is stopping me from submitting the app and is very frustrating, I tried to search for the same error code on the stackoverflow forum and I could not find one single post which is exactly of the same error code as mine, which is very strange.

Please help :)

回答1:

I had the same problem, turns out that one of my libraries installed via bower includes a .sh file, which is not needed. I have just deleted the file and everything has been uploaded successfully.

Seems like that Apple now enforces developers to have .sh files in their apps signed. As Cordova/Phonegap app don't need any of them, you can safely delete them.



回答2:

This happened to me after updating to the latest Xcode (6.3.1). It's not just .sh files, as I was getting these errors about node scripts. It appears that ANY file that starts with #!/usr/bin/env will cause these errors. I was able to cause arbitrary errors by adding a #! to a random file.

Temporarily deleting the #!/usr/bin/env directive from the top of the files will work but you'll want a better long-term solution :)

You'll have to fix it by dealing with each script file case-by-case for what makes sense in your project.

As noted above this could be a temporary problem on Apple's side, not necessarily related to Xcode version.



回答3:

EDIT: I managed to avoid this error by removing my projects .sh files from my target.

So far I'd say that's a bug on Apple's side.

I submitted an app yesterday without any issue, rejected it today to submit a slightly altered binary today, but like you I'm now encountering the same error. I thought it was related to Xcode6.3.1 because I installed it this morning so I installed Xcode 6.3.0 again but the error remained. Then I checking everything thoroughly:

  • Certificates
  • Provisioning Profiles
  • iTunes connect application status

But no success so far.

The fact a "itms-90035" Google search returns only 1 result makes me think that may be some temporary incident.



回答4:

As others have said, the problem appears to be due to including files named "upload-dsym.sh" in the app bundle. Here are the steps I took to get past this error: Went to the project settings in Xcode and selected the "Target" app icon. Selected the Build Phases tab. Clicked on "Copy Bundle Resources" Looked for a file being copied named "upload-dsym.sh". I removed that file and then the upload went fine.



回答5:

It has something to do with included .sh files, not that obvious indeed.


In our case, it was the AudioKit library. README says:

In most cases, when building for iOS or tvOS, regardless of how you install the framework, you will need to add a run phase to your project's target with the following script:

"$BUILT_PRODUCTS_DIR/$FRAMEWORKS_FOLDER_PATH/AudioKit.framework/fix-framework.sh"


Sometimes you don't see them directly in your target's build phases. Some of the 3rd party libraries can cause this error because they are dealing with .sh files as well.

Check your 3rd party libraries/pods README's files for more info.



回答6:

I have the same issue. Then I delete the .sh file. And I submit my app again. Successful!



回答7:

This issue has been resolved in CrittercismSDK CocoaPods 5.2.0 : https://github.com/CocoaPods/Specs/blob/master/Specs/CrittercismSDK/5.2.0/CrittercismSDK.podspec.json

You may either upgrade to sdk 5.2.0 or delete the file and remove the following lines from the Pods-resources.sh file:

    if [[ "$CONFIGURATION" == "Debug" ]]; then 
install_resource "CrittercismSDK/CrittercismSDK/dsym_upload.sh" 
fi 
if [[ "$CONFIGURATION" == "Release" ]]; then 
install_resource "CrittercismSDK/CrittercismSDK/dsym_upload.sh" 
fi 

Thanks



回答8:

We had a very similar problem today and solved it.

ERROR ITMS-90035: "Invalid Signature. A sealed resource is missing or invalid. The binary at path [MyNiftyApp.app/MyNiftyApp] contains an invalid signature. [...]"

We are using Jenkins-CI for the build process together with the xcode-plugin. When I reviewed the jenkins build log I found this error message:

file added: /Users/Shared/Jenkins/Home/workspace/RELEASE_STAGE_my-nifty-app/build/MyNiftyApp.app/MyNiftyApp.app
file modified: /Users/Shared/Jenkins/Home/workspace/RELEASE_STAGE_my-nifty-app/build/MyNiftyApp.app/Assets.car
]
Codesign check fails : /Users/Shared/Jenkins/Home/workspace/RELEASE_STAGE_my-nifty-app/build/MyNiftyApp.app: a sealed resource is missing or invalid

After searching for that Assets.car I found this post: https://issues.jenkins-ci.org/browse/JENKINS-21253 The User had a similar problem, could solve it by deactivating the following plugin option "XCode -> General Build Settings -> Generate Archive? " (it was true before, now it's false).

At least this solved the problem on our side - maybe it will guide you to the correct direction.



回答9:

I resolved this by simply removing the "binary" file(s) in the error.

For you its www/js/release.sh.

For me it was two redundant bower-files, a .sh-file and a .js-file that was located under a "bin"-folder (maybe thats why it thought it was a binary?).

On a side-note, it seems that you could still continue the upload process by just clicking Send after being presented with the errors in Application Loader.



回答10:

I received this same error when I tried to upload my app using ApplicationLoader 3.0. Upgrading to ApplicationLoader 3.1 (i.e. the latest), fixed the issue for me.



回答11:

In the platforms directory run:

grep -r '#!/usr/' *

This will show you all the files that can be executed. Typically this would include .sh and node files.

From the results find the files that are in your project folder (e.g. my project folder was platforms/ios/www/*) and delete them leave the rest.



回答12:

there is another folder in your directory having the same file, just remove it and try to build and upload again..



回答13:

For me, there is a do-git file in a library I used. I deleted it and it worked! Guys, make sure you clearly go through all the files in Copy bundle resources in Build Phases tab, and I'm sure you'll find a solution



回答14:

I had same issue using both xcode 6.3.1 and 6.4 beta. Mine said it was my main.o file. I looked in the copy bundle resources and for some reason my project's main file was there. I removed it and archived it again to send up to itunes connect for testflight and it uploaded fine. Took me 3 hrs to figure out it was that stupid file. Home this helps. Seems you need to really pay attention to what your sending up in that "Copy Bundle Resources" in build phases. Whatever file its telling you is a problem remove taht from this area and give it a try.



回答15:

There's a related issue where .py files also confuse Xcode:

https://omz-forums.appspot.com/pythonista/post/5857432475533312



回答16:

In my case, I got the error when submitting a re-signed ipa file. Turns out I had looked at the application package in Finder, and it had created a .DS_Store file (this was after re-signing with codesign, which would have complained if the file were present at the time of signing).

After removing the .DS_Store file, the upload succeeded.