方法一:
如果我们不开发iPadOS多窗口应用,SceneDelegate窗口管理我们不需要,可以直接删掉。
删除掉info.plist中Application Scene Manifest选项,同时,文件SceneDelegate可删除可不删
注释掉这两个方法:
- (UISceneConfiguration *)application:(UIApplication *)application configurationForConnectingSceneSession:(UISceneSession *)connectingSceneSession options:(UISceneConnectionOptions *)options { return [[UISceneConfiguration alloc] initWithName:@"Default Configuration" sessionRole:connectingSceneSession.role]; }
- (void)application:(UIApplication *)application didDiscardSceneSessions:(NSSet<UISceneSession *> *)sceneSessions { }
AppDelegate新增window属性
方法二:
给所有的SceneDelegate相关方法后边加上API_AVAILABLE(ios(13.0)
,如:
- (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions API_AVAILABLE(ios(13.0)){ }
AppDelegate同样要新增window属性