Firebase đang tăng cường cam kết đối với Kotlin và chúng tôi đang nỗ lực hiện đại hoá hệ sinh thái Android để giúp Kotlin dễ tiếp cận và dễ sử dụng hơn với Firebase.
Để thực hiện quá trình hiện đại hoá này, chúng tôi sẽ thực hiện một số thay đổi đối với Firebase SDK cho Android. Trang này mô tả thông tin quan trọng về thay đổi này, bao gồm:
- Những thay đổi sắp tới
- Lý do chúng tôi thực hiện thay đổi này
- Ngày quan trọng đối với thay đổi này
- Cách di chuyển để sử dụng API KTX từ mô-đun chính
Tìm hiểu cách di chuyển ứng dụng
Có gì thay đổi?
Các API tiện ích Kotlin (KTX) đã được thêm vào các mô-đun chính tương ứng. Ví dụ: tất cả API từ firebase-perf-ktx
đã được thêm vào firebase-perf
trong gói com.google.firebase.perf
.
Thay đổi này có nghĩa là giờ đây, nhà phát triển Kotlin có thể phụ thuộc vào các mô-đun chính thay vì các mô-đun KTX (khi sử dụng Firebase BoM phiên bản 32.5.0 trở lên hoặc các phiên bản mô-đun chính có trong BoM phiên bản 32.5.0 trở lên).
Vào tháng 7 năm 2025, chúng tôi ngừng phát hành các phiên bản mới của mô-đun KTX và xoá các thư viện KTX khỏi Firebase Android BoM (phiên bản 34.0.0).
Tại sao chúng tôi tiến hành thay đổi này?
Firebase cam kết mang đến một hệ sinh thái ưu tiên Kotlin cho các nhà phát triển Android. Việc hiện đại hoá bao bì này mang lại những lợi ích sau:
Đơn giản hoá việc quản lý phần phụ thuộc: Giờ đây, bạn chỉ cần phụ thuộc vào một mô-đun duy nhất, không cần chuyển đổi giữa mô-đun chính và các tiện ích Kotlin hoặc phụ thuộc vào cả hai.
Hỗ trợ Kotlin nâng cao: Tất cả SDK Firebase cho Android hiện sẽ hỗ trợ Kotlin tốt hơn. Chúng tôi sẽ đưa tất cả các tính năng mới thân thiện với Kotlin trực tiếp vào các mô-đun chính của mình.
Các ngày quan trọng liên quan đến thay đổi này
Tháng 10 năm 2023
Vào tháng 10 năm 2023, các API Kotlin Extensions (KTX) đã được thêm vào các mô-đun chính tương ứng. Điều này có nghĩa là giờ đây, bạn có thể sử dụng trực tiếp các API KTX từ các mô-đun chính khi sử dụng Firebase BoM phiên bản 32.5.0 trở lên hoặc các phiên bản mô-đun chính được liệt kê trong BoM phiên bản 32.5.0 trở lên.
Đồng thời, các API tiện ích Kotlin (KTX) trong các mô-đun KTX đã ngừng hoạt động (xem ghi chú phát hành mô tả thay đổi này). Trong giai đoạn không dùng nữa, các API không dùng nữa trong mô-đun KTX sẽ tiếp tục hoạt động và được duy trì.
Vào tháng 7 năm 2025
Vào tháng 7 năm 2025, chúng tôi ngừng phát hành các phiên bản mới của mô-đun KTX và xoá các mô-đun KTX khỏi Firebase BoM (bắt đầu từ BoM phiên bản 34.0.0).
Mọi phiên bản đã phát hành trước đó của một mô-đun KTX hoặc BoM sẽ tiếp tục hoạt động, nhưng hiện tại, các phiên bản này đã kết thúc giai đoạn bảo trì. Điều này có nghĩa là chúng tôi sẽ không thêm các bản sửa lỗi, thay đổi tương thích ngược hoặc tính năng mới vào các mô-đun KTX. Thay vào đó, mọi hoạt động phát triển trong tương lai cho Firebase trên Android sẽ chỉ được thực hiện trong các mô-đun chính (cho cả Java và Kotlin).
Cách di chuyển để sử dụng các API KTX từ các mô-đun chính
Nếu bạn sử dụng các API phần mở rộng Kotlin (KTX), hãy thực hiện các bước cập nhật sau trong ứng dụng để bắt đầu sử dụng các API từ các mô-đun chính thay vì các mô-đun KTX.
Sửa đổi các phần phụ thuộc Gradle để dựa vào mô-đun chính thay vì mô-đun KTX. Ví dụ: nếu bạn sử dụng Firebase Android BoM (nên dùng):
TRƯỚC
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:34.0.0")) // Using KTX libraries for Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth-ktx") implementation("com.google.firebase:firebase-firestore-ktx") }
SAU
dependencies { // ... // Import the Firebase BoM as usual // Make sure to use Firebase BoM v32.5.0 or higher implementation(platform("com.google.firebase:firebase-bom:34.0.0")) // No need to use the KTX libraries; everything is now in the main module implementation("com.google.firebase:firebase-auth") implementation("com.google.firebase:firebase-firestore") }
Cập nhật mã của bạn để thay thế tất cả các lần xuất hiện của API KTX bằng các API được di chuyển trong mô-đun chính trong gói
com.google.firebase
.TRƯỚC
import com.google.firebase.auth.ktx.auth import com.google.firebase.firestore.ktx.firestore import com.google.firebase.firestore.ktx.toObject import com.google.firebase.ktx.Firebase
SAU
import com.google.firebase.auth.auth import com.google.firebase.firestore.firestore import com.google.firebase.firestore.toObject import com.google.firebase.Firebase