Tìm hiểu về Firebase cho Android

Khi phát triển dự án Android bằng Firebase, có thể bạn sẽ nhận thấy các khái niệm chưa quen thuộc hoặc dành riêng cho Firebase. Trang này nhằm trả lời những câu hỏi đó hoặc chỉ cho bạn các tài nguyên để tìm hiểu thêm.

Nếu bạn có thắc mắc về một chủ đề không được đề cập trên trang này, vui lòng truy cập vào một trong những cộng đồng trực tuyến của chúng tôi. Chúng tôi cũng sẽ hãy cập nhật các chủ đề mới trên trang này theo định kỳ, nên hãy kiểm tra lại xem chúng tôi đã đã thêm chủ đề mà bạn muốn tìm hiểu!

Trình bổ trợ Trợ lý Firebase cho Android Studio

Trợ lý Firebase là một trình bổ trợ Android Studio giúp bạn đăng ký tài khoản Android một ứng dụng với một dự án Firebase và thêm các tệp cấu hình Firebase cần thiết, các trình bổ trợ và phần phụ thuộc vào dự án Android của bạn – tất cả đều có trong Android Studio!

Hãy làm theo hướng dẫn trong trang Bắt đầu của Android để sử dụng Trợ lý Firebase. Đảm bảo rằng bạn đang sử dụng những phiên bản mới nhất của cả Android Studio và Trợ lý Firebase (chuyển đến Tệp > Kiểm tra bản cập nhật).

Khi bạn chọn sản phẩm cụ thể trong Firebase để thêm vào ứng dụng, Firebase Trợ lý sẽ tự động khai báo các phần phụ thuộc bắt buộc trong Tệp app/build.gradle. Tuy nhiên, để sử dụng các tính năng của Firebase nằm ngoài khả năng hiện tại của Trợ lý Firebase, bạn nên thực hiện một số thay đổi đối với các phần phụ thuộc này:

  • Nếu bạn muốn sử dụng BoM Android của Firebase, hãy cập nhật các phần phụ thuộc trong tệp Gradle (cấp ứng dụng) của mô-đun (thường là app/build.gradle) để nhập nền tảng BoM. Bạn cũng cần xoá phiên bản khỏi mỗi Dòng phần phụ thuộc của thư viện Firebase.

  • Nếu bạn muốn sử dụng thư viện tiện ích Kotlin, hãy sửa đổi phần phụ thuộc thêm vào tệp Gradle mô-đun (cấp ứng dụng) (thường là app/build.gradle) để sử dụng phiên bản ktx của thư viện Firebase.

Các dịch vụ của Google – trình bổ trợ và tệp cấu hình

Trong quá trình thêm Firebase vào dự án Android, bạn cần thêm thuộc tính Trình bổ trợ google-services và một tệp cấu hình google-services.json để dự án của bạn.

Nếu bạn thêm Firebase vào dự án Android thông qua bảng điều khiển của Firebase, API REST Quản lý, hoặc Firebase CLI, bạn phải tự thêm trình bổ trợ và tệp cấu hình vào dự án. Tuy nhiên, nếu bạn sử dụng Trợ lý Firebase, những tác vụ này sẽ tự động được thực hiện cho bạn trong quá trình thiết lập.

Truy cập vào Tài liệu về Android để tìm hiểu về cách trình bổ trợ các dịch vụ của Google và tệp cấu hình hoạt động cùng nhau.

Bảng kê khai thành phần của Firebase Android (Bảng kê khai thành phần)

Bảng kê khai thành phần (Bảng kê khai thành phần) của Firebase Android cho phép bạn quản lý tất cả Các phiên bản thư viện Firebase bằng cách chỉ định một phiên bản — BoM .

Khi bạn sử dụng BoM của Firebase trong ứng dụng, BoM sẽ tự động lấy trong từng phiên bản thư viện được ánh xạ đến phiên bản của BoM. Tất cả tương thích với từng phiên bản thư viện. Khi bạn cập nhật BoM phiên bản trong ứng dụng của mình, thì tất cả các thư viện Firebase mà bạn sử dụng trong ứng dụng sẽ và các phiên bản được liên kết với phiên bản BoM đó.

