App Store Submission - Missing code signing entitlement - ios

Hello Univers.
I have a problem when i achieve this app for submission to app store...
in my app i create my own static library and use private cocoa pods for manage libs and in my static libs i have a bundle resource embedded.
In my app project i can use my static lib and bundle pods without problems. But when i achieve to submit to app store. i found error about code sign and entitlements in bundle resource?
How do I fix this?
Thank for answer.
Sorry for my english:D
Edited
Solve this issue
When you build bundle target Xcode 6 generate exec file and plist
embeded in your bundle and it no code signing...
You have 3 solution
Adding the –deep flag to “Other Code Signing Flags” (OTHER_CODE_SIGN_FLAGS)
Delete Info.plist inside the bundle if it’s only a resource package.
(And if there’s some reason you need it, at least delete the ‘CFBundleExecutable’ key.)
Right click on bundle > Show package contents > Remove Unix Exec File > Awesome!

Related

Xcode error when uploading to App Store: “Invalid Bundle structure”

I'm using Xcode to build a native script app for iOS. I've registered an app on iTunes Connect.
when I build the application on Xcode its works well.
All goes well in Xcode until I upload to the App Store. I get the following error:
Your error is related with devDependencies, Since error is showing invalid bundle structure this is because some of your devDependencies is added in the dependencies object inside package.json.
In your case "nativescript-dev-sass": "^1.0.0-rc.2" dependency was added in your package.json just move it from dependecy to devDependency.
Open the project in Finder and search if you have added any .framework file in Project directory besides pod folder. Delete the .framwork file and build,archive again.

Removing SDK's from "Copy Bundle Resources"?

I have an app ready for review and I encountered a problem while trying to upload the archive to iTunes Connect. The problem I encountered is similar to this. Xcode keeps telling me 'error processing symbols' I followed the comments and advice and removed adMob and mediation SDK folders from "Copy Bundle Resources" under Build Phases and the upload succeeded.
Question is - Is it safe to remove those SDK's? Will admob still work on my app if I removed them from "Copy Bundle Resources"?
If you are using external library or Framework then it should be going to Frameworks and not in "Copy bundle Resources". You can add one by going to Build Phases -> Link Binary With Libraries
https://developer.apple.com/library/ios/recipes/xcode_help-project_editor/Articles/AddingaLibrarytoaTarget.html

ERROR ITMS-90207 Invalid bundle

I’m having issue when uploading to app store an app with this framework.
ERROR ITMS-90207 "Invalid bundle. The bundle at .../TesseractOCR.framework' does not contain a bundle executable.
In my Xcodeproj i have another project inside, i'm including the framework on dependencies, linked libraries and Copy Files.
Do you know something about this issue?.
Many Thanks, Nahuel.
I was having the same problem. I fixed the issue by following this process:
In your info.plist file, under the key Executable file, add the value $(EXECUTABLE_NAME).
I solved this by changing Mach-O Type to Dynamic Library in Build Settings.
Xcode wasn't generating an executable.
I solved it by setting Bitcode off. (below two are related settings)
Build Settings > Build Options > Enable Bitcode : NO
Uncheck "Include Bitcode" when uploading app to Itunes Connect (after archiving)

Validation Error: The bundle contains disallowed file 'Frameworks'

