iOS 11.3通用应用部署报错:需添加UILaunchStoryboardName(iPad多任务)
解决iOS 11.3通用应用部署报错:Invalid Bundle. Your app supports Multitasking on iPad, so you must include the UILaunchStoryboardName
这个报错的核心原因是iOS 11及以上版本对支持iPad多任务的应用,强制要求提供启动故事板(Launch Screen Storyboard)——哪怕你的主界面完全不用Storyboard开发,也得满足这个启动层的要求。结合你试过的方案都没解决的情况,给你两个针对性的解决路径:
路径一:保持支持iPad多任务(推荐,符合你全方向支持的需求)
这个方案不会改变你应用的功能,只是补全苹果要求的启动配置:
- 新建一个最简的Launch Screen Storyboard:
- 打开Xcode,点击菜单栏
File > New > File,选择iOS > User Interface > Launch Screen,直接创建就行(不用添加任何控件,空的Storyboard完全满足要求) - 转到项目的「General」设置页,找到「App Icons and Launch Images」区域,把「Launch Screen File」下拉选择你刚创建的Launch Screen文件
- 检查Info.plist文件,确认自动生成了
UILaunchStoryboardName键,值就是你新建的Launch Screen文件名(比如默认的LaunchScreen)
- 打开Xcode,点击菜单栏
这个操作只是添加了启动时的占位界面,完全不影响你用代码编写主界面的逻辑。
路径二:禁用iPad多任务(如果不需要分屏/滑过等功能)
如果你不需要iPad的多任务特性,可以通过以下步骤确保配置真正生效:
- 重新确认「Requires Full Screen」的配置:
- 在项目「General」设置的「Deployment Info」里,分别勾选iPhone和iPad的「Requires Full Screen」选项
- 打开Info.plist文件,搜索
UIRequiresFullScreen,确保它的类型是Boolean,值为YES - 因为是通用应用,检查是否存在针对iPad的单独配置(比如
UIRequiresFullScreen在iPad的设备特定字典里被设为NO),如果有改成YES - 执行
Cmd+Shift+K清理项目,然后重新build并尝试部署
额外提一句:Xcode 9.3在通用应用的配置同步上偶尔会有小bug,手动检查Info.plist的配置比只看界面勾选更可靠。
内容的提问来源于stack exchange,提问作者Nelson Rios




