前提条件
Android Studio の最新バージョンをインストールするか、更新してください。
プロジェクトが次の要件を満たしていることを確認します。
- ターゲットが API レベル 19(KitKat)以上であること
- Android 4.4 以上を使用していること
- Jetpack(AndroidX)を使用していること。次のバージョン要件を満たしている必要があります。
com.android.tools.build:gradle
v3.2.1 以降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 プロジェクトについて理解するをご覧ください。
ステップ 2: アプリを Firebase に登録する
Android アプリで Firebase を使用するには、アプリを Firebase プロジェクトに登録する必要があります。アプリの登録は、プロジェクトへのアプリの「追加」とも呼ばれます。
Firebase コンソールに移動します。
プロジェクトの概要ページの中央で、Android アイコン(
)または [アプリを追加] をクリックして、設定ワークフローを起動します。[Android パッケージ名] フィールドにアプリのパッケージ名を入力します。
(省略可)その他のアプリ情報(アプリのニックネームとデバッグ用の署名証明書 SHA-1)を入力します。
[アプリを登録] をクリックします。
ステップ 3: Firebase 構成ファイルを追加する
Firebase Android 構成ファイルをアプリに追加します。
google-services.json のダウンロード ボタン をクリックして、Firebase Android 構成ファイル(
)を取得します。google-services.json 構成ファイルをアプリのモジュール(アプリレベル)ディレクトリに移動します。
アプリで Firebase プロダクトを有効にするには、Gradle ファイルに google-services プラグインを追加します。
ルートレベル(プロジェクト レベル)の Gradle ファイル(
build.gradle
)に、Google サービスの Gradle プラグインを含めるためのルールを追加します。Google の Maven リポジトリがあることも確認してください。buildscript { repositories { // Check that you have the following line (if not, add it): google() // Google's Maven repository } dependencies { // ... // Add the following line: classpath 'com.google.gms:google-services:4.3.10' // Google Services plugin } } allprojects { // ... repositories { // Check that you have the following line (if not, add it): google() // Google's Maven repository // ... } }
モジュール(アプリレベル)の Gradle ファイル(通常は
app/build.gradle
)で、Google サービスの Gradle プラグインを適用します。apply plugin: 'com.android.application' // Add the following line: apply plugin: 'com.google.gms.google-services' // Google Services plugin android { // ... }
ステップ 4: アプリに Firebase SDK を追加する
Firebase Android BoM を使用して、アプリで使用する Firebase プロダクトの依存関係を宣言します。これらをモジュール(アプリレベル)の Gradle ファイル(通常は
app/build.gradle
)で宣言します。アナリティクスが有効な場合
Java
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:30.0.0') // When using the BoM, you don't specify versions in Firebase library dependencies // Declare the dependency for the Firebase SDK for Google Analytics implementation 'com.google.firebase:firebase-analytics' // Declare the dependencies for any other desired Firebase products // For example, declare the dependencies for Firebase Authentication and Cloud Firestore implementation 'com.google.firebase:firebase-auth' implementation 'com.google.firebase:firebase-firestore' }
Kotlin+KTX
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:30.0.0') // When using the BoM, you don't specify versions in Firebase library dependencies // Declare the dependency for the Firebase SDK for Google Analytics implementation 'com.google.firebase:firebase-analytics-ktx' // Declare the dependencies for any other desired Firebase products // For example, declare the dependencies for Firebase Authentication and Cloud Firestore implementation 'com.google.firebase:firebase-auth-ktx' implementation 'com.google.firebase:firebase-firestore-ktx' }
Firebase Android BoM を使用すると、アプリは常に互換性のあるバージョンの Firebase Android ライブラリを使用します。
アナリティクスが無効な場合
Java
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:30.0.0') // When using the BoM, you don't specify versions in Firebase library dependencies // Declare the dependencies for the desired Firebase products // For example, declare the dependencies for Firebase Authentication and Cloud Firestore implementation 'com.google.firebase:firebase-auth' implementation 'com.google.firebase:firebase-firestore' }
Kotlin+KTX
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:30.0.0') // When using the BoM, you don't specify versions in Firebase library dependencies // Declare the dependencies for the desired Firebase products // For example, declare the dependencies for Firebase Authentication and Cloud Firestore implementation 'com.google.firebase:firebase-auth-ktx' implementation 'com.google.firebase:firebase-firestore-ktx' }
Firebase Android BoM を使用すると、アプリは常に互換性のあるバージョンの Firebase Android ライブラリを使用します。
アプリを同期して、すべての依存関係に必要なバージョンがあることを確認します。
これで、推奨の次の手順に進めます。
設定の際に問題が発生した場合は、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 プロダクトを追加します(
アプリにアナリティクスを追加する など)。
アプリを同期して、すべての依存関係に必要なバージョンがあることを確認します。
[Assistant] ペインで、選択した Firebase プロダクトの残りの設定手順を行います。
Firebase Assistant で、他にも多くの Firebase プロダクトを追加できます。
これで、推奨の次の手順に進めます。
設定の際に問題が発生した場合は、Android のトラブルシューティングとよくある質問をご覧ください。
使用可能なライブラリ
このセクションでは、Android とその Gradle 依存関係でサポートされている Firebase プロダクトを一覧表示しています。Firebase Android ライブラリの詳細については、以下をご覧ください。
リファレンス ドキュメント(Java | Kotlin+KTX)
Firebase Android SDK GitHub リポジトリ
Firebase Android BoM を使用する場合、build.gradle
で Firebase ライブラリの依存関係を宣言する際に、個々のライブラリ バージョンを指定しません。
Java
サービスまたはプロダクト | Gradle 依存関係 | 最新 バージョン |
アナリティクスの追加 |
---|---|---|---|
Firebase Android BoM (部品構成表) |
com.google.firebase:firebase-bom
最新バージョンの Firebase BoM には、各 Firebase Android ライブラリの最新バージョンが含まれます。特定の BoM バージョンにマッピングされているライブラリ バージョンを確認するには、その BoM バージョンのリリースノートをご覧ください。 |
30.0.0 | |
AdMob | com.google.android.gms:play-services-ads | 20.6.0 | |
アナリティクス | com.google.firebase:firebase-analytics | 21.0.0 | |
App Check カスタム プロバイダ | com.google.firebase:firebase-appcheck | 16.0.0 | |
App Check デバッグ プロバイダ | com.google.firebase:firebase-appcheck-debug | 16.0.0 | |
App Check SafetyNet プロバイダ | com.google.firebase:firebase-appcheck-safetynet | 16.0.0 | |
App Distribution | com.google.firebase:firebase-appdistribution | 16.0.0-beta02 | |
App Distribution プラグイン | com.google.firebase:firebase-appdistribution-gradle | 3.0.1 | |
Authentication | com.google.firebase:firebase-auth | 21.0.3 | |
Cloud Firestore | com.google.firebase:firebase-firestore | 24.1.2 | |
Cloud Functions for Firebase Client SDK | com.google.firebase:firebase-functions | 20.1.0 | |
Cloud Messaging | com.google.firebase:firebase-messaging | 23.0.4 | |
Cloud Storage | com.google.firebase:firebase-storage | 20.0.1 | |
Crashlytics | com.google.firebase:firebase-crashlytics | 18.2.10 | |
Crashlytics NDK | com.google.firebase:firebase-crashlytics-ndk | 18.2.10 | |
Crashlytics プラグイン | com.google.firebase:firebase-crashlytics-gradle | 2.8.1 | |
動的機能モジュールのサポート | com.google.firebase:firebase-dynamic-module-support | 16.0.0-beta01 | |
Dynamic Links | com.google.firebase:firebase-dynamic-links | 21.0.1 | |
In-App Messaging | com.google.firebase:firebase-inappmessaging | 20.1.2 | (必須) |
In-App Messaging Display | com.google.firebase:firebase-inappmessaging-display | 20.1.2 | (必須) |
Firebase インストール | com.google.firebase:firebase-installations | 17.0.1 | |
Firebase ML Model Downloader API | com.google.firebase:firebase-ml-modeldownloader | 24.0.3 | |
Performance Monitoring | com.google.firebase:firebase-perf | 20.0.6 | |
Performance Monitoring プラグイン | com.google.firebase:perf-plugin | 1.4.1 | |
Realtime Database | com.google.firebase:firebase-database | 20.0.5 | |
Remote Config | com.google.firebase:firebase-config | 21.1.0 | |
Google Play 開発者サービス プラグイン | com.google.gms:google-services | 4.3.10 | |
非推奨ライブラリ | |||
App Indexing | com.google.firebase:firebase-appindexing | 20.0.0 | |
Firebase ML カスタムモデル API | com.google.firebase:firebase-ml-model-interpreter | 22.0.4 | |
Firebase ML Vision API | com.google.firebase:firebase-ml-vision | 24.1.0 | |
Firebase ML: 画像ラベル付けモデル | com.google.firebase:firebase-ml-vision-image-label-model | 20.0.2 | |
Firebase ML: オブジェクトの検出とトラッキング モデル | com.google.firebase:firebase-ml-vision-object-detection-model | 19.0.6 | |
Firebase ML: 顔検出モデル | com.google.firebase:firebase-ml-vision-face-model | 20.0.2 | |
Firebase ML: バーコード スキャンモデル | com.google.firebase:firebase-ml-vision-barcode-model | 16.1.2 | |
Firebase ML: AutoML Vision Edge API | com.google.firebase:firebase-ml-vision-automl | 18.0.6 | |
Firebase ML: Natural Language API | com.google.firebase:firebase-ml-natural-language | 22.0.1 | |
Firebase ML: 言語識別モデル | com.google.firebase:firebase-ml-natural-language-language-id-model | 20.0.8 | |
Firebase ML: 翻訳モデル | com.google.firebase:firebase-ml-natural-language-translate-model | 20.0.9 | |
Firebase ML: スマート リプライモデル | com.google.firebase:firebase-ml-natural-language-smart-reply-model | 20.0.8 |
Kotlin+KTX
サービスまたはプロダクト | Gradle 依存関係 | 最新 バージョン |
アナリティクスの追加 |
---|---|---|---|
Firebase Android BoM (部品構成表) |
com.google.firebase:firebase-bom
最新バージョンの Firebase BoM には、各 Firebase Android ライブラリの最新バージョンが含まれます。特定の BoM バージョンにマッピングされているライブラリ バージョンを確認するには、その BoM バージョンのリリースノートをご覧ください。 |
30.0.0 | |
AdMob | com.google.android.gms:play-services-ads | 20.6.0 | |
アナリティクス | com.google.firebase:firebase-analytics-ktx | 21.0.0 | |
App Check カスタム プロバイダ | com.google.firebase:firebase-appcheck | 16.0.0 | |
App Check デバッグ プロバイダ | com.google.firebase:firebase-appcheck-debug | 16.0.0 | |
App Check SafetyNet プロバイダ | com.google.firebase:firebase-appcheck-safetynet | 16.0.0 | |
App Distribution | com.google.firebase:firebase-appdistribution-ktx | 16.0.0-beta02 | |
App Distribution プラグイン | com.google.firebase:firebase-appdistribution-gradle | 3.0.1 | |
Authentication | com.google.firebase:firebase-auth-ktx | 21.0.3 | |
Cloud Firestore | com.google.firebase:firebase-firestore-ktx | 24.1.2 | |
Cloud Functions for Firebase Client SDK | com.google.firebase:firebase-functions-ktx | 20.1.0 | |
Cloud Messaging | com.google.firebase:firebase-messaging-ktx | 23.0.4 | |
Cloud Storage | com.google.firebase:firebase-storage-ktx | 20.0.1 | |
Crashlytics | com.google.firebase:firebase-crashlytics-ktx | 18.2.10 | |
Crashlytics NDK | com.google.firebase:firebase-crashlytics-ndk | 18.2.10 | |
Crashlytics プラグイン | com.google.firebase:firebase-crashlytics-gradle | 2.8.1 | |
動的機能モジュールのサポート | com.google.firebase:firebase-dynamic-module-support | 16.0.0-beta01 | |
Dynamic Links | com.google.firebase:firebase-dynamic-links-ktx | 21.0.1 | |
In-App Messaging | com.google.firebase:firebase-inappmessaging-ktx | 20.1.2 | (必須) |
In-App Messaging Display | com.google.firebase:firebase-inappmessaging-display-ktx | 20.1.2 | (必須) |
Firebase インストール | com.google.firebase:firebase-installations-ktx | 17.0.1 | |
Firebase ML Model Downloader API | com.google.firebase:firebase-ml-modeldownloader-ktx | 24.0.3 | |
Performance Monitoring | com.google.firebase:firebase-perf-ktx | 20.0.6 | |
Performance Monitoring プラグイン | com.google.firebase:perf-plugin | 1.4.1 | |
Realtime Database | com.google.firebase:firebase-database-ktx | 20.0.5 | |
Remote Config | com.google.firebase:firebase-config-ktx | 21.1.0 | |
Google Play 開発者サービス プラグイン | com.google.gms:google-services | 4.3.10 | |
非推奨ライブラリ | |||
App Indexing | com.google.firebase:firebase-appindexing | 20.0.0 | |
Firebase ML カスタムモデル API | com.google.firebase:firebase-ml-model-interpreter | 22.0.4 | |
Firebase ML Vision API | com.google.firebase:firebase-ml-vision | 24.1.0 | |
Firebase ML: 画像ラベル付けモデル | com.google.firebase:firebase-ml-vision-image-label-model | 20.0.2 | |
Firebase ML: オブジェクトの検出とトラッキング モデル | com.google.firebase:firebase-ml-vision-object-detection-model | 19.0.6 | |
Firebase ML: 顔検出モデル | com.google.firebase:firebase-ml-vision-face-model | 20.0.2 | |
Firebase ML: バーコード スキャンモデル | com.google.firebase:firebase-ml-vision-barcode-model | 16.1.2 | |
Firebase ML: AutoML Vision Edge API | com.google.firebase:firebase-ml-vision-automl | 18.0.6 | |
Firebase ML: Natural Language API | com.google.firebase:firebase-ml-natural-language | 22.0.1 | |
Firebase ML: 言語識別モデル | com.google.firebase:firebase-ml-natural-language-language-id-model | 20.0.8 | |
Firebase ML: 翻訳モデル | com.google.firebase:firebase-ml-natural-language-translate-model | 20.0.9 | |
Firebase ML: スマート リプライモデル | com.google.firebase:firebase-ml-natural-language-smart-reply-model | 20.0.8 |
次のステップ
Firebase サービスをアプリに追加します。
アナリティクスでユーザー行動を把握する。
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 Console でプロジェクトの予算アラートを設定する。
- Firebase コンソールの [使用量と請求額] ダッシュボードをモニタリングして、複数の Firebase サービスを通じたプロジェクトの全体的な使用状況を確認する。
- Firebase リリース チェックリストを確認する。
Firebase や Android プロジェクトでお困りの場合は、Android のトラブルシューティングとよくある質問をご覧ください。