当我尝试使用Xcode将我的应用程序提交到商店时,我一直得到这个错误:

错误ITMS-90475:“无效的Bundle。iPad多任务支持要求在捆绑包“com.companyname.appname”中启动故事板。”

有人知道这个错误是什么意思吗?


当前回答

你需要添加一个启动屏幕(Xcode > File > New)。 在iOS >用户界面下,选择“启动屏幕”将其添加到项目中。

对于iPad,你需要支持所有4个方向。

在Xcode中选择你的目标文件,在General选项卡下,选择“App icons and Launch Images”。 在这里选择您创建的启动屏幕文件。 当你启动应用程序时,你会看到没有使用启动(位图)图像,而是使用了启动屏幕故事板。

其他回答

在Xcode 14.2中,设置启动故事板应该很简单,只需在目标的“General”设置中选择所需的故事板作为启动屏幕文件。这不仅避免了拼写错误,还确保了故事板包含在bundle中。然而,我发现如果包含对多窗口的支持(也就是说,如果不勾选全屏要求),上传到App Store就会失败。

如果故事板以这种方式配置,那么问题可能是因为故事板的名称包含了.storyboard扩展名,这是不应该的(参见Muhammad Ibrahim的文章)。这可以在不选中需要全屏的复选框的情况下修复:

在Xcode中,找到你的构建目标,选择General选项卡。 在“应用程序图标和启动屏幕”部分,检查是否选择了一个Storyboard文件,以及它是否具有. Storyboard扩展名。 如果是->点击故事板的名称来编辑它,去掉.storyboard扩展名并按返回。 就是这样!故事板的名称将不再显示,但问题将得到修复。

如果你正在使用Cordova,你可能想要使用Cordova -ios- requirements -全屏插件(参见如何通过Ionic/Cordova禁用iOS9多任务处理?)

更新:你也可以使用cordova-plugin-ipad-多任务处理,这似乎也防止了另一个问题(ITMS-90474)

更新:这应该是现在修复使用Cordova工具5.4而不需要这些插件。

你可以像André那样做,也可以直接添加:

<key>UIRequiresFullScreen</key>
<true/>

在你的。plist文件中。

如果你只想为iPhone设置RequiresFullScreen,并支持iPad多任务处理,试试这个:

<key>UILaunchStoryboardName~ipad</key>
<string>LaunchScreenIPad.storyboard</string>
<key>UIRequiresFullScreen</key>
<true/>
<key>UIRequiresFullScreen~ipad</key>
<false/>

LaunchScreenIPad。storyboard是iPad的LaunchScreen的名称。

iPhone仍将使用发射图片源图片。

苹果文档参考:创建平台和设备特定的键

你需要添加一个启动屏幕(Xcode > File > New)。 在iOS >用户界面下,选择“启动屏幕”将其添加到项目中。

对于iPad,你需要支持所有4个方向。

在Xcode中选择你的目标文件,在General选项卡下,选择“App icons and Launch Images”。 在这里选择您创建的启动屏幕文件。 当你启动应用程序时,你会看到没有使用启动(位图)图像,而是使用了启动屏幕故事板。