Я пытаюсь запустить google login из AppDelegate.swift, а затем запустить основной экран моего приложения при успешном завершении входа в систему.iOS firebase: FIRAuthUIDelegate.authUI не называется
Я могу
показать кнопку для входа в Google, как показано выше
пользователь отправляется в Google для входа в
пользователь является отправлен обратно на исходный (этап 1)
После шага 3. Я хочу отправить пользователя на главную страницу моего приложения.
Мой код ниже. Проблема, с которой я столкнулся, заключается в том, что authUI
не вызывается.
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate, FIRAuthUIDelegate {
var window: UIWindow?
var authUI: FIRAuthUI?
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
FIRApp.configure()
authUI = FIRAuthUI.defaultAuthUI()
authUI?.delegate = self
let providers: [FIRAuthProviderUI] = [FIRGoogleAuthUI()]
authUI?.providers = providers
// show google login button
let authViewController = authUI?.authViewController()
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
self.window?.rootViewController = authViewController
self.window?.makeKeyAndVisible()
return true
}
func application(application: UIApplication, openURL url: NSURL, options: [String: AnyObject]) -> Bool {
return GIDSignIn.sharedInstance().handleURL(url, sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey] as? String, annotation: options[UIApplicationOpenURLOptionsAnnotationKey])
}
func authUI(authUI: FIRAuthUI, didSignInWithUser user: FIRUser?, error: NSError?) {
// launch main view controller
}
}
EDIT: Это, кажется, дубликат another question. Название другого вопроса довольно общее, и только детали доходят до нескольких строк. В любом случае, я считаю, что ответ Криса более тщательный, чем тот, который есть. Я думаю, что и вопрос и ответы здесь более ясны, более заострены и более тщательны, поэтому было бы ошибкой просто направлять сюда людей туда, как это было бы, если бы это было отмечено как дубликат.
Вы используете раскадровку? –
@Tarvo, да, я – lf215
Когда вы говорите, что ваш authUI не вызван, вы имеете в виду метод делегирования authUI да? – Chris