將 Firebase 新增至您的 Android 專案

事前準備

  • 安裝或更新至最新版的 Android Studio

  • 請確認專案符合下列規定 (請注意,部分產品可能有更嚴格的規定):

    • 指定 API 級別 21 (Lollipop) 以上版本
    • 使用 Android 5.0 以上版本
    • 使用 Jetpack (AndroidX),包括符合下列版本需求:
      • com.android.tools.build:gradle 7.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 專案

如要將 Firebase 新增至 Android 應用程式,您必須先建立 Firebase 專案,以便連結至 Android 應用程式。請參閱「瞭解 Firebase 專案」,進一步瞭解 Firebase 專案。

  1. Firebase 控制台中,按一下「新增專案」

    • 如要將 Firebase 資源新增至現有 Google Cloud 專案,請輸入專案名稱,或從下拉式選單中選取。

    • 如要建立新專案,請輸入所需的專案名稱。您也可以視需要編輯專案名稱下方顯示的專案 ID。

  2. 系統提示時,請詳閱並接受 Firebase 條款

  3. 按一下「繼續」

  4. (選用) 為專案設定 Google Analytics,即可在使用下列任何 Firebase 產品時,獲得最佳體驗:

    選取現有的 Google Analytics 帳戶或建立新帳戶。

    如果您建立新帳戶,請選取Analytics報表位置,然後接受專案的資料共用設定和 Google Analytics 條款。

  5. 按一下「建立專案」 (如果您使用的是現有的 Google Cloud 專案,請按一下「新增 Firebase」)。

Firebase 會自動為 Firebase 專案佈建資源。程序完成後,您會前往 Firebase 主控台的 Firebase 專案總覽頁面。

步驟 2:透過 Firebase 註冊應用程式

如要在 Android 應用程式中使用 Firebase,您必須將應用程式註冊至 Firebase 專案。註冊應用程式通常稱為將應用程式「新增」至專案。

  1. 前往 Firebase 控制台

  2. 在專案總覽頁面的中間,按一下「Android」圖示 () 或「新增應用程式」,啟動設定工作流程。

  3. 在「Android 套件名稱」欄位中輸入應用程式的套件名稱。

    • 套件名稱可用於在裝置和 Google Play 商店中明確識別應用程式。

    • 套件名稱通常稱為應用程式 ID

    • 在模組 (應用程式層級) Gradle 檔案中尋找應用程式的套件名稱,通常是 app/build.gradle (套件名稱範例:com.yourcompany.yourproject)。

    • 請注意,套件名稱值有區分大小寫,且在 Firebase 專案註冊此 Firebase Android 應用程式後,就無法變更。

  4. (選用) 輸入其他應用程式資訊:應用程式暱稱偵錯簽署憑證 SHA-1

  5. 按一下 [Register app] (註冊應用程式)

步驟 3:新增 Firebase 設定檔

  1. 請下載 Firebase Android 設定檔 (google-services.json),然後將其新增至應用程式:

    1. 按一下「Download google-services.json」,取得 Firebase Android 設定檔。

    2. 將設定檔移至應用程式的模組 (應用程式層級) 根目錄。

    • Firebase 設定檔包含專案的非祕密專屬 ID。如要進一步瞭解這個設定檔,請參閱「瞭解 Firebase 專案」。

    • 您隨時可以重新下載 Firebase 設定檔

    • 請確認設定檔名稱未附加額外的字元,例如 (2)

  2. 須有 Google 服務 Gradle 外掛程式 (google-services),Firebase SDK 才能存取 google-services.json 設定檔中的值。

    1. 根層級 (專案層級) Gradle 檔案 (<project>/build.gradle.kts<project>/build.gradle) 中,將 Google 服務外掛程式新增為依附元件:

      KotlinGroovy
      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
      }
    2. 模組 (應用程式層級) Gradle 檔案 (通常為 <project>/<app-module>/build.gradle.kts<project>/<app-module>/build.gradle) 中,新增 Google 服務外掛程式:

      KotlinGroovy
      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 新增至應用程式

  1. 模組 (應用程式層級) 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.7.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.7.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 開發人員都可以依賴主要程式庫模組 (詳情請參閱這項計畫的常見問題)。

  2. 為要使用的產品新增依附元件後,請同步處理 Android 專案和 Gradle 檔案。

    使用 Android Gradle 外掛程式 (AGP) 4.2 以下版本的 Gradle 版本,需要啟用 Java 8 支援功能。否則,這些 Android 專案在新增 Firebase SDK 時會發生建構失敗。

    如要修正這個建構失敗問題,您可以採取下列任一做法:

    • 將錯誤訊息中列出的 compileOptions 新增至應用程式層級build.gradle.ktsbuild.gradle 檔案。
    • 將 Android 專案的 minSdk 提高至 26 以上。

    如要進一步瞭解這個建構失敗問題,請參閱這個常見問題

