当我尝试使用 Xcode 将我的应用程序提交到商店时,我不断收到此错误:
错误 ITMS-90475:“捆绑包无效。iPad 多任务支持需要在捆绑包“com.companyname.appname”中启动故事板。”
有人知道这个错误的真正含义吗?
我是这样解决问题的,参见这里:
如果您必须选择退出 Slide Over 和 Split View,请通过将 UIRequiresFullScreen 键添加到 Xcode 项目的 Info.plist 文件并应用布尔值 YES 来明确执行此操作。
您需要添加一个启动屏幕(Xcode > 文件 > 新建)。 在 iOS > 用户界面下,选择“启动屏幕”将其添加到项目中。
对于 iPad,您需要支持所有 4 个方向。
在 Xcode 中选择您的目标文件,然后在“常规”选项卡下,转到“应用程序图标和启动图像”。 您可以在此处选择您创建的启动屏幕文件。 当您启动应用程序时,您将看到未使用启动(位图)图像,而是使用启动屏幕故事板。
您可以按照André所示进行操作,也可以直接添加:
<key>UIRequiresFullScreen</key>
<true/>
在您的 .plist 文件中。
在 Xcode 14.2 中,设置启动故事板应该像在目标的“常规”设置中选择所需的故事板作为启动屏幕文件一样简单。这不仅可以避免拼写错误,还可以确保故事板包含在捆绑包中。但是,我发现如果包含对多个窗口的支持(即未选中是否需要全屏),根据OP上传到App Store会失败。
如果以这种方式配置故事板,那么问题可能是因为故事板的名称包含 .storyboard 扩展名,而这是不应该的(另请参阅 Muhammad Ibrahim 的帖子)。无需选中需要全屏的框即可修复此问题:
如果您使用 Cordova,您可能需要使用 cordova-ios-requires-fullscreen 插件(请参阅如何通过 Ionic/Cordova 禁用 iOS9 多任务处理?)
更新:您还可以使用cordova-plugin-ipad-multitasking,这似乎也可以防止另一个问题(ITMS-90474)
更新:现在应该使用 Cordova 工具 5.4 修复此问题,而不需要这些插件。
如果您想在 iPad 中支持分割视图,请在您的 info.plist 文件中,仅将“
LaunchScreen
”设置为键“UILaunchStoryboardName
”的值,而不是“LaunchScreen.Storyboard
”,并且您需要支持所有 4 个iPad 的方向。
我想允许分屏,并且我已经有一个启动屏幕故事板。最后我需要从我的 plist 中删除“.storyboard”。请参阅 UILaunchStoryboardName。
转到目标>信息>“启动屏幕界面文件基本名称”并将其更改为
LaunchScreen
。
如果您仅想要设置需要全屏对于iPhone,并支持iPad多任务处理,请尝试以下操作:
<key>UILaunchStoryboardName~ipad</key>
<string>LaunchScreenIPad.storyboard</string>
<key>UIRequiresFullScreen</key>
<true/>
<key>UIRequiresFullScreen~ipad</key>
<false/>
LaunchScreenIPad.storyboard
是 iPad 版 LaunchScreen 的名称。
iPhone 仍将使用
Launch Images Source
图片。
Apple 文档参考:创建特定于平台和设备的密钥
如果您使用 Blazor MAUI,您需要将 UILaunchStoryboardName 条目添加到 info.plist 文件中:
<key>UILaunchStoryboardName</key>
<string>MauiSplash</string>