使用XCode 11新建支持target早于iOS13的项目

2,149 阅读1分钟

XCode 11和iOS 13引入了全新的Swift UI,但并不向下兼容。如果要支持iOS 13之前的设备,除了在新建项目的时候要选择使用Storyboard而非Swift UI以外,还需要在项目的target中选择早于iOS 13的版本。如下图所示。

做此调整后,build并不会成功。但可以点击fix一路修复下去,直到build成功。

此时虽然build成功了,但跑在早于iOS 13的设备上时,并不会呈现storyboard的内容,而是漆黑一片,控制台有一行警告:

The app delegate must implement the window property if it wants to use a main storyboard file.

此时还需做两件事:

  1. 在AppDelegate加一行var window: UIWindow?
  2. 删除info.plist中的Application Scene Manifest项目

参考:forums.developer.apple.com/thread/1184…