Ejemplo n.º 1
0
    public void DeleteUserAccount()
    {
        Debug.Log("Deleting user account");
        Firebase.Auth.FirebaseUser user = GlobalHelper.global.auth.CurrentUser;

        if (user != null)
        {
            DatabaseReference reference = FirebaseDatabase.DefaultInstance.GetReference("users/" + GlobalHelper.global.auth.CurrentUser.UserId + "/saveData");
            reference.SetRawJsonValueAsync(null).ContinueWithOnMainThread(task => {
                user.DeleteAsync().ContinueWithOnMainThread(task2 => {
                    if (task2.IsCanceled)
                    {
                        Debug.LogError("DeleteAsync was canceled.");
                        return;
                    }
                    if (task2.IsFaulted)
                    {
                        Debug.LogError("DeleteAsync encountered an error: " + task2.Exception);
                        return;
                    }

                    Debug.Log("User deleted successfully.");

                    SceneManager.LoadScene(signInScene);
                });
            });
        }
    }
Ejemplo n.º 2
0
    private void delete_firebase_user()
    {
        // Reauthenticate
        Firebase.Auth.Credential credential = Firebase.Auth.EmailAuthProvider.GetCredential(email_input.text, password_input.text);
        if (user != null)
        {
            user.ReauthenticateAsync(credential).ContinueWith(task =>
            {
                if (task.IsCanceled)
                {
                    Debug.LogError("ReauthenticateAsync was canceled.");
                    return;
                }
                if (task.IsFaulted)
                {
                    Debug.LogError("ReauthenticateAsync encountered an error: " + task.Exception);
                    return;
                }

                Debug.Log("User reauthenticated successfully.");
            });
        }

        // Delete user
        if (user != null)
        {
            user.DeleteAsync().ContinueWith(task =>
            {
                if (task.IsCanceled)
                {
                    Debug.LogError("Delete user was canceled.");
                    return;
                }
                if (task.IsFaulted)
                {
                    Debug.LogError("Delete User encountered an error: " + task.Exception);
                    return;
                }
                Debug.Log("User deleted sucessfully");
                scene_transition_manager.GetComponent <scene_manager>().load_no_user_scene();
            });
        }

        //auth.CurrentUser.DeleteAsync();
    }
Ejemplo n.º 3
0
    // ref: https://firebase.google.com/docs/auth/unity/manage-users
    public static void AuthDeleteUser()
    {
        if (!setupReady)
        {
            return;
        }
        if (auth == null)
        {
            return;
        }
        if (authPhases == -1)
        {
            return;
        }
        lastError  = "";
        authPhases = 0;

        Firebase.Auth.FirebaseUser user = auth.CurrentUser;
        if (user == null)
        {
            return;
        }

        user.DeleteAsync().ContinueWith(task => {
            if (task.IsCanceled)
            {
                lastError = task.Exception.ToString();
                AuthSignOut();
                return;
            }

            if (task.IsFaulted)
            {
                lastError = task.Exception.InnerExceptions[0].InnerException.Message;
                AuthSignOut();
                return;
            }

            AuthSignOut();
        });
    }
Ejemplo n.º 4
0
    public void DeleteUser()
    {
        Firebase.Auth.FirebaseUser user = auth.CurrentUser;
        if (user != null)
        {
            user.DeleteAsync().ContinueWith(task => {
                if (task.IsCanceled)
                {
                    Debug.LogError("DeleteAsync was canceled.");
                    return;
                }
                if (task.IsFaulted)
                {
                    Debug.LogError("DeleteAsync encountered an error: " + task.Exception);
                    return;
                }

                Debug.Log("User deleted successfully.");
            });
        }
    }