I have done a TON of research and done several things to try and get rid of this error. Absolutely nothing works. =(
When I go to upload my archive to the app store from within Xcode, I get the following error:
ERROR ITMS-90171: "Invalid Bundle Structure - The binary file '.app/constants.o' is not permitted. Your app can’t contain standalone executables or libraries, other than the CFBundleExecutable of supported bundles. Refer to the Bundle Programming Guide at https://developer.apple.com/go/?id=bundle-structure for information on the iOS app bundle structure."
I have looked at several StackOverflow pages that reference this error. None of them resolve the error.
I can't even find "constants.o" in my file directory structure (in Xcode) or via command line.
For my Copy Build Resources, I only have the following:
font file (file.ttf)
Image Assets file
Main.Storyboard file
So, this is not the problem.
The only entitlement I have enabled in Capabilities is Push Notifications.
I'm pretty certain the issue is the "constants.o" that shows up on the first page when I go through the upload archive process. But, I do not know where it's coming from. Does anyone know where this file is coming from? How do I get rid of it??
In my case an implementation file was in the Copy Bundle Sources section of the Build Phases. I know OP did not have that issue but this helped me.
I had the provisioning profile set to Automatic for Xcode to determine the correct profile to use. This was the issue. Xcode was not picking the correct profile
The provisioning profile wasn't setting correctly when it was set to Automatic. I had to specifically set this in the Build Settings instead.
Constants.o should not show up in the archive process. Check your provisioning profile and make sure it is set correctly for Release Version.
Related
I'm trying to upload my iOS application for beta testing using Testflight. However, I'm encountering errors saying that my bundle is invalid. When I change my Executable file in Info.plist to a different name, it gives me an error that Info.plist doesn't exist. But when I use $(EXECUTABLE_NAME) for the executable file, It gives me an error shown in the picture. I've had so many attempts in here already, I don't what's going wrong anymore. Thanks!
This is my Info.plist
This is the general settings
Im trying to submit a version of my app and after building im seeing the following screen
My app has a valid provisioning profile except one .o file that is for some reason not included in it..
That has been the case for a while now, and i have managed to submit the app without it being a problem.
A couple of day ago, after submiting a new version, i recived an email from apple saying :
We have discovered one or more issues with your recent delivery for "xxx". To process your delivery, the following issues must be corrected:
Invalid Signature - Code object is not signed at all. The binary at path [xxx.app/FooterCoverflowCollectionViewLayout.o] contains an invalid signature. Make sure you have signed your application with a distribution certificate, not an ad hoc certificate or a development certificate. Verify that the code signing settings in Xcode are correct at the target level (which override any values at the project level). Additionally, make sure the bundle you are uploading was built using a Release target in Xcode, not a Simulator target. If you are certain your code signing settings are correct, choose "Clean All" in Xcode, delete the "build" directory in the Finder, and rebuild your release target. For more information, please consult https://developer.apple.com/library/ios/documentation/Security/Conceptual/CodeSigningGuide/Introduction/Introduction.html
Once these issues have been corrected, you can then redeliver the >corrected binary.
Regards,
The App Store team
I've tried the steps they recommended with no luck. Can anyone have any idea how to solve the issue ?
Removing the mentioned file, building, re-adding it to the project and building again solved the problem.
I experienced this exact problem, and would like to share what happened.
The .m file for one of the classes we had written (ie: not a third party library) had been erroneously added to the project in the "Copy Bundle Resources" section in "Build Phases". There is no reason for the file to have been there, and had been there for quite a long time.
The error described in the original post just started showing up in our latest submission to the app store last week, and from what I gather from other posts around the internet, Apple has recently changed something about their code signing and submission process. The .m was absolutely in the Copy Bundle Resources section in our last several submissions.
Simply removing this file, rebuilding, and resubmitting solved the problem. Since the file didn't need to be there in the first place, there was no need to add it back again.
There may be other causes for this error, but if you get this error, check your "Copy Bundle Resources" section the files that are being listed with zero entitlements.
Well, all was good with submitting to itunes connect, but out of the blue, I just got this email right after uploading my app:
Invalid Signature - Code object is not signed at all. The binary at
path [churningseas.app/churningseas.codea] contains an invalid
signature. Make sure you have signed your application with a
distribution certificate, not an ad hoc certificate or a development
certificate. Verify that the code signing settings in Xcode are
correct at the target level (which override any values at the project
level). Additionally, make sure the bundle you are uploading was built
using a Release target in Xcode, not a Simulator target. If you are
certain your code signing settings are correct, choose "Clean All" in
Xcode, delete the "build" directory in the Finder, and rebuild your
release target.
I've seen that this a commun, infamous error message, and that there is no clear answer to how to fix this.
Has anyone an idea on what could be wrong with my settings? Thanks you so much in advance, I'm suppose to release the app this month and I'm freaking out a little bit here...
The email is asking you to check the churningseas.codea file. I had a similar issue except they were referencing a docset file in my project. After hours of debugging this issue, it has come to my attention that Apple is now frowning upon docset files. After removing the docset file it fixed my issue. You may want to check the churningseas.codea file and see if removing it doesn't fix your issue.
If that doesn't work check this answer Error itms-90035. There could be many causes for this error.
I am writing a static library and when i go to add it into my .ipa file and do an export/submit to apple i get this error.
ERROR ITMS-90166: "Missing Code Signing Entitlements. No entitlements found in bundle 'com.xxxxx.xxxxxxResources' for executable 'Payload/xxxxxxx.app/xxxxReaderResources.bundle/xxxxReaderResources'.""
I have seen a lot of post on entitlements and provisioning files on here but none dealing with static libraries. And the ones I saw didn't really help. The issue is that the resource bundle needs to have entitlements i guess.. i have tired resigning it with iResign and adding an entitlement.plist all failed.
The answer to my problem turns out that i had an executable in my resource bundle. By deleting the Compile Source Phase and the Link Binary with Libraries Phase from my Resource target this removed any executables from my resource bundle and fixed my missing entitlement error
I had to remove the CFBundleExecutable key from the Info.plist of the resource bundle. Once I did this I was able to upload to iTunes Connect without getting ERROR ITMS-90166
I had the same problem as you, thanks for your help.
I make a bundle to import my database, I've already publish a version of my app with that problem but I can't update it.
I solve the problem as you, in the xproj settings. I remove Compile Sources (where there were my database in old version) and Link Binary With Librairies (empty in old version).
My xproj look at that now, there are only two blocks:
Thanks!!!
I had this issue. Got it resolved by removing executable file in package content.
Below are steps for the same :
When you've archived your project it opens in Organiser window.
Right click on Archive and select show in finder.
Then again right click and select show package content.
This will show you entire package content such as dSYM, Product, SCMBlueprint, Info.plist etc.
Select Products -> Application -> [Project].app
Right click on this app file and select show package content
and delete it.
This will show you files such as storyboard, Info.plist, app icon etc.
Search for any executable file (with an icon of command prompt).
Select this file and right click -> move to thrash
Now, when you again upload your app it should work correctly!
I want to submit my iPhone application to the app store. But I'm not able to do that due to following error.
ERROR ITMS-9000: "This bundle is invalid. The executable name, as reported by CFBundleExecutable in the info.plist file, may not contain any of these characters: \ [ ] { } parenthesis . + *" at Software Assets (MZItmspSoftwareAssestPackage)
There isn't any problem in generating ipa file for Ad-Hoc testing. I even tried with creating new project from Xcode but still the error continues. I am using Xcode-5.0
Just Edit this executable file(name) setting in info.plist which wouldn't contain special character as like error above. Check this screenshot. check this apple's doc(CFBundleExecutable)
Refer this stack
Note: This type of error doesn't occur with ad-hoc provisioning profile.
You are use the Ad-hoc distribution provision profile for upload the app in app store ....
According to Apple for upload the app you are use the app store distribution provision profile.
So error generate .....
Create the new provision for upload app store but No need the change bundle id....
and check Architecture
and solve your problem
Thanks
Thanks a lot to all who have tried to pull me out from this issue. I really don't know what was the problem but this morning i create new project, add new controllers and other needed files. Just copy all the codes in relative files. Build with certificate that i generated and was using last night. Submit in App Store and it did submitted. I didn't change in Info.plist file. No needed to generate new Distribution profile. Just create new project.
Many many thanks to #Mani, #Mani vannam, #Deepesh
Problem may be with your project name or target name so please rename it by single click on the target. have your project name with out any special characters like []{}