Firebase Android SDK 用于 Kotlin:完整指南及示例

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

Firebase Android SDK 用于 Kotlin:完整指南及示例

\n\n

1. 这是什么以及为什么需要它

\n\n

Firebase Android SDK 是 Google 提供的一套强大工具,为开发者提供移动应用的现成服务器基础设施。您无需创建和维护自己的后端,即可使用 Firebase 进行用户认证、实时数据存储、推送通知发送、分析等。该库完全集成到 Android 生态系统中,并采用 Kotlin 编写,遵循所有现代开发实践。

\n\n

Firebase 的主要目标是加速应用开发,使团队无需编写复杂的服务器端代码。您将获得现成的 API,用于处理数据库(Cloud Firestore 和 Realtime Database)、云存储(Cloud Storage)、认证(Firebase Auth)、分析(Google Analytics for Firebase)甚至机器学习(ML Kit)。所有服务均可轻松扩展,无需管理服务器。

\n\n

对于 Kotlin 开发者,Firebase 提供完全类型化的 API,支持协程、Flow 及其他现代语言特性。这使得代码更安全、可读性更强且性能更高。该库被全球数百万应用使用,包括《纽约时报》、Duolingo 和 Shazam 等巨头。

\n\n

2. 安装

\n\n

Firebase Android SDK 通过 Gradle 依赖管理系统安装。与 pip 或 npm 不同,这里没有单一命令——您需要在项目文件中添加几行代码。

\n\n

步骤 1:添加 Google Services 插件

\n

在根目录的 build.gradle.kts 文件(项目级别)中添加:

\n
plugins {\n    id("com.google.gms.google-services") version "4.4.2" apply false\n}\n
\n\n

步骤 2:连接 Firebase BoM 和依赖项

\n

在应用模块(app)的 build.gradle.kts 文件中添加:

\n
plugins {\n    id("com.android.application")\n    id("org.jetbrains.kotlin.android")\n    id("com.google.gms.google-services")\n}\n\ndependencies {\n    // Firebase Bill of Materials — 管理版本\n    implementation(platform("com.google.firebase:firebase-bom:33.1.0"))\n    \n    // Firebase 核心模块\n    implementation("com.google.firebase:firebase-analytics")\n    implementation("com.google.firebase:firebase-auth")\n    implementation("com.google.firebase:firebase-firestore")\n    implementation("com.google.firebase:firebase-storage")\n    implementation("com.google.firebase:firebase-messaging")\n    implementation("com.google.firebase:firebase-config")\n}\n
\n\n

步骤 3:google-services.json 文件

\n

从 Firebase 控制台下载 google-services.json 文件,并将其放入项目的 app/ 文件夹中。此文件包含连接到您的 Firebase 项目所需的所有密钥和标识符。

\n\n

3. 快速入门——最小工作示例

\n\n

让我们创建一个简单的应用,用于在 Firebase Analytics 中记录屏幕打开事件。

\n\n
// MainActivity.kt\nimport android.os.Bundle\nimport androidx.appcompat.app.AppCompatActivity\nimport com.google.firebase.analytics.FirebaseAnalytics\nimport com.google.firebase.analytics.ktx.analytics\nimport com.google.firebase.ktx.Firebase\n\nclass MainActivity : AppCompatActivity() {\n    \n    private lateinit var firebaseAnalytics: FirebaseAnalytics\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        setContentView(R.layout.activity_main)\n        \n        // 初始化 Firebase Analytics\n        firebaseAnalytics = Firebase.analytics\n        \n        // 记录屏幕打开事件\n        val bundle = Bundle().apply {\n            putString(FirebaseAnalytics.Param.SCREEN_NAME,                    

推荐