Swift 用户注册后如何处理?
我需要注册我的用户的电话认证和电子邮件认证。这两件事我都做得很成功。然而,以我构建代码的方式,它有点脆弱 用户使用其电话号码注册后,将自动登录。但在他们访问应用程序之前,我需要他们也用电子邮件注册,但在他们用手机登录之前,我无法注册Swift 用户注册后如何处理?,swift,firebase-authentication,swiftui,Swift,Firebase Authentication,Swiftui,我需要注册我的用户的电话认证和电子邮件认证。这两件事我都做得很成功。然而,以我构建代码的方式,它有点脆弱 用户使用其电话号码注册后,将自动登录。但在他们访问应用程序之前,我需要他们也用电子邮件注册,但在他们用手机登录之前,我无法注册 Group { if (self.session.session != nil) { if user?.metadata.creationDate != user?.metadata
Group {
if (self.session.session != nil) {
if user?.metadata.creationDate != user?.metadata.lastSignInDate {
AppView()
} else {
EmailRegisterView()
}
} else {
OnBoardingView()
}
}.onAppear(perform: {
session.listen()
})
根据我的代码,如果用户出于某种原因在创建帐户的同一天注销帐户,他们将再次被带到EmailRegisterView(),这将导致问题
是否有其他方法仅当用户是新用户时才将其重定向到EmailRegisterView(),并在完成后将其发送到AppView()
这是我的电话认证代码
func phoneRegister () {
let credential = PhoneAuthProvider.provider().credential(withVerificationID: self.verificationCode, verificationCode: self.code)
Auth.auth().signIn(with: credential) { (result, error) in
if error != nil{
self.alertMessage = (error?.localizedDescription)!
self.alert.toggle()
return
}
UserDefaults.standard.set(true, forKey: "status")
NotificationCenter.default.post(name: NSNotification.Name("statusChange"), object: nil)
}
}
看起来您可以将密钥添加到用户默认值,并在用户每次打开应用程序时检查该值。
如果userdefault bool密钥(比如isuserregisted)不存在或设置为false,则导航到login page/register page并将该密钥设置为true。否则,如果该键设置为true,则只显示主视图。以一个开放的花括号开始,以一个闭合的括号结束?@ElTomato请详细说明操作。我的错误。。。我的道歉。。。