Để tìm hiểu xem những phiên bản thư viện Firebase nào được liên kết với một BoM cụ thể phiên bản, hãy xem ghi chú phát hành cho phiên bản đó Phiên bản BoM. Nếu bạn cần so sánh các phiên bản thư viện đã liên kết với một phiên bản Phiên bản BoM so với một phiên bản BoM khác, hãy sử dụng tiện ích so sánh ở bên dưới.

Tìm hiểu thêm về sự hỗ trợ của Gradle cho các nền tảng BoM.

Sau đây là cách sử dụng BoM của Firebase trên Android để khai báo các phần phụ thuộc trong tệp Gradle mô-đun (cấp ứng dụng) (thường là app/build.gradle). Khi sử dụng BoM, bạn không chỉ định các phiên bản thư viện riêng lẻ trong các dòng phần phụ thuộc.

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:33.1.2')

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

Dưới đây là một số câu hỏi thường gặp về việc sử dụng BoM của Firebase cho Android:

So sánh các phiên bản BoM của Firebase

Mô-đun thư viện phần mở rộng Kotlin (KTX)

Các mô-đun thư viện tiện ích Kotlin của Firebase (KTX) là những thành phần đồng hành nhỏ với các mô-đun thư viện Firebase chính của bạn và bạn có thể sử dụng các mô-đun đó để viết các mô-đun bắt mắt mã Kotlin đặc trưng.

Để sử dụng mô-đun thư viện KTX trong ứng dụng, hãy thay đổi phần phụ thuộc để đưa vào Hậu tố -ktx. Mỗi mô-đun KTX tự động có một phần phụ thuộc trên mô-đun thư viện, nên bạn không cần đưa cả hai phần phụ thuộc vào ứng dụng.

dependencies {
  // Import the BoM for the Firebase platform (learn more)
  implementation platform('com.google.firebase:firebase-bom:33.1.2')

  // Declare the main module
  implementation 'com.google.firebase:firebase-analytics'

  // Declare the KTX module instead (which automatically has a dependency on the main module)
  implementation 'com.google.firebase:firebase-analytics-ktx'
}

Mỗi mô-đun KTX cung cấp các phần mở rộng cú pháp khác nhau của mô-đun chính. Ví dụ: mô-đun KTX của Analytics giúp bạn dễ dàng ghi lại các sự kiện:

Trước (sử dụng mô-đun chính)

val analytics = FirebaseAnalytics.getInstance();
val bundle = Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);

Sau (sử dụng mô-đun KTX)

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

Tất cả sản phẩm của Firebase đều cung cấp Mô-đun KTX ngoại trừ Lập chỉ mục ứng dụng và công nghệ học máy của Firebase.

Nếu bạn chưa xem, hãy xem Tài liệu tham khảo API cho các mô-đun KTX.

Mô-đun tính năng và Play Feature Delivery

Kể từ tháng 5 năm 2021 (Firebase BoM phiên bản 28.0.0), SDK Android của Firebase có thể được dùng trong các mô-đun tính năng động được cài đặt riêng biệt với cơ sở của bạn mô-đun ứng dụng.

Để bật tính năng hỗ trợ cho các mô-đun tính năng linh hoạt, hãy thêm phần phụ thuộc sau vào tệp build.gradle của mô-đun cơ sở:

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta03'
}

Giờ đây, bạn đã thêm tính năng hỗ trợ mô-đun động, bạn có thể thêm Firebase SDK các phần phụ thuộc (có hoặc không có Firebase BoM) để làm nổi bật các mô-đun của và sử dụng chúng như bình thường.

Ví dụ: nếu ứng dụng của bạn sử dụng Cơ sở dữ liệu theo thời gian thực để cung cấp dữ liệu theo thời gian thực cụ thể Bạn có thể thêm phần phụ thuộc firebase-database vào build.gradle của mô-đun tính năng thay vì mô-đun cơ sở. Thao tác này sẽ giảm số lượt tải xuống cho hầu hết người dùng.

