问题
My app works perfectly when I'm running it on the simulator or device (for debug and release build configuration). But when I try to submit my app to the Apple Store I got the following error:
ERROR ITMS-90207: "Invalid Bundle. The bundle at 'APPNAME.app' does not contain a bundle executable."
I tried to upload the archive with Xcode and Application Loader, without success.
I have tried some of the solutions found in this topic (Xcode App Submisson ERROR ITMS-90207: "Invalid Bundle) but none of them work with my project:
- CFBundleExecutable is declared in my plist file as $(EXECUTABLE_NAME)
- I tried to disable Bitcode
- I tried to remove all CFBundleExecutable form Pods plist files (keep only the one from my target's plist)
Maybe this error is related to Xcode version... My mac is running macOS Sierra Version 10.12.6 Beta (16G8c), Xcode Version 8.3.2 (8E2002) and Application Loader Version 3.0 (620).
Any help is welcome.
UDPATE:
I try with Xcode 8.2, I have the same error.
Here is my plist file for more detail:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleAllowMixedLocalizations</key>
<true/>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleDisplayName</key>
<string>APPNAME</string>
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb000000</string>
</array>
</dict>
</array>
<key>CFBundleVersion</key>
<string>639</string>
<key>FacebookAppID</key>
<string>000000</string>
<key>FacebookDisplayName</key>
<string>APPNAME</string>
<key>FirebaseAppDelegateProxyEnabled</key>
<false/>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
</array>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>NSCameraUsageDescription</key>
<string>Description...</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Description...</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>Description...</string>
<key>UIBackgroundModes</key>
<array>
<string>location</string>
</array>
<key>UILaunchStoryboardName</key>
<string>LaunchScreen</string>
<key>UIMainStoryboardFile</key>
<string>Main</string>
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>armv7</string>
</array>
<key>UIStatusBarTintParameters</key>
<dict>
<key>UINavigationBar</key>
<dict>
<key>Style</key>
<string>UIBarStyleDefault</string>
<key>Translucent</key>
<false/>
</dict>
</dict>
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
</array>
<key>UISupportedInterfaceOrientations~ipad</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationPortraitUpsideDown</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
</dict>
</plist>
UDPATE 2:
I managed to publish the archive from another mac with Xcode 8.2.1. I try with Xcode version 8.2 an 8.2.1 on my mac, but I still have the same error. I have also tried Application Loader version 3.0 and 3.6, without success... So it looks like, the problem comes from my mac. I have no idea what to do.
回答1:
I have contacted the Apple Developer Technical Support, and as @Larme suggest in the comments above, the error is due to my beta version of macOS.
Here is the full Apple support answer:
I looked at the .ipa you provided that was giving trouble, and compared it to the one successfully submitted to the App Store. The one giving you trouble was built on a beta version of macOS, which is not supported for distribution. Apps released to the App Store need to be built for a GM version of macOS, with a GM version of Xcode, using a GM version of the iOS SDK.
Normally, apps submitted with any beta software receive a message indicating this problem, and the message you received was completely misleading.
I am going to complete the Bug Reporter form to report this bug.
Thanks everyone for your help.
回答2:
Ridiculously enough, you also get this error if you try to submit a 9.0 deployment target app with XCode 9.1. Switchting the deployment target to 11.1 "fixed" it.
My hunch is that it is related to this: https://developer.apple.com/library/content/releasenotes/DeveloperTools/RN-Xcode/Chapters/Introduction.html
"Deprecations: Apps with a deployment target of iOS 11 no longer build a 32-bit slice. To build and include a 32-bit slice, set the deployment target to an earlier version of iOS. (32163517)"
来源:https://stackoverflow.com/questions/44216547/error-itms-90207-apple-store-submisson