ダーク/ライト切り替え

Firebase AuthentificationでEmailアカウントと匿名アカウントを実装する

投稿日2023-02-09

Picture of the logo


目次

目次を読み込み中...

今回はFirebase Authentificationを使ってUnityに匿名認証、メール認証を実装する手順を紹介します。

# 初期設定

Firebaseの登録と初期設定については、前回の記事を御覧ください。

  • ・ firebaseアカウントの作成
  • ・ firebase consoleでプロジェクトの作成
  • ・ プロジェクト内にUnity用アプリを作成
  • ・ iOSかAndroidを選択
  • ・ 設定用のjsonファイルをダウンロード
  • ・ SDKファイルのダウンロード

ここまでは前回記事と同じです。今回は画面左のメニューからAuthentificationを押して下さい。

# 初期化

  • ・ [Firebase SDK](https://firebase.google.com/docs/unity/setup?authuser=0&hl=ja#add-sdks)を任意の場所に解凍してFirebaseAuthのパッケージをインストールする。
  • ・ Unityエディター上で空オブジェクトを作成し、下記のc#スクリプトをアタッチする。

上記の例ではstatic変数を使っていますが、staticを使いたくない人は付けなくても構いません。ただし都度インスタンス化が必要です。この初期化処理は割と重いようなので、一回で済まるべきだと思います。

# 匿名アカウントで認証する

アカウント認証が必要なアプリに匿名認証は必須と言っていいでしょう。むしろ、これだけで良いです!会員登録、ユーザー登録、個人情報の入力を嫌う人は多いので、必ず実装しましょう。他の認証方法よりもハードルは低く手順も一番簡単です。

これだけで、初回起動時には新しいアカウントが発行され、次回以降は同じ端末であれば同じアカウントでログインされます。ただし、ログインする機器が変わると別アカウントになるので、機器をまたいで同じアカウントを使用したい場合は後述するEメール認証や、google、twitterなどのSNS連携が必要となります。

# Eメールアドレスで新規アカウントを作る

以下にEメールで新規アカウントを作るコードを紹介します。ここでは、

  • ・ SignUp = 新規アカウント作成
  • ・ SignIn = 既存アカウントへのログイン

とします。

最低限の実装例になります。例外処理は必ず組み込むようにしましょう。成功するとIDと名前が表示されます。

# 既存のEメールアカウントでログインする

使用する関数が違うだけで中身はほぼ一緒です。 上のSignUpは既に存在するアドレスを入力するとエラーになります。登録済みのアドレスにログインする場合はこちらを使います。


            

# パスワード再設定メールの送信

パスワードを忘れた時、再設定したい時などにパスワードをリセットするメールを送信する事ができます。メールアドレスを忘れてしまったら・・・どうにもなりません・・・ 下記のようなコードでメールを送信できます。細かな設定をしなくてもグーグルのサーバーから送信されます。

このようなメールが登録した自分のアドレスに届きます。また、自分のドメインを持っている人は送信元のドメイン名を自分の物にする事もできます。無くても構いません。その場合はgoogleのドメインで送られます。より細かな設定をしたい人はFirebaseサイトやドキュメントを読んで下さい。

ResetMail

上記のリンクをクリック(タップ)すると次のようなお馴染みの画面になります。

ResetMail

# 全コード紹介

以上、簡単ではありますが、Firebaseを使った匿名認証、Eメール認証のUnityへの実装方法の紹介でした。






関連記事

FirebaseStorageからUnityへファイルを読み込み、Resourcesに保存する

blog

UnityでFIREBASEのStorageサービスから画像ファイルをダウンロードしてシーン上に表示、保存するまでの簡単な手順紹介です。

UnityでFirebase Storeからデータを読み書きする

blog

FirebaseのFireStoreのデータをUnityから読み書きする手順を紹介します。入門レベル。

【Unity】文字列に禁止ワードが含まれているかチェックをする方法

blog

Unityで下品な単語など望ましくない言葉が含まれていないかをチェックする方法を紹介します

Unityでモザイク処理をする方法

blog

今回はUnityで画像にモザイク処理を掛ける方法を紹介します。標準機能では用意されていないようなのでカスタムシェーダーで実装します。

Unityで端末情報、IPアドレスを取得する方法

blog

Unityにて端末固有情報などをC#コードから取得する方法をまとめました。

【初心者】Unityでリンク先のウェブサイトを開く方法【備忘録】

blog

Unityからウェブサイトを開く方法を簡単に紹介します。初心者向け、備忘録

GO言語サーバーとUnityクライアント(C#)をgRPCで接続テストしてみた【入門レベル】

blog

UnityでgRPCをする場合、Magic Onionを使うのがお手軽ですが、今回はGO言語でサーバーを構築してみたかったので最低限の接続機能を自作してみました。備忘録を兼ね書き残しておきます。

UnityでTrail Rendererを使ってオブジェクトの軌跡を描画する

blog

今回はUnityでTrail Rendererを使ってオブジェクトの軌跡を描画する方法についてご紹介します。Trail Rendererを使うことで、オブジェクトがどのような軌跡を描いたかを可視化することができます。

【Unity】Json,CSVファイルを相互に変換する方法【備忘録】

blog

個人的備忘録も兼ねてUnityでインスペクタ上でテキストファイルを指定して、そのファイルから結果を取得する方法をいくつか紹介します。

Unity】一枚のイメージ画像を縦横のタイル状に分割する方法

blog

UnityのUGUIを使用して、一枚のイメージ画像を縦横に分割して表示する方法を紹介します。


スポンサーリンク

このサイトをシェアする