ダーク/ライト切り替え

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

投稿日 2023-02-03T16:01:56.828745+09:00

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

目次

目次を読み込み中...

Firebaseの登録と設定

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

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

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

FireStoreのルール設定

そのままでも暫くは利用できますが、継続使用するならルール変更しないといけません。画面の例では読み書きフルアクセスですのでご注意下さい。あくまでテスト用です。

rule

Unity側の設定

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

C#スクリプトの作成

実行結果

書き込み

テストデータとして、Player、001というドキュメントを新規作成してFIREBASE上に保存してみます。読み書きのデータは基本的にDictionary型になります。Dictionary型についての詳細はUnityやC#のドキュメントを御覧下さい。

実行後、FIREBASE管理画面で確認したところ、ちゃんと保存されているようです。

rule

ちなみにWriteはUpdateも兼ねています。Updateは指定したドキュメントが存在しない時エラーになります。

読み込み

こんな感じで読み込むことが出来ます。読み込んだものはDictionary型なので、keysを取ってforeach等で取得出来ます。取得は非同期なのでasync/awaitが必要です。

実行した結果、ログが2回ずつ表示されてますが、ちゃんと読み込めているようです。

result

さいごに

以前にも書きましたが、テスト環境では無料枠で問題ありませんが、本番運用する際は料金表をよく読みアクセス頻度等を考慮して採算割れすることが無いように十分注意しましょう。


準備中

このサイトをシェアする