Как сказал Даг Стивенсон , это невозможно; у вас либо публичный логин, либо ограниченный логин с аутентификацией.
Однако у меня просто будет один выделенный пользователь, например myUnityAppUser
, с паролем, например, например. 123456
где-то определено в скрипте или, может быть, где-то дополнительный файл шифрования.
Затем выполните вход автоматически без участия пользователя -> отправить имя пользователя + пароль. Пароль все еще может быть зашифрован и т. Д., Но все это может быть обработано самим приложением без активного входа в систему Everytime
Чем вы делаете обычный вход в систему, например, например. ( Источник )
public void Login(string email, string password)
{
auth.SignInWithEmailAndPasswordAsync(email, password).ContinueWith(task =>
{
if (task.IsCanceled)
{
Debug.LogError("SignInWithEmailAndPasswordAsync canceled.");
return;
}
if (task.IsFaulted)
{
Debug.LogError("SignInWithEmailAndPasswordAsync error: " + task.Exception);
if (task.Exception.InnerExceptions.Count > 0)
UpdateErrorMessage(task.Exception.InnerExceptions[0].Message);
return;
}
FirebaseUser user = task.Result;
Debug.LogFormat("User signed in successfully: {0} ({1})",
user.DisplayName, user.UserId);
SceneManager.LoadScene("LoginResults");
});
}
Теперь где-то в вашем приложении вы просто звоните
Login ("myUnityAppUset@some.email", "123456");
с какими-то где-то "жестко закодированными" (может быть, зашифрованными?) Учетными данными.
Обратите внимание, что все еще возможно, что кто-то декомпилирует приложение и сможет снова обмануть.