前提条件
Android Studio の最新バージョンをインストールするか、更新します。
プロジェクトが次の要件を満たしていることを確認します(プロダクトによっては、より厳しい要件がある場合があります)。
- API レベル 21(Lollipop)以降を対象としていること
- Android 5.0 以上を使用していること。
- Jetpack(AndroidX)を使用します。また、次のバージョン要件を満たしている必要があります。
com.android.tools.build:gradle
v7.3.0 以降compileSdkVersion
28 以降
実機を設定するか、エミュレータを使用してアプリを実行します。
Google Play 開発者サービスに依存している Firebase SDK を使用する場合、デバイスまたはエミュレータに Google Play 開発者サービスがインストールされている必要があります。Google アカウントを使用して Firebase にログインします。
Android プロジェクトがまだない方で Firebase プロダクトを試す場合は、クイックスタート サンプルをダウンロードしてください。
Android アプリは以下のいずれかの方法で Firebase に接続できます。
- オプション 1: (推奨)Firebase コンソールの設定ワークフローを使用します。
- オプション 2: Android Studio Firebase Assistant を使用します(追加構成が必要な場合があります)。
オプション 1: Firebase コンソールを使用して Firebase を追加する
Firebase をアプリに追加するには、Firebase コンソールと開いている Android プロジェクトの両方でタスクを行う必要があります(コンソールから Firebase 構成ファイルをダウンロードし、Android プロジェクトに移動するなど)。
ステップ 1: Firebase プロジェクトを作成する
Android アプリに Firebase を追加する前に、Android アプリに接続するための Firebase プロジェクトを作成します。Firebase プロジェクトの詳細については、Firebase プロジェクトについて理解するをご覧ください。
Firebase プロジェクトを作成する
-
Firebase コンソールで [プロジェクトを追加] をクリックします。
-
Firebase リソースを既存の Google Cloud プロジェクトに追加するには、そのプロジェクト名を入力するか、プルダウン メニューから選択します。
-
新しいプロジェクトを作成するには、任意のプロジェクト名を入力します。必要に応じて、プロジェクト名の下に表示されるプロジェクト ID を編集することもできます。
-
-
Firebase の利用規約が表示されたら、内容を読み、同意します。
-
[続行] をクリックします。
-
(省略可)プロジェクトに対し Google Analyticsを設定します。これにより、次の Firebase プロダクトを使用する際のエクスペリエンスを最適化できます。
既存の Google Analytics アカウントを選択するか、新しいアカウントを作成します。
新しいアカウントを作成する場合は、Analytics レポートのロケーションを選択し、プロジェクトのデータ共有設定と Google Analyticsの規約に同意します。
-
[プロジェクトを作成](既存の Google Cloud プロジェクトを使用する場合は [Firebase を追加])をクリックします。
Firebase プロジェクトのリソースが自動的にプロビジョニングされます。処理が完了すると、Firebase コンソールに Firebase プロジェクトの概要ページが表示されます。
ステップ 2: アプリを Firebase に登録する
Android アプリで Firebase を使用するには、アプリを Firebase プロジェクトに登録する必要があります。アプリの登録は、プロジェクトへのアプリの「追加」とも呼ばれます。
Firebaseコンソールに移動します。
プロジェクトの概要ページの中央で、Android アイコン(
)または [アプリを追加] をクリックして、設定ワークフローを起動します。[Android パッケージ名] フィールドにアプリのパッケージ名を入力します。
パッケージ名とは何ですか?どこで見つけられますか?
パッケージ名は、デバイスと Google Play ストアでアプリを一意に識別するものです。
パッケージ名はアプリケーション ID と呼ばれることもあります。
モジュール(アプリレベル)の Gradle ファイルでアプリのパッケージ名を探します。通常は
app/build.gradle
です(例:com.yourcompany.yourproject
)。パッケージ名の値は大文字と小文字が区別されます。Firebase プロジェクトに登録された後、この Firebase Android アプリのパッケージ名は変更できないことに注意してください。
(省略可)その他のアプリ情報(アプリのニックネームとデバッグ用の署名証明書 SHA-1)を入力します。
Firebase 内でアプリのニックネームとデバッグ用の署名証明書 SHA-1 はどのように使用されますか?
アプリのニックネーム: 内部用の簡易的な ID であり、Firebase コンソールでのみ表示されます。
デバッグ用の署名証明書 SHA-1: SHA-1 ハッシュは Firebase Authentication(Google ログインまたは電話番号ログインを使用する場合)と Firebase Dynamic Links で必要です。
[アプリの登録] をクリックします。
ステップ 3: Firebase 構成ファイルを追加する
Firebase Android 構成ファイル(
)をダウンロードしてアプリに追加します。google-services.json [Download google-services.json] をクリックして、Firebase Android 構成ファイルを入手します。
構成ファイルをアプリのモジュール(アプリレベル)ルート ディレクトリに移動します。
この構成ファイルについて知っておくべきことは何ですか?
Firebase 構成ファイルには、プロジェクト用の機密ではない一意の識別子が含まれています。この構成ファイルの詳細については、Firebase プロジェクトについて理解するをご覧ください。
Firebase 構成ファイルはいつでも再ダウンロードできます。
構成ファイル名に
(2)
などの文字が追加されていないことを確認します。
構成ファイルの値に Firebase SDK からアクセスできるようにするには、Google サービスの Gradle プラグイン(google-services.json google-services
)が必要です。ルートレベル(プロジェクト レベル)の Gradle ファイル(
<project>/build.gradle.kts
または<project>/build.gradle
)で、依存関係として Google サービス プラグインを追加します。plugins { id("com.android.application") version "7.3.0" apply false // ... // Add the dependency for the Google services Gradle plugin id("com.google.gms.google-services") version "4.4.2" apply false }
plugins { id 'com.android.application' version '7.3.0' apply false // ... // Add the dependency for the Google services Gradle plugin id 'com.google.gms.google-services' version '4.4.2' apply false }
モジュール(アプリレベル)の Gradle ファイル(通常は
<project>/<app-module>/build.gradle.kts
または<project>/<app-module>/build.gradle
)に、Google サービス プラグインを追加します。plugins { id("com.android.application") // Add the Google services Gradle plugin id("com.google.gms.google-services") // ... }
plugins { id 'com.android.application' // Add the Google services Gradle plugin id 'com.google.gms.google-services' // ... }
ステップ 4: アプリに Firebase SDK を追加する
モジュール(アプリレベル)の Gradle ファイル(通常は
<project>/<app-module>/build.gradle.kts
または<project>/<app-module>/build.gradle
)で、アプリで使用する Firebase プロダクトの依存関係を追加します。Firebase Android BoM を使用して、ライブラリのバージョニングを管理することをおすすめします。dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:33.9.0")) // When using the BoM, you don't specify versions in Firebase library dependencies // Add the dependency for the Firebase SDK for Google Analytics implementation("com.google.firebase:firebase-analytics") // TODO: Add the dependencies for any other Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth") implementation("com.google.firebase:firebase-firestore") }
Firebase Android BoM を使用すると、アプリは常に互換性のあるバージョンの Firebase Android ライブラリを使用します。
Kotlin 固有のライブラリ モジュールをお探しの場合、2023 年 10 月(Firebase BoM 32.5.0)以降、Kotlin と Java のどちらのデベロッパーもメイン ライブラリ モジュールを利用できるようになります(詳しくは、このイニシアチブに関するよくある質問をご覧ください)。
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:33.9.0")) // When using the BoM, you don't specify versions in Firebase library dependencies // TODO: Add the dependencies for Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth") implementation("com.google.firebase:firebase-firestore") }
Firebase Android BoM を使用すると、アプリは常に互換性のあるバージョンの Firebase Android ライブラリを使用します。
Kotlin 固有のライブラリ モジュールをお探しの場合、2023 年 10 月(Firebase BoM 32.5.0)以降、Kotlin と Java のどちらのデベロッパーもメイン ライブラリ モジュールを利用できるようになります(詳しくは、このイニシアチブに関するよくある質問をご覧ください)。
使用するプロダクトの依存関係を追加したら、Android プロジェクトを Gradle ファイルと同期します。
invoke-custom のサポートと脱糖の有効化に関するビルドエラーが発生した場合の修正方法は次のとおりです。
Android Gradle プラグイン(AGP)v4.2 以前を使用する Gradle ビルドでは、Java 8 サポートを有効にする必要があります。そうしないと、Firebase SDK を追加した際に Android プロジェクトでビルドエラーが発生します。
このビルドエラーを修正するには、次の 2 つの方法があります。
- エラー メッセージに示されている
compileOptions
をアプリレベルのbuild.gradle.kts
ファイルまたはbuild.gradle
ファイルに追加します。 - Android プロジェクトの
minSdk
を 26 以上に設定します。
このビルドエラーの詳細については、こちらのよくある質問をご覧ください。
- エラー メッセージに示されている
これで、推奨の次の手順に進めます。
設定の際に問題が発生した場合は、Android のトラブルシューティングとよくある質問をご覧ください。
オプション 2: Firebase Assistant を使用して Firebase を追加する
Firebase Assistant は、Firebase プロジェクトにアプリを登録し、Android プロジェクトに必要な Firebase ファイル、プラグイン、依存関係を追加します。これらはすべて Android Studio から行えます。
Android Studio で Android プロジェクトを開き、Android Studio と Firebase Assistant の最新版を使用していることを確認します。
- Windows / Linux: [Help] > [Check for updates]
- macOS: [Android Studio] > [Check for updates]
Firebase Assistant を開きます([Tools] > [Firebase])。
[Assistant] ペインで、アプリに追加する Firebase プロダクトを選択します。セクションを展開し、チュートリアルのリンク(
[Analytics] > [Log an Analytics event] など)をクリックします。[Connect to Firebase] をクリックして Android プロジェクトを Firebase に接続します。
このワークフローの内容
このワークフローは、アプリのパッケージ名を使用して新しい Firebase Android アプリを自動的に作成します。この新しい Firebase Android アプリは、既存の Firebase プロジェクトと新しいプロジェクトのどちらでも作成できます。
Firebase プロジェクトの設定については、次のヒントを参考にしてください。
Firebase プロジェクトにアプリを追加する際のベスト プラクティス(複数のバリアントの扱い方など)をご確認ください。
新しいプロジェクトを作成する場合は、プロジェクトで Google Analytics を設定することを強くおすすめします。これにより、多くの Firebase プロダクトで最適なエクスペリエンスを実現できます。
また、このワークフローでは、Firebase プロジェクトの Android 構成ファイル(
)をアプリのモジュール(アプリレベル)ディレクトリに追加します。google-services.json
ボタンをクリックして、必要な Firebase プロダクトを追加します(
アプリに Analytics を追加する など)。
アプリを同期して、すべての依存関係に必要なバージョンがあることを確認します。
[Assistant] ペインで、選択した Firebase プロダクトの残りの設定手順を行います。
Firebase Assistant で、他にも多くの Firebase プロダクトを追加できます。
これで、推奨の次の手順に進めます。
設定の際に問題が発生した場合は、Android のトラブルシューティングとよくある質問をご覧ください。
使用可能なライブラリ
このセクションでは、Android とその Gradle 依存関係でサポートされている Firebase プロダクトを一覧表示しています。Firebase Android ライブラリの詳細については、以下をご覧ください。
Firebase Android SDK GitHub リポジトリ
Firebase Android BoM を使用する場合、Gradle のビルド構成ファイルで Firebase ライブラリの依存関係を宣言する際に、個々のライブラリ バージョンを指定しないでください。
サービスまたはプロダクト | Gradle 依存関係 | 最新 バージョン |
Analytics を追加? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Firebase Android BoM (Bill of Materials) |
com.google.firebase:firebase-bom
最新バージョンの Firebase BoM には、各 Firebase Android ライブラリの最新バージョンが含まれます。特定の BoM バージョンにマッピングされているライブラリ バージョンを確認するには、その BoM バージョンのリリースノートをご覧ください。 |
33.9.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AdMob | com.google.android.gms:play-services-ads | 23.6.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Analytics | com.google.firebase:firebase-analytics | 22.2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Check カスタム プロバイダ | com.google.firebase:firebase-appcheck | 18.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Check デバッグ プロバイダ | com.google.firebase:firebase-appcheck-debug | 18.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Check Play Integrity プロバイダ | com.google.firebase:firebase-appcheck-playintegrity | 18.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Distribution | com.google.firebase:firebase-appdistribution | 16.0.0-beta14 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Distribution API | com.google.firebase:firebase-appdistribution-api | 16.0.0-beta14 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Distribution プラグイン | com.google.firebase:firebase-appdistribution-gradle | 5.1.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Authentication | com.google.firebase:firebase-auth | 23.2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud Firestore | com.google.firebase:firebase-firestore | 25.1.2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud Functions for Firebase Client SDK | com.google.firebase:firebase-functions | 21.1.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud Messaging | com.google.firebase:firebase-messaging | 24.1.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud Storage | com.google.firebase:firebase-storage | 21.0.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Crashlytics | com.google.firebase:firebase-crashlytics | 19.4.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Crashlytics NDK | com.google.firebase:firebase-crashlytics-ndk | 19.4.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Crashlytics プラグイン | com.google.firebase:firebase-crashlytics-gradle | 3.0.3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
動的機能モジュールのサポート | com.google.firebase:firebase-dynamic-module-support | 16.0.0-beta03 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Dynamic Links | com.google.firebase:firebase-dynamic-links | 22.1.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-App Messaging | com.google.firebase:firebase-inappmessaging | 21.0.1 | (必須) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-App Messaging Display | com.google.firebase:firebase-inappmessaging-display | 21.0.1 | (必須) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Firebaseインストール | com.google.firebase:firebase-installations | 18.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Firebase ML Model Downloader API | com.google.firebase:firebase-ml-modeldownloader | 25.0.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Performance Monitoring | com.google.firebase:firebase-perf | 21.0.4 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Performance Monitoring プラグイン | com.google.firebase:perf-plugin | 1.4.2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Realtime Database | com.google.firebase:firebase-database | 21.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Remote Config | com.google.firebase:firebase-config | 22.1.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Vertex AI in Firebase | com.google.firebase:firebase-vertexai | 16.1.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Google Play 開発者サービス プラグイン | com.google.gms:google-services | 4.4.2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
非推奨ライブラリ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Check SafetyNet プロバイダ | com.google.firebase:firebase-appcheck-safetynet | 16.1.2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
App Indexing | com.google.firebase:firebase-appindexing | 20.0.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Firebase KTX モジュール
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Firebase ML Kit ライブラリ
|
次のステップ
Firebase サービスをアプリに追加します。
Analytics でユーザー行動を把握する。
Authentication でユーザー認証フローを設定する。
Cloud Firestore または Realtime Database にユーザー情報などのデータを保存する。
Cloud Storage に写真や動画などのファイルを保存する。
Cloud Functions を使用した安全な環境でバックエンド コードをトリガーする。
Cloud Messaging を使用して通知を送信する。
Crashlytics を使用して、アプリがクラッシュする場所と理由を確認する。
以下で Firebase の詳細を確認します。
Firebase プロジェクトとプロジェクトに関するベスト プラクティスについては、Firebase プロジェクトについて理解するをご覧ください。
なじみのないコンセプトや、Firebase および Android 開発に独自のコンセプトについて不明点がある場合は、Android と Firebase の詳細をご覧ください。
Firebase アプリのサンプルを確認する。
Firebase Android Codelab を使用して実際に体験する。
Firebase in a Weekend コースで詳しく学習する。
アプリを起動する準備をする。
- Google Cloud コンソールでプロジェクトの予算アラートを設定する。
- Firebase コンソールの [使用量と請求額] ダッシュボードをモニタリングして、複数の Firebase サービスを通じたプロジェクトの全体的な使用状況を確認する。
- Firebase リリース チェックリストを確認する。
Firebase や Android プロジェクトでお困りの場合は、Android のトラブルシューティングとよくある質問をご覧ください。