当我在模拟器或设备上运行时,我的应用程序运行正常(用于调试和发布版本配置)。但是当我尝试将我的应用程序提交到Apple Store时,我收到以下错误:
错误ITMS-90207:“无效的捆绑包.'APPNAME.app'的捆绑包有 不包含可执行文件。“
我尝试使用Xcode和Application Loader上传档案,但没有成功。
我已经尝试了本主题中的一些解决方案(Xcode App Submisson ERROR ITMS-90207: "Invalid Bundle),但它们都不适用于我的项目:
也许这个错误与Xcode版本有关...我的mac正在运行macOS Sierra版本10.12.6 Beta(16G8c),Xcode版本8.3.2(8E2002)和Application Loader版本3.0(620)。
欢迎任何帮助。
UDPATE:
我尝试使用Xcode 8.2,我有同样的错误。
这是我的plist文件以获取更多详细信息:
<?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:
我设法使用Xcode 8.2.1从另一个mac发布存档。 我在我的Mac上尝试使用Xcode版本8.2和8.2.1,但我仍然有同样的错误。 我也尝试过Application Loader 3.0和3.6版本,但没有成功...... 所以看起来,问题来自我的mac。我不知道该怎么做。
答案 0 :(得分:3)
我已经联系了Apple开发者技术支持,正如@Larme在上面的评论中所建议的那样,错误是由于我的macOS beta版本。
以下是Apple支持的完整答案:
我看了你提供给你的.ipa,并且 将它与成功提交到App Store的那个进行比较。该 一个给你带来麻烦的是基于macOS的测试版,就是这样 不支持分发。发布到App Store的应用程序需要 用于GM版本的macOS,使用GM版本的Xcode GM SDK的GM版本。
通常,使用任何测试版软件提交的应用都会收到消息 表明此问题,以及您收到的消息 完全是误导。
我将完成Bug Reporter表单以报告此错误 谢谢大家的帮助。
答案 1 :(得分:0)
如果您尝试使用XCode 9.1提交9.0部署目标应用程序,那么您也会遇到此错误。将部署目标切换为11.1“修复”它。
“弃用:部署目标为iOS 11的应用程序不再构建32位切片。要构建并包含32位切片,请将部署目标设置为早期版本的iOS。(32163517)”