先決條件
安裝或更新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 服務 Gradle 插件(google-services.json google-services
)。在根級(項目級) Gradle 文件 (
<project>/build.gradle
) 中,將 Google 服務插件添加為構建腳本依賴項:buildscript { repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } dependencies { ... // Add the dependency for the Google services Gradle plugin classpath 'com.google.gms:google-services:4.3.15' } } allprojects { ... repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } }
在您的模塊(應用程序級別) Gradle 文件(通常是
<project>/<app-module>/build.gradle
)中,添加 Google 服務插件: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
)中,添加您要在應用程序中使用的Firebase 產品的依賴項。我們建議使用Firebase Android BoM來控制庫版本。啟用分析
Kotlin+KTX
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:32.1.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-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.1.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+KTX
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:32.1.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-ktx' implementation 'com.google.firebase:firebase-firestore-ktx' }
Java
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:32.1.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 庫。
添加您要使用的產品的依賴項後,將您的 Android 項目與 Gradle 文件同步。
使用 Android Gradle 插件 (AGP) v4.2 或更早版本的 Gradle 構建需要啟用 Java 8 支持。否則,這些 Android 項目在添加 Firebase SDK 時會出現構建失敗。
要修復此構建失敗,您可以遵循以下兩個選項之一:
- 將錯誤消息中列出的
compileOptions
添加到您的應用程序級build.gradle
文件中。 - 將 Android 項目的
minSdkVersion
增加到 26 或更高。
在此常見問題解答中了解有關此構建失敗的更多信息。
- 將錯誤消息中列出的
就是這樣!您可以向前跳到查看建議的後續步驟。
不過,如果您在設置時遇到問題,請訪問Android 故障排除和常見問題解答。
選項 2 :使用 Firebase 助手添加 Firebase
Firebase 助手將您的應用程序註冊到 Firebase 項目,並將必要的 Firebase 文件、插件和依賴項添加到您的 Android 項目——所有這些都在 Android Studio 中完成!
在 Android Studio 中打開您的 Android 項目,然後確保您使用的是最新版本的 Android Studio 和 Firebase 助手:
- Windows / Linux:幫助 > 檢查更新
- macOS: Android Studio > 檢查更新
打開 Firebase 助手:工具 > Firebase 。
在“助手”窗格中,選擇要添加到您的應用程序的 Firebase 產品。展開其部分,然後單擊教程鏈接(例如,
Analytics > Log an Analytics event )。單擊連接到 Firebase以將您的 Android 項目連接到 Firebase。
此工作流程會使用您的應用程序包名稱自動創建一個新的 Firebase Android 應用程序。您可以在現有 Firebase 項目或新項目中創建這個新的 Firebase Android 應用程序。
以下是有關設置 Firebase 項目的一些提示:
查看我們將應用程序添加到 Firebase 項目的最佳實踐,包括如何處理多個變體。
如果您創建一個新項目,我們強烈建議您為您的項目設置 Google Analytics,這使您能夠在使用許多 Firebase 產品時獲得最佳體驗。
此工作流還將您的 Firebase 項目的 Android 配置文件 (
) 添加到您應用的模塊(應用級)目錄中。google-services.json
單擊按鈕添加所需的 Firebase 產品(例如,
將分析添加到您的應用程序 )。
同步您的應用程序以確保所有依賴項都具有必要的版本。
在“助手”窗格中,按照所選 Firebase 產品的其餘設置說明進行操作。
通過 Firebase 助手添加任意數量的其他 Firebase 產品!
就是這樣!請務必查看推薦的後續步驟。
不過,如果您在設置時遇到問題,請訪問Android 故障排除和常見問題解答。
可用庫
本部分列出了 Android 支持的 Firebase 產品及其 Gradle 依賴項。詳細了解這些 Firebase Android 庫:
參考文檔( Kotlin+KTX | Java )
Firebase Android SDK GitHub 回購
請注意,使用Firebase Android BoM時,您在build.gradle
中聲明 Firebase 庫依賴項時無需指定各個庫版本。
Kotlin+KTX
服務或產品 | 搖籃依賴 | 最新的 版本 | 添加分析? | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Firebase Android 物料清單 (材料清單) | com.google.firebase:firebase-bom 最新的 Firebase BoM 版本包含每個 Firebase Android 庫的最新版本。要了解哪些庫版本映射到特定的 BoM 版本,請查看該 BoM 版本的發行說明。 | 32.1.0 | |||||||||||||||||||||||||||||||||||||||||||||
AdMob | com.google.android.gms:play-services-ads | 22.1.0 | |||||||||||||||||||||||||||||||||||||||||||||
分析 | com.google.firebase:firebase-analytics-ktx | 21.3.0 | |||||||||||||||||||||||||||||||||||||||||||||
App Check 自定義提供商 | com.google.firebase:firebase-appcheck-ktx | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
App Check 調試提供程序 | com.google.firebase:firebase-appcheck-debug | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
App Check Play 完整性提供商 | com.google.firebase:firebase-appcheck-playintegrity | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
應用分發 | com.google.firebase:firebase-appdistribution | 16.0.0-beta08 | |||||||||||||||||||||||||||||||||||||||||||||
應用程序分發 API | com.google.firebase:firebase-appdistribution-api-ktx | 16.0.0-beta08 | |||||||||||||||||||||||||||||||||||||||||||||
應用分發插件 | com.google.firebase:firebase-appdistribution-gradle | 4.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
驗證 | com.google.firebase:firebase-auth-ktx | 22.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
雲端 Firestore | com.google.firebase:firebase-firestore-ktx | 24.6.1 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase 客戶端 SDK 的雲函數 | com.google.firebase:firebase-functions-ktx | 20.3.1 | |||||||||||||||||||||||||||||||||||||||||||||
雲消息 | com.google.firebase:firebase-消息-ktx | 23.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
雲儲存 | com.google.firebase:firebase-storage-ktx | 20.2.0 | |||||||||||||||||||||||||||||||||||||||||||||
崩潰分析 | com.google.firebase:firebase-crashlytics-ktx | 18.3.7 | |||||||||||||||||||||||||||||||||||||||||||||
Crashlytics NDK | com.google.firebase:firebase-crashlytics-ndk | 18.3.7 | |||||||||||||||||||||||||||||||||||||||||||||
Crashlytics 插件 | com.google.firebase:firebase-crashlytics-gradle | 2.9.5 | |||||||||||||||||||||||||||||||||||||||||||||
動態特性模塊支持 | com.google.firebase:firebase 動態模塊支持 | 16.0.0-beta03 | |||||||||||||||||||||||||||||||||||||||||||||
動態鏈接 | com.google.firebase:firebase-動態鏈接-ktx | 21.1.0 | |||||||||||||||||||||||||||||||||||||||||||||
應用內消息 | com.google.firebase:firebase-inappmessaging-ktx | 20.3.2 | (必需的) | ||||||||||||||||||||||||||||||||||||||||||||
應用內消息顯示 | com.google.firebase:firebase-inappmessaging-display-ktx | 20.3.2 | (必需的) | ||||||||||||||||||||||||||||||||||||||||||||
Firebase 安裝 | com.google.firebase:firebase-安裝-ktx | 17.1.3 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase ML 模型下載器 API | com.google.firebase:firebase-ml-modeldownloader-ktx | 24.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
性能監控 | com.google.firebase:firebase-perf-ktx | 20.3.2 | |||||||||||||||||||||||||||||||||||||||||||||
性能監控插件 | com.google.firebase:性能插件 | 1.4.2 | |||||||||||||||||||||||||||||||||||||||||||||
實時數據庫 | com.google.firebase:firebase-數據庫-ktx | 20.2.2 | |||||||||||||||||||||||||||||||||||||||||||||
遠程配置 | com.google.firebase:firebase-config-ktx | 21.4.0 | |||||||||||||||||||||||||||||||||||||||||||||
Google Play 服務插件 | com.google.gms:google 服務 | 4.3.15 | |||||||||||||||||||||||||||||||||||||||||||||
棄用的庫 | |||||||||||||||||||||||||||||||||||||||||||||||
App Check SafetyNet 提供商 | com.google.firebase:firebase-appcheck-safetynet | 16.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
應用索引 | com.google.firebase:firebase-appindexing | 20.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase 機器學習套件庫
|
Java
服務或產品 | 搖籃依賴 | 最新的 版本 | 添加分析? | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Firebase Android 物料清單 (材料清單) | com.google.firebase:firebase-bom 最新的 Firebase BoM 版本包含每個 Firebase Android 庫的最新版本。要了解哪些庫版本映射到特定的 BoM 版本,請查看該 BoM 版本的發行說明。 | 32.1.0 | |||||||||||||||||||||||||||||||||||||||||||||
AdMob | com.google.android.gms:play-services-ads | 22.1.0 | |||||||||||||||||||||||||||||||||||||||||||||
分析 | com.google.firebase:firebase 分析 | 21.3.0 | |||||||||||||||||||||||||||||||||||||||||||||
App Check 自定義提供商 | com.google.firebase:firebase-appcheck | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
App Check 調試提供程序 | com.google.firebase:firebase-appcheck-debug | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
App Check Play 完整性提供商 | com.google.firebase:firebase-appcheck-playintegrity | 17.0.1 | |||||||||||||||||||||||||||||||||||||||||||||
應用分發 | com.google.firebase:firebase-appdistribution | 16.0.0-beta08 | |||||||||||||||||||||||||||||||||||||||||||||
應用程序分發 API | com.google.firebase:firebase-appdistribution-api | 16.0.0-beta08 | |||||||||||||||||||||||||||||||||||||||||||||
應用分發插件 | com.google.firebase:firebase-appdistribution-gradle | 4.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
驗證 | com.google.firebase:firebase-auth | 22.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
雲端 Firestore | com.google.firebase:firebase-firestore | 24.6.1 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase 客戶端 SDK 的雲函數 | com.google.firebase:firebase 函數 | 20.3.1 | |||||||||||||||||||||||||||||||||||||||||||||
雲消息 | com.google.firebase:firebase 消息 | 23.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
雲儲存 | com.google.firebase:firebase 存儲 | 20.2.0 | |||||||||||||||||||||||||||||||||||||||||||||
崩潰分析 | com.google.firebase:firebase-crashlytics | 18.3.7 | |||||||||||||||||||||||||||||||||||||||||||||
Crashlytics NDK | com.google.firebase:firebase-crashlytics-ndk | 18.3.7 | |||||||||||||||||||||||||||||||||||||||||||||
Crashlytics 插件 | com.google.firebase:firebase-crashlytics-gradle | 2.9.5 | |||||||||||||||||||||||||||||||||||||||||||||
動態特性模塊支持 | com.google.firebase:firebase 動態模塊支持 | 16.0.0-beta03 | |||||||||||||||||||||||||||||||||||||||||||||
動態鏈接 | com.google.firebase:firebase 動態鏈接 | 21.1.0 | |||||||||||||||||||||||||||||||||||||||||||||
應用內消息 | com.google.firebase:firebase-inappmessaging | 20.3.2 | (必需的) | ||||||||||||||||||||||||||||||||||||||||||||
應用內消息顯示 | com.google.firebase:firebase-inappmessaging-display | 20.3.2 | (必需的) | ||||||||||||||||||||||||||||||||||||||||||||
Firebase 安裝 | com.google.firebase:firebase 安裝 | 17.1.3 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase ML 模型下載器 API | com.google.firebase:firebase-ml-modeldownloader | 24.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
性能監控 | com.google.firebase:firebase-perf | 20.3.2 | |||||||||||||||||||||||||||||||||||||||||||||
性能監控插件 | com.google.firebase:性能插件 | 1.4.2 | |||||||||||||||||||||||||||||||||||||||||||||
實時數據庫 | com.google.firebase:firebase 數據庫 | 20.2.2 | |||||||||||||||||||||||||||||||||||||||||||||
遠程配置 | com.google.firebase:firebase 配置 | 21.4.0 | |||||||||||||||||||||||||||||||||||||||||||||
Google Play 服務插件 | com.google.gms:google 服務 | 4.3.15 | |||||||||||||||||||||||||||||||||||||||||||||
棄用的庫 | |||||||||||||||||||||||||||||||||||||||||||||||
App Check SafetyNet 提供商 | com.google.firebase:firebase-appcheck-safetynet | 16.1.2 | |||||||||||||||||||||||||||||||||||||||||||||
應用索引 | com.google.firebase:firebase-appindexing | 20.0.0 | |||||||||||||||||||||||||||||||||||||||||||||
Firebase 機器學習套件庫
|
下一步
將 Firebase 服務添加到您的應用:
使用Analytics深入了解用戶行為。
使用Authentication設置用戶身份驗證流程。
使用Cloud Firestore或實時數據庫存儲用戶信息等數據。
使用Cloud Storage存儲照片和視頻等文件。
使用Cloud Functions觸發在安全環境中運行的後端代碼。
使用Cloud Messaging發送通知。
使用Crashlytics了解您的應用崩潰的時間和原因。
了解 Firebase:
訪問了解 Firebase 項目以了解有關 Firebase 項目和項目最佳實踐的更多信息。
如果您對 Firebase 和 Android 開發不熟悉或特定的概念有疑問,請訪問了解有關 Android 和 Firebase 的更多信息。
親身體驗Firebase Android Codelab 。
通過週末課程中的 Firebase了解更多信息。
準備啟動您的應用程序:
- 在 Google Cloud Console 中為您的項目設置預算提醒。
- 監控 Firebase 控制台中的使用情況和計費儀表板,以全面了解您的項目在多個 Firebase 服務中的使用情況。
- 查看Firebase 啟動清單。
在使用 Firebase 和您的 Android 項目時遇到問題?訪問Android 故障排除和常見問題解答。