Как избежать блокировки интерфейса при входе в систему? - PullRequest
0 голосов
/ 11 октября 2018

Я создаю простой логин / создаю скрипт пользователя.Проблема в том, что всякий раз, когда я вхожу в систему безуспешно, скрипт зависает.Есть идеи как это исправить?

public void LoginButtonPressed()
{
    FirebaseAuth.DefaultInstance.SignInWithEmailAndPasswordAsync(EmailAddress.text, Password.text).
        ContinueWith(task =>
        {
            if (task.IsCanceled)
            {
                Debug.LogError("Login was canceled");
                userText = "2";
            }

            if(task.IsFaulted)
            {
                Debug.LogError("Error logging in");
                userText = "3";
            }

            if(task.IsCompleted)
            {
                Debug.LogFormat("Usermanager: User signed in successfully: {0}", EmailAddress.text);
                userText = "4";
                isLoadMainScene = true;
            }
        });
}

enter image description here

enter image description here

Ответы [ 2 ]

0 голосов
/ 11 октября 2018

Несмотря на то, что вы нашли ответ, есть кое-что, что вы должны знать о ведении журнала:

Debug.Log используется для создания журнала без остановки.

Debug.LogWarning используется для создания предупреждения без остановки.

Debug.LogError используется для создания сообщения об ошибке с возможностью приостановки выполнения кода.


Как избежать блокировки пользовательского интерфейса при входе в систему с ошибками?

Функция приостановки должна , а не препятствовать использованию Debug.LogError.Это очень полезно, потому что позволяет приостановить код, когда вы видите журнал в редакторе.Если вы хотите, чтобы ваш журнал был помечен как «ошибка», вы все равно можете использовать Debug.LogError и избежать этой паузы при использовании Debug.LogError, отключив параметр «Пауза ошибки» на вкладке Консоль.

enter image description here

Смотрите, изображение выше, оно включено.Просто нажмите «Пауза ошибки» один раз, чтобы отключить ее.

0 голосов
/ 11 октября 2018

Использование Debug.LogError(String) приводит к завершению сценария.

Вместо этого используйте Debug.Log(String); для регистрации сообщений и продолжения выполнения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...