Firebase 删除用户问题

Posted

技术标签:

【中文标题】Firebase 删除用户问题【英文标题】:Firebase Delete User issue 【发布时间】:2018-05-25 18:23:56 【问题描述】:

如果用户匿名登录并尝试访问“我的页面”选项卡,则会出现一个弹出窗口,上面写着“您必须创建一个帐户才能访问此页面”。当拥有帐户的用户访问此当前页面并触摸 deleteButton 时,他们会从 Firebase 数据库中删除他们的信息,然后我将用户返回到初始欢迎屏幕。问题是即使用户已经回到欢迎屏幕,弹出窗口也总是出现。用户删除自己的帐户后,如何在不显示弹出窗口的情况下推送到欢迎屏幕。

class EditViewController: 

@IBAction func deleteButton(_ sender: Any) 
    deleteByID()

func deleteByID()
    let storyboard = UIStoryboard(name: "Main", bundle: nil)
    let controller = storyboard.instantiateViewController(withIdentifier: "WelcomeVC") as! WelcomeVC

    self.navigationController?.pushViewController(controller, animated: true)
    let user = Auth.auth().currentUser
    dataBaseRef.child("User").child((user?.uid)!).removeValue()



         func firebaseCallCompleted(data: AnyObject?, isSuccess: Bool, error: Error?, type: FirebaseCallType) 
    if(type == .UserInfo) 
        SVProgressHUD.dismiss()
        if(isSuccess) 
            if(data != nil) 
                let user = Users(snapshot: data as! DataSnapshot)
                if let username = user.name
                    self.nameLabel.text = username

                        
                        else 
                            print(error!.localizedDescription)
                        
                    )
                
            
            else  
                hideUI()
                showCustomAlert()

                print("Anonymous user")
            
        
        else 
            print(error?.localizedDescription)
        
    

【问题讨论】:

【参考方案1】:

在显示弹出窗口之前,您能否检查用户是否匿名登录?

类似这样的:

if let user = FIRAuth.auth()?.currentUser 
    if user.isAnonymous 
        // show pop-up
    

【讨论】:

以上是关于Firebase 删除用户问题的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Flutter 应用程序中删除 firebase 用户? [复制]

从 Firebase 中删除特定用户

Firebase 身份验证获取已删除的用户

如何使用 Vue.js Firebase UID 删除用户

如何使用 Angular 从 Firebase 中删除用户帐户

如何删除用户点击按钮? - Firebase - Vue.js