Ana modüllerde Kotlin uzantı (KTX) API'lerini kullanmaya başlayın

Firebase, Kotlin'e olan bağlılığını artırıyor Android ekosistemimizi entegre ederek Kotlin'i daha erişilebilir ve kolay Firebase'e gidin.

Bu modernizasyonu gerçekleştirmek için, Android için Firebase SDK'ları. Bu sayfada, bununla ilgili önemli bilgiler açıklanmaktadır aşağıdakiler dahil:


. Uygulamanızı nasıl taşıyacağınızı öğrenin

Neler değişiyor?

Kotlin uzantıları (KTX) API'leri ilgili ana modüllerinde yer alır. Örneğin, firebase-perf-ktx ürünündeki tüm API'ler com.google.firebase.perf paketi kapsamında firebase-perf.

Bu değişiklik, Kotlin geliştiricilerinin artık ana modüllere güvenebileceği anlamına geliyor. (KTX modülleri yerine) Firebase BoM v32.5.0+ veya BoM v32.5.0+ sürümünde listelenen ana modül sürümleri).

Bu değişiklik kapsamında, her KTX modülündeki Kotlin uzantıları (KTX) API'leri şunlardır: desteği sonlandırılmıştır. Nisan 2024 itibarıyla KTX modüllerini sonlandırmayacağız ve Bu tarihten sonra KTX kitaplıklarını da Firebase Android BoM'dan kaldıracağız.

Bu değişikliği neden yapıyoruz?

Firebase kararlıdır: Kotlin öncelikli bir ekosistem sunar. Bu paketleme modernizasyonu, şu avantajlardan yararlanabilirsiniz:

  • Basitleştirilmiş bağımlılık yönetimi: Artık yalnızca tek bir bağımlılığa güvenmeniz gerekiyor. ana modül ile Kotlin arasında geçiş yapma ihtiyacını ortadan kaldırarak, ya da her ikisine de bağlı olabilir.

  • Geliştirilmiş Kotlin desteği: Android için tüm Firebase SDK'larımız artık Kotlin için daha iyi destek sağlıyor. Kotlin'e uygun tüm yeni özellikleri ana modüllerimizde bulabilirsiniz.

Bu değişiklikle ilgili önemli tarihler

Ekim 2023'te

Kotlin uzantıları (KTX) API'leri ilgili ana modüllerine eklenmiştir. Yani artık KTX API'lerini doğrudan ana modüllerden kullanabilirsiniz kullanırken Firebase BoM v32.5.0+ veya BoM v32.5.0 ve sonraki sürümlerde listelenen ana modül sürümleri.

Buna paralel olarak KTX modüllerindeki Kotlin uzantısı (KTX) API'leri de desteği sonlandırıldı (bkz. bunu açıklayan sürüm notları değiştirin). Etkinlik sırasında desteklenmeyen aşama, KTX modüllerinde desteği sonlandırılan API'ler çalışmaya ve elde edilir.

Nisan 2024 itibarıyla

KTX modüllerinin yeni sürümlerini artık yayınlayacağız ve Firebase BoM'dan KTX modüllerini içermelidir.

KTX modülünün veya BoM'un daha önce yayınlanan sürümleri işlevini yerine getirirler, ancak bakım sonu. Bu, hata düzeltmeleri, geriye dönük uyumlu değişiklikler ve yeni özellikleri KTX modüllerine ekleyeceğiz. Bunun yerine, Firebase için gelecekteki tüm geliştirmeler Android, ana modüllerde (Java ve Kotlin için) yapılacak.

Ana modüllerden KTX API'lerini kullanmak üzere taşıma

Kotlin uzantıları (KTX) API'lerini kullanıyorsanız uygulamanızda aşağıdaki güncellemeleri yapın ana modüllerden API'leri kullanmaya başlamanızı öneririz.

  1. Gradle bağımlılıklarınızı KTX modülü. Örneğin, Firebase Android BoM kullanıyorsanız (önerilen):

    ÖNCESİ

    dependencies {
      // ...
    
      // Import the Firebase BoM
      implementation(platform("com.google.firebase:firebase-bom:33.1.2"))
    
      // Using KTX libraries for Authentication and Cloud Firestore
      implementation("com.google.firebase:firebase-auth-ktx")
      implementation("com.google.firebase:firebase-firestore-ktx")
    }
    

    SONRASI

    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:33.1.2"))
    
      // 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. KTX API'lerinin tüm tekrarlarını API'ler ana modülde com.google.firebase paketinin altına taşındı.

    ÖNCESİ

    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
    

    SONRASI

    import com.google.firebase.auth.auth
    import com.google.firebase.firestore.firestore
    import com.google.firebase.firestore.toObject
    import com.google.firebase.Firebase