前提条件
安装最新版本的 Android Studio,或将其更新为最新版本。
确保您的项目满足以下要求:
- 目标 API 级别为 19 (KitKat) 或更高
- 使用 Android 4.4 或更高版本
- 使用 Jetpack (AndroidX),这需要满足以下版本要求:
com.android.tools.build:gradle
3.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 项目
您需要先创建一个要关联到 Android 应用的 Firebase 项目,然后才能将 Firebase 添加到您的 Android 应用。请访问了解 Firebase 项目以了解详情。
第 2 步:在 Firebase 中注册您的应用
如需在 Android 应用中使用 Firebase,您需要向 Firebase 项目注册您的应用。注册应用的过程通常称为将应用“添加”到项目中。
前往 Firebase 控制台。
在项目概览页面的中心位置,点击 Android 图标 (
) 或添加应用,启动设置工作流。在 Android 软件包名称字段中输入应用的软件包名称。
(可选)输入其他应用信息:应用别名和调试签名证书 SHA-1。
点击注册应用。
第 3 步:添加 Firebase 配置文件
将 Firebase Android 配置文件添加到您的应用:
点击下载 google-services.json,获取 Firebase Android 配置文件 (
)。google-services.json 将配置文件移动到应用的模块(应用级)目录中。
如需在应用中启用 Firebase 产品,请将 google-services 插件添加到 Gradle 文件中。
在根级(项目级)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
)中声明这些依赖项。已启用 Analytics
Java
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:30.1.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.1.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 库的兼容版本。
未启用 Analytics
Java
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:30.1.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.1.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 项目中注册您的应用,并将必要的 Firebase 文件、插件和依赖项添加到您的 Android 项目中 - 这一切都在 Android Studio 中完成!
在 Android Studio 中打开您的 Android 项目,然后确保您使用的是最新版 Android Studio 和 Firebase Assistant:
- Windows/Linux:帮助 > 检查更新
- macOS:Android Studio > 检查更新
打开 Firebase Assistant:工具 > Firebase。
在 Assistant 窗格中,选择要添加到应用的 Firebase 产品。展开该产品部分,然后点击教程链接(例如
Analytics > Log an Analytics event )。点击 Connect to Firebase,将您的 Android 项目与 Firebase 连接。
点击按钮以添加希望使用的 Firebase 产品(例如,
将 Analytics 添加到您的应用 )。
同步您的应用以确保所有依赖项都具有所需的版本。
在 Assistant 窗格中,按照所选 Firebase 产品的其余设置说明进行操作。
通过 Firebase Assistant 添加任意数量的其他 Firebase 产品。
大功告成!请务必查看建议的后续步骤。
如果您在设置时遇到问题,请参阅 Android 问题排查和常见问题解答。
可用的库
本部分列出了 Android 支持的 Firebase 产品及其 Gradle 依赖项。详细了解以下 Firebase Android 库:
参考文档 (Java | Kotlin+KTX)
Firebase Android SDK GitHub 代码库
请注意,如果使用 Firebase Android BoM,在 build.gradle
中声明 Firebase 库依赖项时,您无需指定具体的库版本。
Java
服务或产品 | Gradle 依赖项 | 最新 版本 |
添加 Analytics? |
---|---|---|---|
Firebase Android BoM (资料清单) |
com.google.firebase:firebase-bom
最新版 Firebase BoM 包含每个 Firebase Android 库的最新版本。如需了解特定的 BoM 版本对应哪些库版本,请查看该 BoM 版本的说明。 |
30.1.0 | |
AdMob | com.google.android.gms:play-services-ads | 21.0.0 | |
Analytics | 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 Play Integrity 提供程序 | com.google.firebase:firebase-appcheck-playintegrity | 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-beta03 | |
App Distribution API | com.google.firebase:firebase-appdistribution-api | 16.0.0-beta03 | |
App Distribution 插件 | com.google.firebase:firebase-appdistribution-gradle | 3.0.2 | |
Authentication | com.google.firebase:firebase-auth | 21.0.5 | |
Cloud Firestore | com.google.firebase:firebase-firestore | 24.1.2 | |
Cloud Functions for Firebase 客户端 SDK | com.google.firebase:firebase-functions | 20.1.0 | |
Cloud Messaging | com.google.firebase:firebase-messaging | 23.0.5 | |
Cloud Storage | com.google.firebase:firebase-storage | 20.0.1 | |
Crashlytics | com.google.firebase:firebase-crashlytics | 18.2.11 | |
Crashlytics NDK | com.google.firebase:firebase-crashlytics-ndk | 18.2.11 | |
Crashlytics 插件 | com.google.firebase:firebase-crashlytics-gradle | 2.9.0 | |
动态功能模块支持 | 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.1.0 | |
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 Custom Model 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 依赖项 | 最新 版本 |
添加 Analytics? |
---|---|---|---|
Firebase Android BoM (资料清单) |
com.google.firebase:firebase-bom
最新版 Firebase BoM 包含每个 Firebase Android 库的最新版本。如需了解特定的 BoM 版本对应哪些库版本,请查看该 BoM 版本的说明。 |
30.1.0 | |
AdMob | com.google.android.gms:play-services-ads | 21.0.0 | |
Analytics | 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 API | com.google.firebase:firebase-appdistribution-api-ktx | 16.0.0-beta03 | |
App Distribution 插件 | com.google.firebase:firebase-appdistribution-gradle | 3.0.2 | |
Authentication | com.google.firebase:firebase-auth-ktx | 21.0.5 | |
Cloud Firestore | com.google.firebase:firebase-firestore-ktx | 24.1.2 | |
Cloud Functions for Firebase 客户端 SDK | com.google.firebase:firebase-functions-ktx | 20.1.0 | |
Cloud Messaging | com.google.firebase:firebase-messaging-ktx | 23.0.5 | |
Cloud Storage | com.google.firebase:firebase-storage-ktx | 20.0.1 | |
Crashlytics | com.google.firebase:firebase-crashlytics-ktx | 18.2.11 | |
Crashlytics NDK | com.google.firebase:firebase-crashlytics-ndk | 18.2.11 | |
Crashlytics 插件 | com.google.firebase:firebase-crashlytics-gradle | 2.9.0 | |
动态功能模块支持 | 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.1.0 | |
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 Custom Model 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 服务添加到您的应用:
借助 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 课程,加深对 Firebase 的了解。
准备启动您的应用:
- 在 Google Cloud 控制台中为您的项目设置预算提醒。
- 在 Firebase 控制台中监控“使用量和结算”信息中心,以全面了解您的项目在多个 Firebase 服务中的使用情况。
- 查看 Firebase 发布核对清单。
在使用 Firebase 和 Android 项目时遇到问题? 请参阅 Android 问题排查和常见问题解答。