I want to upload build with Custom keyboard extension on Itunes Connect But when I am going to upload it on Itunes Connect through Application loader its show me following error
Make sure you have your destination set to Generic iOS device for the framework.
You can do this by going to Product->Destination->Generic iOS device.
Otherwise it builds it specifically for that device and only its architecture.
My problem was, that I had my iPhone 6 connected to Xcode so all swift frameworks did only build the arm64 version.
I disconnected my iPhone 6 and selected iOS Device as Destination.
After that the error disappeared.
Another thing you could to is to check if the created Archive is really for all required architectures.
You can check the the binary files in your Archive with the commandline command:
lipo -info YourBinary
The output should look something like that:
Architectures in the fat file: YourBinary are: armv7 arm64
I ran into this issue in Xcode 6.1. I was able to resolve it by closing Xcode, deleting the Derived Data
folder, rebuilding everything, then archiving again.
You do have to have "Build for current architecture only" set to "No" in your main target, and any included targets for the build configuration that you are currently archiving.
Please check your embedded frameworks, if any. I've faced the same issue and the reason was: While debugging app on device, Xcode builds frameworks for "current arch only". And then, even if you try to archive project, Xcode uses already built for only one(!) arch frameworks from debug-iphoneos folder.
So, I've solved this issue by setting flag "Build for current architecture only" to "No" in Build settings of framework targets, cleaning build folder (cmd option shift K), Archive.