Tìm hiểu thêm về Android và Firebase

Khi bạn đang phát triển dự án Android của mình bằng Firebase, bạn có thể khám phá các khái niệm không quen thuộc hoặc cụ thể đối với Firebase. Trang này nhằm mục đích 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ó câu hỏi về một chủ đề không được đề cập trên trang này, vui lòng truy cập một trong các cộng đồng trực tuyến của chúng tôi. Chúng tôi cũng sẽ cập nhật trang này với các chủ đề mới theo định kỳ, vì vậy hãy kiểm tra lại để xem chúng tôi đã thêm chủ đề mà bạn muốn tìm hiểu chưa!

Plugin Trợ lý Firebase dành cho Android Studio

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

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

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

  • Nếu bạn muốn sử dụng Firebase Android BoM , hãy cập nhật các thành phần phụ thuộc trong tệp Gradle mô-đun (cấp ứng dụng) của bạn (thường là app/build.gradle ) để nhập nền tảng BoM. Bạn cũng cần xóa các phiên bản khỏi từng dòng 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 dòng phụ thuộc được thêm vào tệp Gradle mô-đun (cấp ứng dụng) của bạn (thường là app/build.gradle ) để sử dụng phiên bản ktx của thư viện Firebase thay thế.

Các dịch vụ của Google — plugin và tệp cấu hình

Là một phần của việc thêm Firebase vào dự án Android của bạn, bạn cần thêm plugin google-services và tệp cấu hình google-services.json vào dự án của mình.

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

Hãy truy cập vào tài liệu Android để tìm hiểu về cách plugin dịch vụ của Google và tệp cấu hình hoạt động cùng nhau.

Firebase Android BoM (Hóa đơn vật liệu)

Firebase Android BoM (Bill of Materials) cho phép bạn quản lý tất cả các phiên bản thư viện Firebase của mình bằng cách chỉ định một phiên bản — phiên bản của BoM.

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

Để biết phiên bản thư viện Firebase nào được ánh xạ tới một phiên bản BoM cụ thể, hãy xem ghi chú phát hành cho phiên bản BoM đó. Nếu bạn cần so sánh các phiên bản thư viện được ánh xạ tới một phiên bản BoM này 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ề hỗ trợ của Gradle cho các nền tảng BoM .

Dưới đây là cách sử dụng Firebase Android BoM để khai báo các thành phần phụ thuộc trong tệp Gradle mô-đun (cấp ứng dụng) của bạn (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ụ thuộc.

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

  // 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 Firebase Android BoM:

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

Thư viện tiện ích mở rộng Kotlin (KTX)

Thư viện phần mở rộng Firebase Kotlin (KTX) là những người bạn đồng hành nhỏ với SDK Firebase cơ sở cho phép bạn viết mã Kotlin đẹp và đặc trưng.

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

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

  // Declare the base library
  implementation 'com.google.firebase:firebase-analytics'

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

Mỗi thư viện KTX cung cấp các phần mở rộng cú pháp khác nhau của thư viện cơ sở. Ví dụ: thư viện Analytics KTX giúp ghi lại các sự kiện đơn giản hơn:

Trước (sử dụng thư viện cơ sở)

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 (dùng thư viện KTX thay thế)

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ả các sản phẩm Firebase đều cung cấp thư viện KTX ngoại trừ Firebase ML và Lập chỉ mục ứng dụng.

Nếu bạn chưa có, hãy xem tài liệu tham khảo API cho các thư viện KTX.

Mô-đun tính năng và Phân phối tính năng Play

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

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

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

Giờ đây, bạn đã thêm hỗ trợ mô-đun động, bạn có thể thêm phần phụ thuộc SDK Firebase (có hoặc không có Firebase BoM) để làm nổi bật các mô-đun của ứng dụng 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 thời gian thực để cung cấp năng lượng cho một tính năng 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ở. Điều này sẽ giảm kích thước tải xuống cho hầu hết người dùng.

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

  • Các sản phẩm như Liên kết động hoặc Nhắn tin trong ứng dụng Firebase dựa trên sự kiện first_open của Analytics có thể bỏ lỡ sự kiện này khi được sử dụng trong mô-đun tính năng động.

  • Khi sử dụng Cloud Firestore và Xác thực cùng nhau, bạn phải luôn bao gồm cả hai trong cùng một mô-đun. Nếu điều này là không thể, thì hãy đảm bảo rằng Xác thực đượ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 mô-đun tính năng động, bạn cần đặt thuộc tính unstrippedNativeLibsDir trong tệp build.gradle của ứng dụng, như được mô tả trong tài liệu Crashlytics NDK .

Để biết thêm thông tin về các mô-đun tính năng và Phân phối tính năng của Play, hãy truy cập Tổng quan về Phân phối tính năng của Play .

Các dịch vụ của Google Plugin Gradle so với các dịch vụ của Google Play so với Cửa hàng Google Play

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

Các dịch vụ của Google plugin Gradle
Plugin Gradle ( com.google.gms.google-services ) chạy trong thời gian xây dựng để đảm bảo rằng ứng dụng của bạn có cấu hình phù hợp để truy cập Firebase và Google API
Mặc dù tên của nó, plugin này không liên quan đến các dịch vụ của Google Play (xem mục tiếp theo) và không ảnh hưởng đến khả năng của ứng dụng của bạn khi chạy.
Plugin này cũng xử lý tệp google-services.json mà bạn thêm vào ứng dụng của mình như một phần của quá trình thiết lập Firebase. Tìm hiểu thêm về plugin Gradle dịch vụ của Google .
Dịch vụ của Google Play
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, nó sẽ giảm kích thước của các ứng dụng khác và cho phép thiết bị nhận các bản cập nhật bảo mật tự động cũng như tính năng cải tiến mà không cần cập nhật hệ điều hành. Tìm hiểu thêm về các dịch vụ của Google Play .
Cửa hàng Google Play
Cửa hàng để tải xuống ứng dụng, phim, sách và hơn thế nữa trên thiết bị Android
Là nhà phát triển, bạn quản lý việc phân phối, phát hành, v.v. cho ứng dụng của mình thông qua Google Play Console. Nếu một thiết bị có Cửa hàng Google Play, thì thiết bị đó cũng đang chạy các dịch vụ của Google Play (xem mục trước). Tìm hiểu thêm về Cửa hàng Google Play dành cho nhà phát triển .
Dịch vụ trò chơi của Google Play
Bộ API dành cho nhà phát triển game di động
Tìm hiểu thêm về các dịch vụ Google Play Trò chơi và cách tích hợp Firebase với dự án dịch vụ Google Play Trò chơi của bạn .

Tài nguyên mã nguồn mở cho SDK Android Firebase

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

SDK Android Firebase

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

mẫu bắt đầu nhanh

Firebase duy trì một bộ sưu tập các mẫu bắt đầu nhanh cho hầu hết API Firebase trên Android. Tìm các phần khởi động nhanh này trong kho lưu trữ khởi động nhanh Firebase GitHub công khai của chúng tôi.

Bạn có thể mở từng phần khởi động nhanh dưới dạng dự án Android Studio, sau đó chạy chúng 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 làm mã ví dụ để sử dụng SDK Firebase.

Các chủ đề quan tâm khác