1、Xcode 11.5去掉SceneDelegate
iOS13以下系统使用SceneDelegate黑屏,暂时删除之
- info.plist中删除UIApplication Scene Manifest
- 删除SceneDelegate.swift文件
- 删除AppDelegate.swift文件中的方法(不删会黑屏)
// MARK: UISceneSession Lifecycle
func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration {
// Called when a new scene session is being created.
// Use this method to select a configuration to create the new scene with.
return UISceneConfiguration(name: "Default Configuration", sessionRole: connectingSceneSession.role)
}
func application(_ application: UIApplication, didDiscardSceneSessions sceneSessions: Set<UISceneSession>) {
// Called when the user discards a scene session.
// If any sessions were discarded while the application was not running, this will be called shortly after application:didFinishLaunchingWithOptions.
// Use this method to release any resources that were specific to the discarded scenes, as they will not return.
}
- 在AppDelegate.swift文件中定义window变量并赋值
var window: UIWindow?
//启动成功
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
sleep(2) //可以延长启动图显示时间,只能选择整数吗??
window = UIWindow.init()
self.window?.frame = UIScreen.main.bounds
//JBaseViewController是你自己的第一个控制器
self.window?.rootViewController = JBaseViewController()
self.window?.makeKeyAndVisible()
return true
}