アプリ開発で最もよく使われる Firebase(FCM プッシュ・Auth・Firestore・Analytics)と Google Cloud プロジェクトの初期設定ガイドです。 支払いプロファイルの連携から iOS / Android SDK キーまでまとめて整理します。
登録費用
無料(Spark)
有料移行
必要に応じて Blaze
必要情報
Google アカウント・カード
Overview
Firebase は Google Cloud プロジェクト上で動く製品群です。Spark(無料)プランから始め、Cloud Functions や Storage の利用量が増えたら Blaze(従量課金)へのアップグレードが必要になります。FCM プッシュ自体は Spark でも無制限で無料です。
Google アカウント + 2FA
組織 Workspace アカウントを推奨します。
支払い方法(Blaze)
海外決済対応カードが必要です。
プロジェクト名の決定
一部リソースに固定で含まれます。
リージョン(Asia-Northeast3)
韓国向けはソウルリージョン。
Step by Step
PROJECT
Firebase は内部的に GCP プロジェクトを作成します。
FIREBASE
既存の GCP プロジェクトに Firebase 機能を有効化します。
BILLING
外部 API 呼び出しと Storage 利用には Blaze が必要です。
APP
各プラットフォーム用の設定ファイルをダウンロードします。
PUSH
プッシュ通知は FCM(Firebase Cloud Messaging)で無料です。
AUTH
ログイン方法を有効化します。
DATABASE
データストアを選択して作成します。
ADMIN
サーバーで Admin SDK を使う場合はサービスアカウントキーを発行します。
Pitfalls
Spark → Blaze への強制移行
Cloud Functions のデプロイや外部 API 呼び出しには Blaze が必須です。カード未登録ではデプロイが失敗します。
APNs キー未登録で iOS プッシュ失敗
iOS の FCM は APNs(Apple Push Notification)トークンを FCM トークンに変換して使います。先に Apple Developer で APNs 認証キー(.p8)を発行してください。
google-services.json の取り扱い
ファイル自体は公開可能ですが Android SHA-1 を含むため関連情報と一緒に管理されます。一方、サービスアカウント JSON は絶対に公開しないでください。
セキュリティルールを放置
テストモード(公開)のままだと誰でも DB を閲覧できます。すぐに本番ルールへ切り替えてください。
リージョンは変更不可
Firestore / Storage のリージョンはプロジェクト作成時に一度決めたら変更できません。ソウルリージョンを推奨します。