Когда я убиваю приложение, проводя в многопользовательском интерфейсе в симуляторе и перезапуская его, метод application (didFinishLaunchingWithOptions)
не вызывается, и каждый раз появляется только экран входа в систему. Я не понимаю, что происходит, и это действительно побеждает цель проверки, вошел ли пользователь в систему firebase или нет, если метод даже не вызывается при повторном запуске приложения, был бы очень признателен за помощь! (Это как-то связано с методами SceneDelegate, которые я вижу, из того, что я понимаю, метод didFinishLaunching должен вызываться независимо от запуска приложения)
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
print("---------appDelegate didFinishLaunchingWithOptions called!---------------")
window = UIWindow(frame: UIScreen.main.bounds)
window?.makeKeyAndVisible()
window?.rootViewController = MainViewController()
FirebaseApp.configure()
return true
}
Вот код для MainViewController согласно запросу
import UIKit
import Firebase
class MainViewController: UIViewController {
var handle: AuthStateDidChangeListenerHandle?
override func viewDidLoad() {
super.viewDidLoad()
DispatchQueue.main.async {
self.handle = Auth.auth().addStateDidChangeListener { (auth, user) in
if user == nil {
print("nil user -----------")
self.perform(#selector(self.showHomeController), with: nil, afterDelay: 3)
} else {
print("non nil user --------")
self.perform(#selector(self.showWelcomeController), with: nil, afterDelay: 3)
}
}
}
}
@objc func showWelcomeController () {
present(WelcomeViewController(), animated: true, completion: nil)
}
@objc func showHomeController () {
present(HomeViewController(), animated: true, completion: nil)
}
}
--------- appDelegate didFinishLaunchingWithOptions вызван! --------------- печатается только один раз, когда проект создается и открывается в симуляторе
Отказ от ответственности: я очень новичок в iOS разработке приложений.