Как использовать того же Анонимного пользователя в Firebase? - PullRequest
0 голосов
/ 12 ноября 2018

Я хочу, чтобы гостевой пользователь вошел в систему и создал только 1 нового пользователя в моей базе данных авторизации.

Проблемно

  • - В редакторе Unity- Новый анонимный пользователь создается при каждом запуске приложения
  • На Android гостевой пользователь остается в системе, но когда приложение удаляется - создается еще один новый анонимный пользователь

В моей базе данных полно анонимных пользователей.

Примечание. Я использую и проверяю состояние проверки подлинности

.

Как я могу использовать одного и того же анонимного пользователя? Я даже думал о входе в систему с помощью пользовательского токена и сохранении его на устройстве пользователя, но затем мне нужно создать свой собственный uid на стороне администратора и не уверен, является ли это надежным или даже хорошим решением?

Кажется, что Firebase не дает правильного решения для этого. Вы бы подумали, что это просто. Я что-то упустил?

Код для единства-

void InitializeFirebase()
{
    Debug.Log("Setting up Firebase Auth");

    auth = Firebase.Auth.FirebaseAuth.DefaultInstance;
    auth.StateChanged += AuthStateChanged;
    AuthStateChanged(this, null);
}

void AuthStateChanged(object sender, System.EventArgs eventArgs)
{
    if (auth.CurrentUser != user)
    {
         bool signedIn = user != auth.CurrentUser && auth.CurrentUser != null;
        if (!signedIn && user != null)
        {
            Debug.Log("Signed out " + user.UserId);
        }
        user = auth.CurrentUser;
        if (signedIn)
        {
            Debug.Log("Signed in " + user.UserId);
        }
    }
}

void OnDestroy()
{
    auth.StateChanged -= AuthStateChanged;
    auth = null;
}
   public static void SignAnonymous()
{
  auth = Firebase.Auth.FirebaseAuth.DefaultInstance;
  auth.SignInAnonymouslyAsync().ContinueWith(task => {
  user = task.Result;

        Debug.LogFormat("User signed in successfully: {0} ({1})",
        user.DisplayName, user.UserId);
    });

}
...