作者:nissunshine | 来源:互联网 | 2023-02-06 16:46
我是iOS开发的新手.我想用Firebase建立授权.我正在使用FirebaseUI-iOS.我想隐藏初始屏幕上的取消按钮.你有什么想法怎么做吗?
我以编程方式创建Firebase authViewController:
import UIKit
import Firebase
import FirebaseAuthUI
import FirebaseGoogleAuthUI
class AuthViewController: UIViewController {
fileprivate var _authHandle: FIRAuthStateDidChangeListenerHandle!
var user: FIRUser?
override func viewDidLoad() {
super.viewDidLoad()
configureAuth()
}
func configureAuth() {
let provider: [FUIAuthProvider] = [FUIGoogleAuth()]
FUIAuth.defaultAuthUI()?.providers = provider
FUIAuth.defaultAuthUI()?.isSignInWithEmailHidden = true
// listen for changes in the authorization state
_authHandle = FIRAuth.auth()?.addStateDidChangeListener { (auth: FIRAuth, user: FIRUser?) in
// check if there is a current user
if let activeUser = user {
// check if the current app user is the current FIRUser
if self.user != activeUser {
self.user = activeUser
let name = user!.email!.components(separatedBy: "@")[0]
print(name)
}
} else {
// user must sign in
self.loginSession()
}
}
}
func loginSession() {
let authViewCOntroller= FUIAuth.defaultAuthUI()!.authViewController()
present(authViewController, animated: true, completion: nil)
}
deinit {
FIRAuth.auth()?.removeStateDidChangeListener(_authHandle)
}
}
1> RJiryes..:
扩展VC并将其添加到viewWillAppear中
extension FUIAuthBaseViewController{
open override func viewWillAppear(_ animated: Bool) {
self.navigationItem.leftBarButtOnItem= nil
}
}