I'm having the same issue as this guy, this guy, and this guy (nota bene, I'm actually not sure if they're all guys, per se).
They all ended up finding their own solutions, but none of them apply to my issue. I'm using Xcode 6.1 in my iOS 8 app with an included extension. The app and the extension both rely on an included framework. When I try to submit the app to the Store, the validation warning I get is "ERROR ITMS-9000: Invalid bundle. The bundle at 'xxxxx.appex' contains disallowed file 'Frameworks'".
I can't even find a file called Frameworks. The shared framework is supposed to be saved at /Library/Frameworks, which is Apple's recommended save location. The project also uses Cocoapods, which strikes me as the only other possible culprit, since it has references in its configuration files to $FRAMEWORK_PATH (though the build folder doesn't include a file or folder with that name).
OK for future viewers here's the fix:
When you create your own iOS framework (I'm using Xcode 6.1) when you build it the final product contains a 'Frameworks' folder in the framework bundle itself. i.e. MyFramework.framework/Frameworks. This happens even if you don't specify a copy files/embed frameworks build phase.
What you have to do is to go into you framework bundle, find the empty frameworks folder and delete it. This should not affect your app's functionality in any way. Then build your app and check that the embedded framework doesn't have a Frameworks folder as planned.
Your archive should now not contain the offending folder and the error should be gone!
I changed build settings > Packaging > Define modules set to YES in my extension and watch app target. Works fine for me.
In my case the solution was the following :
Try to create the script there 'problematic target' -> Build Phases' then click on + and select New Run Script Phase, the run script should go after all others. Insert there :
cd "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/"
if [[ -d "Frameworks" ]]; then
rm -fr Frameworks
fi
Then clean the project and try to create an archive once again. These answer was provided in the following issue :
https://github.com/CocoaPods/CocoaPods/issues/4203
I hope this help you.
Continuing to work with this, I noted that my Share Extension had an "Embed Frameworks" Build Phase, with the Destination set to the "Frameworks" directory. I changed it to "Shared Frameworks" and the error has gone away.
However, another error remains: "... contains disallowed nested bundles". I thought this was a sort of umbrella error warning as a result of the original. I'll open another question for that one.

Invalid bundle structure - The app may contain only one executable file.

This question is similar if not identical but there is no solution. I've looked inside the archive and there's only one executable, so I am at a loss as to how to proceed. Any ideas greatly appreciates.
Invalid Build Structure
The binary file 'YourApp.app/libYourLibrary.a' is not permitted.
Your app may contain only one executable file.
This error occurs when a static library file is mistakenly copied into the app bundle.
You should link the libYourLibrary.a static library via a Link Binary with Libraries build phase.
It should NOT be added to the target's Copy Bundle Resources build phase.
My app was rejected with the same error message. It turned out that I was copying a third party framework (Fiksu) in the 'Copy Bundle Resources' build phase. The framework contained an executable and was already linked to in the 'Link Binary With Libraries' build phase. I deleted the framework from the 'Copy Bundle Resources' build phase. The framework continued to work normally in a release build. I resubmitted the app and it passed validation. Similar solution was posted here:
https://devforums.apple.com/message/1020254#1020254
In hindsight the error is straightforward. An executable file was accidentally added to the project. In my case "Develop!.app/Xcode" meant that Xcode was the executable. Checking the list of files in the project I found a symlink to Xcode. (Maybe I dragged it from the dock somehow and dropped it into the project).
If you are getting this error look at the files in your project -- there is an executable there somewhere.
I had this issue for the first time on an app I'd submitted over several versions with no issues.
I found that somehow that although I'd linked to one of my own libraries, one of the source files from that same library appeared in the list of files in the "Copy Bundle Resources" list. I have no idea how it got there but removing it meant that my app build, archived and was submitted successfully. :-)
If you are getting error in following format:
"Invalid Bundle Structure - The binary file 'Abc.app/AnyFileName.o' is not permitted.
Build Phases > Copy Bundle Resources > check your file AnyFileName.swift will be added too here. (Remove it)
validate it with XCode. Error gone !!
In my case I tried to remove references but nothing worked for me. Then I uninstall particular pod, remove references as mentioned here and then install that particular pod again. It worked for me.
For those who required elaboration check below:
1)
In Podfile comment the particular pod by adding # in the beginning and save it:
On command line run: pod install // It will uninstall that framework
2) Removed references of that framework from:
Link Binary with Libraries // In Build Phase
Copy Bundle Resources // In Build Phase
Embed Frameworks
3) Now install Pod again, Remove # which you added before and save it.
On command line run: pod install // It will install that framework again
Just delete the exec file from your bundle and delete the "Executable file" key from your bundle resources.
After that archive and validate the the the build it will work.

Resources