這樣就可以了!您可以略過前面的內容,查看建議的後續步驟

不過,如果您在設定時遇到問題,請參閱 Android 疑難排解與常見問題



選項 2:使用 Firebase Assistant 新增 Firebase

Firebase Assistant 可讓您使用 Firebase 專案註冊應用程式,並在 Android 專案中新增必要的 Firebase 檔案、外掛程式和依附元件,所有操作都能在 Android Studio 中完成!

  1. 在 Android Studio 中開啟 Android 專案,然後確認您使用的是最新版本的 Android Studio 和 Firebase Assistant:

    • Windows / Linux:依序點選「Help」>「Check for updates」
    • macOS:依序點選「Android Studio」>「Check for updates」
  2. 開啟 Firebase Assistant:依序點選「Tools」>「Firebase」

  3. 在「Assistant」窗格中,選擇要新增至應用程式的 Firebase 產品。展開該產品專區,然後按一下教學課程連結 (例如 Analytics > 記錄 Analytics 事件)。

    1. 按一下「Connect to Firebase」,將 Android 專案連結至 Firebase。

      • 這個工作流程會使用應用程式的套件名稱,自動建立新的 Firebase Android 應用程式。您可以在現有的 Firebase 專案或新專案中建立這個新的 Firebase Android 應用程式。

        以下是設定 Firebase 專案的幾項訣竅:

        • 請參閱我們針對將應用程式新增至 Firebase 專案的最佳做法,包括如何處理多個變化版本。

        • 如果您要建立新專案,強烈建議您為專案設定 Google Analytics,這樣就能在使用多項 Firebase 產品時獲得最佳體驗。

      • 這個工作流程也會將 Firebase 專案的 Android 設定檔案 (google-services.json) 新增至應用程式的模組 (應用程式層級) 目錄。

    2. 按一下按鈕,即可新增所需的 Firebase 產品 (例如「Analytics 新增至應用程式」)。

  4. 同步處理應用程式,確保所有依附元件皆為必要的版本。

  5. 在「輔助程式」窗格中,按照所選 Firebase 產品的其餘設定說明操作。

  6. 您可以透過 Firebase 助理新增任意數量的其他 Firebase 產品!

這樣就可以了!請務必查看建議的後續步驟

不過,如果您在設定時遇到問題,請參閱 Android 疑難排解與常見問題



可用的程式庫

本節會列出 Android 支援的 Firebase 產品,以及這些產品的 Gradle 依附元件。進一步瞭解下列 Firebase Android 程式庫:

請注意,使用 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.7.0
AdMob com.google.android.gms:play-services-ads 23.6.0
Analytics com.google.firebase:firebase-analytics 22.1.2
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.0.0
Authentication com.google.firebase:firebase-auth 23.1.0
Cloud Firestore com.google.firebase:firebase-firestore 25.1.1
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.3.0
Crashlytics NDK com.google.firebase:firebase-crashlytics-ndk 19.3.0
Crashlytics 外掛程式 com.google.firebase:firebase-crashlytics-gradle 3.0.2
動態功能模組支援 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 多媒體 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.3
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.0.1
Vertex AI in Firebase com.google.firebase:firebase-vertexai 16.0.2
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
Analytics com.google.firebase:firebase-analytics-ktx 22.1.2
App Check 自訂供應器 com.google.firebase:firebase-appcheck-ktx 18.0.0
App Distribution API com.google.firebase:firebase-appdistribution-api-ktx 16.0.0-beta14
Authentication com.google.firebase:firebase-auth-ktx 23.1.0
Cloud Firestore com.google.firebase:firebase-firestore-ktx 25.1.1
Cloud Functions for Firebase Client SDK com.google.firebase:firebase-functions-ktx 21.1.0
Cloud Messaging com.google.firebase:firebase-messaging-ktx 24.1.0
Cloud Storage com.google.firebase:firebase-storage-ktx 21.0.1
Crashlytics com.google.firebase:firebase-crashlytics-ktx 19.3.0
Dynamic Links com.google.firebase:firebase-dynamic-links-ktx 22.1.0
In-App Messaging com.google.firebase:firebase-inappmessaging-ktx 21.0.1
(必要)
In-App Messaging 多媒體 com.google.firebase:firebase-inappmessaging-display-ktx 21.0.1
(必要)
Firebase 安裝次數 com.google.firebase:firebase-installations-ktx 18.0.0
Firebase ML Model Downloader API com.google.firebase:firebase-ml-modeldownloader-ktx 25.0.1
Performance Monitoring com.google.firebase:firebase-perf-ktx 21.0.3
Realtime Database com.google.firebase:firebase-database-ktx 21.0.0
Remote Config com.google.firebase:firebase-config-ktx 22.0.1
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 服務:

瞭解 Firebase: