Chuyển sang sử dụng API tiện ích mở rộng Kotlin (KTX) trong các mô-đun chính

Firebase đang tăng cường cam kết với Kotlin và chúng tôi đang nỗ lực hiện đại hóa hệ sinh thái Android của mình để giúp Kotlin dễ truy cập và dễ sử dụng hơn với Firebase.

Để thực hiện việc hiện đại hóa này, chúng tôi đang thực hiện một số thay đổi đối với SDK Firebase dành cho Android. Trang này mô tả thông tin quan trọng về thay đổi này, bao gồm:

Điều gì đang thay đổi?

API tiện ích mở rộng Kotlin (KTX) đã được thêm vào các mô-đun chính tương ứng. Ví dụ: tất cả cá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à các nhà phát triển Kotlin hiện 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 v32.4.0+ hoặc các phiên bản mô-đun chính được liệt kê trong BoM v32.4.0+).

Là một phần của thay đổi này, các API tiện ích mở rộng Kotlin (KTX) trong mọi mô-đun KTX hiện không còn được dùng nữa. Kể từ tháng 4 năm 2024, chúng tôi sẽ không phát hành mô-đun KTX nữa và cũng sẽ xóa thư viện KTX khỏi BoM Android của Firebase vào thời điểm đó.

Tại sao chúng tôi thực hiện sự thay đổi này?

Firebase cam kết tạo ra một hệ sinh thái ưu tiên Kotlin dành cho các nhà phát triển Android. Việc hiện đại hóa bao bì này mang lại những lợi ích sau:

  • Đơn giản hóa 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, loại bỏ nhu cầu chuyển đổi giữa mô-đun chính và tiện ích mở rộng Kotlin hoặc phụ thuộc vào cả hai.

  • Hỗ trợ Kotlin nâng cao: Tất cả SDK Firebase dành cho Android của chúng tôi giờ đây sẽ cung cấp hỗ trợ tốt hơn cho Kotlin. Chúng tôi sẽ đưa trực tiếp tất cả các tính năng mới thân thiện với Kotlin vào các mô-đun chính của mình.

Những ngày quan trọng cho sự thay đổi này

Tìm hiểu về các mốc quan trọng cho sự thay đổi này.

Vào tháng 10 năm 2023

Các API tiện ích mở rộng Kotlin (KTX) đã được thêm vào các mô-đun chính tương ứng và các API tiện ích mở rộng Kotlin (KTX) trong mỗi mô-đun KTX đã không còn được dùng nữa. Xem ghi chú phát hành thông báo về sự thay đổi này.

Giờ đây, bạn có thể sử dụng API KTX trực tiếp từ các mô-đun chính khi sử dụng Firebase BoM v32.4.0+ hoặc các phiên bản mô-đun chính được liệt kê trong BoM v32.4.0+.

Trong giai đoạn không được dùng nữa này, các API không được dùng nữa trong mô-đun KTX sẽ tiếp tục hoạt động và được duy trì.

Ngay từ tháng 4 năm 2024

Chúng tôi sẽ ngừng phát hành các phiên bản mới của mô-đun KTX và sẽ xóa các mô-đun KTX khỏi BoM Firebase.

Bất kỳ phiên bản nào được phát hành trước đó của mô-đun KTX hoặc BoM sẽ tiếp tục hoạt động nhưng chúng sẽ chuyển sang trạng thái kết thúc bảo trì . Điều này có nghĩa là chúng tôi sẽ ngừng thêm các bản sửa lỗi, thay đổi tương thích ngược và các tính năng mới cho 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ẽ đượ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 API KTX từ các mô-đun chính

Nếu bạn hiện đang sử dụng API tiện ích mở rộng Kotlin (KTX), hãy thực hiện các cập nhật sau trong ứng dụng của mình để bắt đầu sử dụng API từ các mô-đun chính thay vì mô-đun KTX.

  1. Sửa đổi các phần phụ thuộc Gradle của bạn để 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 (được khuyến nghị) :

    TRƯỚC

    dependencies {
      // ...
    
      // Import the Firebase BoM
      implementation(platform("com.google.firebase:firebase-bom:32.4.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.4.0 or higher
      implementation(platform("com.google.firebase:firebase-bom:32.4.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")
    }
    


  2. 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 dời 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