Hãy lưu ý những điểm cần lưu ý sau đây khi sử dụng Firebase SDK trong các mô-đun tính năng:

  • Các sản phẩm như Đường liên kết động hoặc Giải pháp gửi thông báo trong ứng dụng của Firebase dựa vào Analytics Sự kiện first_open có thể bỏ lỡ sự kiện này khi được dùng trong một mô-đun tính năng linh hoạt.

  • Khi sử dụng Cloud Firestore và Xác thực cùng lúc, bạn phải luôn thêm chúng cả hai trong cùng một mô-đun. Nếu không thể thực hiện việc này, hãy đảm bảo rằng được tải trước Cloud Firestore; nếu không, một số hoạt động của Cloud Firestore có thể có trạng thái xác thực không chính xác.

  • Khi sử dụng firebase-crashlytics-ndk làm phần phụ thuộc của tính năng động bạn cần đặt thuộc tính unstrippedNativeLibsDir trong build.gradle, như được mô tả trong Tài liệu về Crashlytics NDK.

Để biết thêm thông tin về mô-đun tính năng và Play Feature Delivery, hãy truy cập vào Tổng quan về Play Feature Delivery.

Trình bổ trợ Gradle cho các dịch vụ của Google so với Dịch vụ Google Play và Cửa hàng Google Play

Một số phần trong hệ sinh thái của Google, Firebase và Android có điểm tương đồng quy ước đặt tên. Dưới đây là nội dung giải thích ngắn gọn cho từng chế độ:

Trình bổ trợ Gradle cho các dịch vụ của Google
Trình bổ trợ Gradle (com.google.gms.google-services) chạy trong thời gian xây dựng để đảm bảo ứng dụng của bạn có cấu hình phù hợp để truy cập vào Firebase và Google API
Trình bổ trợ này không liên quan đến Dịch vụ Google Play (xem tên của chính sách này) mục tiếp theo) và không ảnh hưởng đến các chức năng của ứng dụng trong thời gian chạy.
Trình bổ trợ này cũng xử lý tệp google-services.json mà bạn thêm vào ứng dụng của bạn như một phần của quá trình thiết lập Firebase. Tìm hiểu thêm về chính sách Trình bổ trợ Gradle cho các dịch vụ của Google.
Dịch vụ Google Play
Một dịch vụ nền ẩn chạy trên thiết bị Android và cung cấp một số API phổ biến của Google (như Google Maps và Đăng nhập bằng Google) cho các ứng dụng trên thiết bị
Bằng cách tập trung các API phổ biến này vào một dịch vụ duy nhất, giúp giảm dung lượng của các ứng dụng khác cũng như cho phép thiết bị nhận các bản cập nhật bảo mật tự động và các tính năng nâng cao mà không cần cập nhật hệ điều hành. Tìm hiểu thêm về Dịch vụ Google Play.
Cửa hàng Google Play
Một cửa hàng để tải ứng dụng, phim, sách và nhiều nội dung khác xuống thiết bị Android
Là nhà phát triển, bạn quản lý hoạt động phân phối, bản phát hành, v.v. cho ứng dụng của mình thông qua Google Play Console. Nếu thiết bị có Cửa hàng Google Play, chạy Dịch vụ Google Play (xem mục trước). Tìm hiểu thêm về chính sách Cửa hàng Google Play dành cho nhà phát triển.
Google Play Games services
Một bộ API dành cho nhà phát triển trò chơi di động
Tìm hiểu thêm về Dịch vụ trò chơi của Google Play và cách tích hợp Firebase với dự án có sử dụng Dịch vụ trò chơi của Google Play.

Tài nguyên nguồn mở dành cho SDK Android của Firebase

Firebase hỗ trợ phát triển nguồn mở và chúng tôi khuyến khích cộng đồng nội dung đóng góp và ý kiến phản hồi.

SDK Android của Firebase

Hầu hết các SDK Android của Firebase đều được phát triển dưới dạng thư viện nguồn mở trong Kho lưu trữ Firebase của Firebase. Chúng tôi đang tích cực chuyển các Firebase còn lại được phát triển riêng tư thư viện lên GitHub công khai!

Bắt đầu nhanh về mẫu

Firebase duy trì một tập hợp các mẫu bắt đầu nhanh cho hầu hết các API Firebase trên Android. Tìm những phần bắt đầu nhanh này trong cộng đồng Kho lưu trữ khởi động nhanh Firebase GitHub.

Bạn có thể mở từng tính năng khởi động nhanh dưới dạng một dự án Android Studio, sau đó chạy các dự án đó trên thiết bị di động hoặc thiết bị ảo (AVD). Hoặc bạn có thể sử dụng các bước bắt đầu nhanh này như mã ví dụ để sử dụng Firebase SDK.

Chủ đề quan tâm khác