先決條件
安裝或更新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 控制台新增 Firebase
將 Firebase 新增至您的應用程式涉及Firebase 控制台和開啟的 Android 專案中的任務(例如,您從控制台下載 Firebase 設定文件,然後將它們移至您的 Android 專案中)。
第 1 步:建立 Firebase 項目
在將 Firebase 新增至 Android 應用程式之前,您需要建立一個 Firebase 專案來連接到您的 Android 應用程式。請造訪了解 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 :Firebase 驗證(使用Google 登入或電話號碼登入時)和Firebase 動態連結需要SHA-1 雜湊。
點擊註冊應用程式。
第 3 步:新增 Firebase 設定文件
下載 Firebase Android 設定檔 (
) 並將其新增至您的應用程式:google-services.json 點擊下載 google-services.json以取得您的 Firebase Android 設定檔。
將設定檔移到應用程式的模組(應用程式層級)根目錄中。
Firebase 設定檔包含您的專案的唯一但非秘密的識別碼。要了解有關此設定檔的更多信息,請訪問了解 Firebase 專案。
您可以隨時再次下載Firebase 設定檔。
確保設定檔名未附加其他字符,例如
(2)
。
要讓 Firebase SDK 可以存取
設定檔中的值,您需要Google services Gradle 外掛程式(google-services.json google-services
)。在根級(專案級) Gradle 檔案(
<project>/build.gradle.kts
或<project>/build.gradle
)中,新增 Google 服務外掛程式作為依賴項:Kotlin
plugins { id("com.android.application") version "7.2.0" apply false // ... // Add the dependency for the Google services Gradle plugin id("com.google.gms.google-services") version "4.3.15" apply false }
Groovy
plugins { id 'com.android.application' version '7.2.0' apply false // ... // Add the dependency for the Google services Gradle plugin id 'com.google.gms.google-services' version '4.3.15' apply false }
在模組(應用程式層級) Gradle 檔案(通常
<project>/<app-module>/build.gradle.kts
或<project>/<app-module>/build.gradle
)中,新增 Google 服務外掛程式:Kotlin
plugins { id("com.android.application") // Add the Google services Gradle plugin id("com.google.gms.google-services") // ... }
Groovy
plugins { id 'com.android.application' // Add the Google services Gradle plugin id 'com.google.gms.google-services' // ... }
步驟 4 :將 Firebase SDK 新增到您的應用
在模組(應用程式等級)Gradle 檔案(通常為
<project>/build.gradle.kts
或<project>/build.gradle
)中,新增要在應用中使用的Firebase 產品的依賴項。我們建議使用Firebase Android BoM來控制函式庫版本控制。啟用分析
Kotlin+KTX
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:32.3.1")) // 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-ktx") // 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-ktx") implementation("com.google.firebase:firebase-firestore-ktx") }
Java
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:32.3.1")) // 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+KTX
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:32.3.1")) // 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-ktx") implementation("com.google.firebase:firebase-firestore-ktx") }
Java
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:32.3.1")) // 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 程式庫的相容版本。
在新增您要使用的產品的依賴項後,將您的 Android 專案與 Gradle 檔案同步。
使用 Android Gradle 外掛程式 (AGP) v4.2 或更早版本的 Gradle 建置需要啟用 Java 8 支援。否則,這些 Android 專案在新增 Firebase SDK 時會出現建置失敗。
要修復此建置失敗,您可以遵循以下兩個選項之一:
- 將錯誤訊息中列出的
compileOptions
新增至應用程式層級build.gradle.kts
或build.gradle
檔案中。 - 將 Android 專案的
minSdk
增加到 26 或更高。
在此常見問題中了解有關此建置失敗的更多資訊。
- 將錯誤訊息中列出的
就是這樣!您可以跳過以查看推薦的後續步驟。
不過,如果您在設定時遇到問題,請造訪Android 故障排除和常見問題。
選項 2 :使用 Firebase 助理新增 Firebase
Firebase 助理將您的應用程式註冊到 Firebase 項目,並將必要的 Firebase 檔案、插件和依賴項添加到您的 Android 項目中 - 所有這些都在 Android Studio 中完成!
在 Android Studio 中開啟您的 Android 項目,然後確保您使用的是最新版本的 Android Studio 和 Firebase Assistant:
- Windows / Linux:幫助 > 檢查更新
- macOS: Android Studio > 檢查更新
開啟 Firebase 助理:工具 > Firebase 。
在「助手」窗格中,選擇要新增至您的應用程式的 Firebase 產品。展開其部分,然後按一下教學連結(例如,
分析 > 記錄分析事件 )。按一下「連接到 Firebase」以將您的 Android 專案與 Firebase 連線。
此工作流程會使用您套用的套件名稱自動建立新的 Firebase Android 應用程式。您可以在現有 Firebase 專案或新專案中建立這個新的 Firebase Android 應用程式。
以下是有關設定 Firebase 專案的一些提示:
查看我們將應用程式新增至 Firebase 專案的最佳實踐,包括如何處理多個變體。
如果您建立新項目,我們強烈建議您為您的專案設定 Google Analytics,這使您能夠在使用許多 Firebase 產品時獲得最佳體驗。
此工作流程也會將 Firebase 專案的 Android 設定檔 (
) 新增至應用程式的模組(應用程式級)目錄。google-services.json
按一下按鈕以新增所需的 Firebase 產品(例如,
將 Analytics 新增至您的應用程式 )。
同步您的應用程式以確保所有依賴項都具有必要的版本。
在「助手」窗格中,請依照所選 Firebase 產品的其餘設定說明進行操作。
透過 Firebase 助理添加任意數量的其他 Firebase 產品!
就是這樣!請務必查看建議的後續步驟。
不過,如果您在設定時遇到問題,請造訪Android 故障排除和常見問題。
可用的庫
本部分列出了 Android 支援的 Firebase 產品及其 Gradle 相依性。詳細了解這些 Firebase Android 庫:
參考文件( Kotlin+KTX | Java )
Firebase Android SDK GitHub 儲存庫
請注意,使用Firebase Android BoM時,在 Gradle 建置設定檔中聲明 Firebase 庫依賴項時,無需指定各個程式庫版本。
Kotlin+KTX
服務或產品 | Gradle 依賴 | 最新的 版本 | 添加分析? | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Firebase Android BoM (材料清單) | com.google.firebase:firebase-bom 最新的 Firebase BoM 版本包含每個 Firebase Android 庫的最新版本。若要了解哪些程式庫版本對應到特定 BoM 版本,請查看該 BoM 版本的發行說明。 | 32.3.1 | |||||||||||||||||||||||||||||||||||||||||||||
AdMob | com.google.android.gms:播放服務廣告 | 22.4.0 | |||||||||||||||||||||||||||||||||||||||||||||
分析 | com.google.firebase:firebase-analytics-ktx | 21.3.0 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式檢查自訂提供者 | com.google.firebase:firebase-appcheck-ktx | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式檢查調試提供者 | com.google.firebase:firebase-appcheck-debug | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式檢查播放完整性提供者 | com.google.firebase:firebase-appcheck-playintegrity | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式分發 | com.google.firebase:firebase-appdistribution | 16.0.0-beta10 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式分發 API | com.google.firebase:firebase-appdistribution-api-ktx | 16.0.0-beta10 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式分發插件 | com.google.firebase:firebase-appdistribution-gradle | 4.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
驗證 | com.google.firebase:firebase-auth-ktx | 22.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
雲端Firestore | com.google.firebase:firebase-firestore-ktx | 24.8.1 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase 用戶端 SDK 的雲端函數 | com.google.firebase:firebase-functions-ktx | 20.3.1 | |||||||||||||||||||||||||||||||||||||||||||||
雲端訊息傳遞 | com.google.firebase:firebase-messaging-ktx | 23.2.1 | |||||||||||||||||||||||||||||||||||||||||||||
雲端儲存 | com.google.firebase:firebase-storage-ktx | 20.2.1 | |||||||||||||||||||||||||||||||||||||||||||||
崩潰解決方案 | com.google.firebase:firebase-crashlytics-ktx | 18.4.3 | |||||||||||||||||||||||||||||||||||||||||||||
Crashlytics NDK | com.google.firebase:firebase-crashlytics-ndk | 18.4.3 | |||||||||||||||||||||||||||||||||||||||||||||
Crashlytics 插件 | com.google.firebase:firebase-crashlytics-gradle | 2.9.9 | |||||||||||||||||||||||||||||||||||||||||||||
動態功能模組支持 | com.google.firebase:firebase-動態模組-支持 | 16.0.0-beta03 | |||||||||||||||||||||||||||||||||||||||||||||
動態連結 | com.google.firebase:firebase-動態連結-ktx | 21.1.0 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式內訊息傳遞 | com.google.firebase:firebase-inappmessaging-ktx | 20.3.5 | (必需的) | ||||||||||||||||||||||||||||||||||||||||||||
應用程式內訊息顯示 | com.google.firebase:firebase-inappmessaging-display-ktx | 20.3.5 | (必需的) | ||||||||||||||||||||||||||||||||||||||||||||
Firebase 安裝 | com.google.firebase:firebase-installations-ktx | 17.1.4 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase ML 模型下載器 API | com.google.firebase:firebase-ml-modeldownloader-ktx | 24.1.3 | |||||||||||||||||||||||||||||||||||||||||||||
效能監控 | com.google.firebase:firebase-perf-ktx | 20.4.1 | |||||||||||||||||||||||||||||||||||||||||||||
效能監控插件 | com.google.firebase:perf-plugin | 1.4.2 | |||||||||||||||||||||||||||||||||||||||||||||
即時資料庫 | com.google.firebase:firebase-database-ktx | 20.2.2 | |||||||||||||||||||||||||||||||||||||||||||||
遠端配置 | com.google.firebase:firebase-config-ktx | 21.4.1 | |||||||||||||||||||||||||||||||||||||||||||||
Google Play 服務插件 | com.google.gms:Google服務 | 4.3.15 | |||||||||||||||||||||||||||||||||||||||||||||
已棄用的函式庫 | |||||||||||||||||||||||||||||||||||||||||||||||
應用程式檢查 SafetyNet 供應商 | com.google.firebase:firebase-appcheck-safetynet | 16.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式索引 | com.google.firebase:firebase-appindexing | 20.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase ML Kit 函式庫
|
Java
服務或產品 | Gradle 依賴 | 最新的 版本 | 添加分析? | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Firebase Android BoM (材料清單) | com.google.firebase:firebase-bom 最新的 Firebase BoM 版本包含每個 Firebase Android 庫的最新版本。若要了解哪些程式庫版本對應到特定 BoM 版本,請查看該 BoM 版本的發行說明。 | 32.3.1 | |||||||||||||||||||||||||||||||||||||||||||||
AdMob | com.google.android.gms:播放服務廣告 | 22.4.0 | |||||||||||||||||||||||||||||||||||||||||||||
分析 | com.google.firebase:firebase-analytics | 21.3.0 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式檢查自訂提供者 | com.google.firebase:firebase-appcheck | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式檢查調試提供者 | com.google.firebase:firebase-appcheck-debug | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式檢查播放完整性提供者 | com.google.firebase:firebase-appcheck-playintegrity | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式分發 | com.google.firebase:firebase-appdistribution | 16.0.0-beta10 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式分發 API | com.google.firebase:firebase-appdistribution-api | 16.0.0-beta10 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式分發插件 | com.google.firebase:firebase-appdistribution-gradle | 4.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
驗證 | com.google.firebase:firebase-auth | 22.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
雲端Firestore | com.google.firebase:firebase-firestore | 24.8.1 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase 用戶端 SDK 的雲端函數 | com.google.firebase:firebase-functions | 20.3.1 | |||||||||||||||||||||||||||||||||||||||||||||
雲端訊息傳遞 | com.google.firebase:firebase-訊息傳遞 | 23.2.1 | |||||||||||||||||||||||||||||||||||||||||||||
雲端儲存 | com.google.firebase:firebase-存儲 | 20.2.1 | |||||||||||||||||||||||||||||||||||||||||||||
崩潰解決方案 | com.google.firebase:firebase-crashlytics | 18.4.3 | |||||||||||||||||||||||||||||||||||||||||||||
Crashlytics NDK | com.google.firebase:firebase-crashlytics-ndk | 18.4.3 | |||||||||||||||||||||||||||||||||||||||||||||
Crashlytics 插件 | com.google.firebase:firebase-crashlytics-gradle | 2.9.9 | |||||||||||||||||||||||||||||||||||||||||||||
動態功能模組支持 | com.google.firebase:firebase-動態模組-支持 | 16.0.0-beta03 | |||||||||||||||||||||||||||||||||||||||||||||
動態連結 | com.google.firebase:firebase-動態鏈接 | 21.1.0 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式內訊息傳遞 | com.google.firebase:firebase-inappmessaging | 20.3.5 | (必需的) | ||||||||||||||||||||||||||||||||||||||||||||
應用程式內訊息顯示 | com.google.firebase:firebase-inappmessaging-display | 20.3.5 | (必需的) | ||||||||||||||||||||||||||||||||||||||||||||
Firebase 安裝 | com.google.firebase:firebase-安裝 | 17.1.4 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase ML 模型下載器 API | com.google.firebase:firebase-ml-modeldownloader | 24.1.3 | |||||||||||||||||||||||||||||||||||||||||||||
效能監控 | com.google.firebase:firebase-perf | 20.4.1 | |||||||||||||||||||||||||||||||||||||||||||||
效能監控插件 | com.google.firebase:perf-plugin | 1.4.2 | |||||||||||||||||||||||||||||||||||||||||||||
即時資料庫 | com.google.firebase:firebase-資料庫 | 20.2.2 | |||||||||||||||||||||||||||||||||||||||||||||
遠端配置 | com.google.firebase:firebase-config | 21.4.1 | |||||||||||||||||||||||||||||||||||||||||||||
Google Play 服務插件 | com.google.gms:Google服務 | 4.3.15 | |||||||||||||||||||||||||||||||||||||||||||||
已棄用的函式庫 | |||||||||||||||||||||||||||||||||||||||||||||||
應用程式檢查 SafetyNet 供應商 | com.google.firebase:firebase-appcheck-safetynet | 16.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
應用程式索引 | com.google.firebase:firebase-appindexing | 20.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase ML Kit 函式庫
|
下一步
將 Firebase 服務新增至您的應用程式:
透過Analytics深入了解用戶行為。
使用Authentication設定使用者身份驗證流程。
使用Cloud Firestore或即時資料庫儲存數據,例如使用者資訊。
使用Cloud Storage儲存照片和影片等檔案。
使用Cloud Functions觸發在安全環境中執行的後端程式碼。
使用雲端訊息發送通知。
使用Crashlytics了解您的應用程式崩潰的時間和原因。
了解 Firebase:
造訪了解 Firebase 項目,詳細了解 Firebase 專案和專案最佳實務。
如果您對不熟悉或特定於 Firebase 和 Android 開發的概念有疑問,請造訪以了解有關 Android 和 Firebase 的更多資訊。
獲得Firebase Android Codelab的實務經驗。
透過週末課程了解 Firebase的更多資訊。
準備啟動您的應用程式:
- 在 Google Cloud Console 中為您的專案設定預算提醒。
- 監控 Firebase 控制台中的使用情況和計費資訊中心,全面了解專案在多個 Firebase 服務中的使用情況。
- 查看Firebase 啟動清單。
Firebase 和您的 Android 專案遇到問題嗎?請造訪Android 故障排除和常見問題。