「Unity/Firebase/Authentication」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→匿名認証を使う場合) |
(→匿名認証を使う場合) |
||
行34: | 行34: | ||
公式:https://firebase.google.com/docs/auth/unity/anonymous-auth?hl=ja | 公式:https://firebase.google.com/docs/auth/unity/anonymous-auth?hl=ja | ||
+ | |||
+ | ==匿名認証を使う場合== | ||
+ | #web側のfirebaseコンソールでメール認証を有効にする(Authentication/ログイン方法/匿名/有効) | ||
+ | #"ユーザーがメールアドレスとパスワードを使用してログインできるようにします。"側だけon | ||
+ | |||
+ | 以下アカウント作成処理 | ||
+ | |||
+ | string email = "hogehoge@example.com"; | ||
+ | string password = "hogehoge"; // 6文字以上でないとisFaulted側を通る | ||
+ | auth.CreateUserWithEmailAndPasswordAsync(email, password).ContinueWith(task => { | ||
+ | // この中はUIが表示できない。 | ||
+ | if (task.IsCanceled) | ||
+ | { | ||
+ | Debug.LogError("CreateUserWithEmailAndPasswordAsync was canceled."); | ||
+ | return; | ||
+ | } | ||
+ | if (task.IsFaulted) | ||
+ | { | ||
+ | Debug.LogError("CreateUserWithEmailAndPasswordAsync encountered an error: " + task.Exception); | ||
+ | return; | ||
+ | } | ||
+ | // Firebase user has been created. | ||
+ | Firebase.Auth.FirebaseUser newUser = task.Result; | ||
+ | Debug.LogFormat("Firebase user created successfully: ({0}) ({1})", | ||
+ | newUser.DisplayName, newUser.UserId); | ||
+ | }); | ||
+ | |||
+ | アカウントを作成してもメールは飛ばない、アカウントを作成した後同じ処理をするとIsFaulted側を通る。 |
2019年6月22日 (土) 20:05時点における版
Firebase設定
unity/Firebase/基本 [ショートカット]
認証プラグインインストール
FirebaseAuth.unitypackageをAssets/Importからインストールする
https://firebase.google.com/download/unity?hl=ja
匿名認証を使う場合
- web側のfirebaseコンソールで匿名認証を有効にする(Authentication/ログイン方法/匿名/有効)
以下を実装
Firebase.Auth.FirebaseAuth auth = Firebase.Auth.FirebaseAuth.DefaultInstance; auth.SignInAnonymouslyAsync().ContinueWith(task => { if (task.IsCanceled) { Debug.LogError("SignInAnonymouslyAsync was canceled."); return; } if (task.IsFaulted) { Debug.LogError("SignInAnonymouslyAsync encountered an error: " + task.Exception); // 匿名が有効になって場合はこちらを通る。 return; } Firebase.Auth.FirebaseUser newUser = task.Result; Debug.Log("User signed in successfully"); Debug.Log("user=" + newUser.DisplayName); // 匿名では空だった Debug.Log("user=" + newUser.UserId); // こちらはX3TUGaMPQPaN1rmGL2CxhQ4z4712と表示 });
再起動やキャッシュ削除してもUserIdは変わらないが、アプリデータ削除や再インストールではUserIdは変わる。
公式:https://firebase.google.com/docs/auth/unity/anonymous-auth?hl=ja
匿名認証を使う場合
- web側のfirebaseコンソールでメール認証を有効にする(Authentication/ログイン方法/匿名/有効)
- "ユーザーがメールアドレスとパスワードを使用してログインできるようにします。"側だけon
以下アカウント作成処理
string email = "hogehoge@example.com"; string password = "hogehoge"; // 6文字以上でないとisFaulted側を通る auth.CreateUserWithEmailAndPasswordAsync(email, password).ContinueWith(task => {
// この中はUIが表示できない。 if (task.IsCanceled) { Debug.LogError("CreateUserWithEmailAndPasswordAsync was canceled."); return; } if (task.IsFaulted) { Debug.LogError("CreateUserWithEmailAndPasswordAsync encountered an error: " + task.Exception); return; } // Firebase user has been created. Firebase.Auth.FirebaseUser newUser = task.Result; Debug.LogFormat("Firebase user created successfully: ({0}) ({1})", newUser.DisplayName, newUser.UserId);
});
アカウントを作成してもメールは飛ばない、アカウントを作成した後同じ処理をするとIsFaulted側を通る。