Я использую логин с опцией Google в приложении. Когда пользователь успешно вошел в систему с помощью Google, я хочу перейти / показать другой экран.
Я пробовал столько кодов, чтобы переместить класс AppDelegate к другому классу, но он не работает.
Здесь проект
Следующий код, который я пытался перейти,
let mainStoryboardIpad : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let initialViewControlleripad : UIViewController = mainStoryboardIpad.instantiateViewController(withIdentifier: "HomeScreenVC") as UIViewController
self.window = UIWindow(frame: UIScreen.main.bounds)
self.window?.rootViewController = initialViewControlleripad
self.window?.makeKeyAndVisible()
И ниже кода
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let viewController = storyboard.instantiateViewController(withIdentifier :"HomeScreenVC") as! HomeScreenVC
let navController = UINavigationController.init(rootViewController: viewController)
if let window = self.window, let rootViewController = window.rootViewController {
var currentController = rootViewController
while let presentedController = currentController.presentedViewController {
currentController = presentedController
}
currentController.present(navController, animated: true, completion: nil)
}
и ниже кода также
let mainStoryboard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let initialViewControlleripad : UIViewController = mainStoryboard.instantiateViewController(withIdentifier: "HomeScreenVC") as! HomeScreenVC
if let navigationController = self.window?.rootViewController as? UINavigationController
{
navigationController.pushViewController(initialViewControlleripad, animated: true)
}
else
{
print("Navigation Controller not Found")
}
Я написал этот код внутри класса AppDelegate в следующем методе, когда пользователь успешно вошел в систему с помощью Google
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any]) -> Bool {
return GIDSignIn.sharedInstance().handle(url)
}
Я пробовал эти коды, но он не работает.
Может кто-нибудь помочь Чтобы решить эту проблему, я уже дал ссылку на проект. Вы можете скачать код.