Invalid bundle. Because your app supports Multitasking on iPad, you need to include the LaunchScreen.storyboard launch storyboard file in your com.emperinter.pastey bundle. Use UILaunchScreen instead if the app’s MinimumOSVersion is 14 or higher and you prefer to configure the launch screen without storyboards.

💡 原文中文,约1100字,阅读约需3分钟。
📝

内容提要

为Mac应用新增iPhone支持后打包报错,原因是应用支持iPad多任务,需在bundle中加入LaunchScreen.storyboard启动图;若最低系统为iOS 14以上,也可改用UILaunchScreen配置。解决办法:添加LaunchScreen.storyboard并在Info.plist中配置LaunchScreen。

🔎

延伸解读

错误触发条件

该错误仅在应用支持iPad多任务时出现。文章指出,当Mac应用新增iPhone支持后,若未包含LaunchScreen.storyboard启动故事板文件,打包便会报错。因此,支持多任务与缺少启动故事板是导致此问题的直接原因。

两种解决方案

文章提供了两种解决途径:一是直接添加LaunchScreen.storyboard文件并在Info.plist中配置LaunchScreen;二是若应用最低系统版本为iOS 14或更高,可改用UILaunchScreen配置,从而避免使用故事板。开发者可根据项目最低版本选择合适方式。

配置要点

无论采用哪种方案,都需要在Info.plist中进行相应配置。文章提到,添加LaunchScreen.storyboard后需配置LaunchScreen键;若使用UILaunchScreen,则需按iOS 14及以上版本的要求进行设置。正确配置是确保应用通过打包验证的关键。

❓

Q&A

为什么我的Mac应用新增iPhone支持后打包会报错Invalid bundle?

因为应用支持iPad多任务,需要在bundle中包含LaunchScreen.storyboard启动图文件。

如何解决Invalid bundle报错,要求包含LaunchScreen.storyboard?

添加LaunchScreen.storyboard文件,并在Info.plist中配置LaunchScreen。

如果我的应用最低系统版本是iOS 14以上,可以不用LaunchScreen.storyboard吗?

可以,如果MinimumOSVersion为14或更高,可以使用UILaunchScreen来配置启动屏幕,而无需storyboard。

UILaunchScreen和LaunchScreen.storyboard有什么区别?

UILaunchScreen是iOS 14及以上版本中用于配置启动屏幕的另一种方式,无需storyboard文件;而LaunchScreen.storyboard是传统的启动图文件。

在Info.plist中如何配置LaunchScreen?

在Info.plist中添加LaunchScreen键,并指定LaunchScreen.storyboard文件。

这个报错只出现在支持iPad多任务的应用中吗?

是的,报错信息明确指出因为应用支持iPad多任务,所以需要包含LaunchScreen.storyboard。

🏷️

标签

➡️

继续阅读