Ana modüllerde Kotlin uzantıları (KTX) API'lerini kullanmaya geçiş yapın

Firebase, Kotlin'e olan bağlılığını artırıyor ve Kotlin'i Firebase ile daha erişilebilir ve kullanımı kolay hale getirmek için Android ekosistemimizi modernleştirmeye çalışıyoruz.

Bu modernizasyonu gerçekleştirmek amacıyla Android için Firebase SDK'larımızda birkaç değişiklik yapıyoruz. Bu sayfada, aşağıdakiler de dahil olmak üzere bu değişiklikle ilgili önemli bilgiler açıklanmaktadır:

Ne değişiyor?

Kotlin uzantıları (KTX) API'leri ilgili ana modüllere eklendi. Örneğin, firebase-perf-ktx tüm API'ler, com.google.firebase.perf paketi altındaki firebase-perf eklenmiştir.

Bu değişiklik, Kotlin geliştiricilerinin artık KTX modülleri yerine ana modüllere güvenebilecekleri anlamına geliyor ( Firebase BoM v32.4.0+ veya BoM v32.4.0+'da listelenen ana modül sürümlerini kullanırken).

Bu değişikliğin bir parçası olarak, her KTX modülündeki Kotlin uzantıları (KTX) API'leri artık kullanımdan kaldırılmıştır. Nisan 2024'ten itibaren artık KTX modüllerini yayınlamayacağız ve aynı zamanda KTX kitaplıklarını da Firebase Android BoM'den kaldıracağız.

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

Firebase, Android geliştiricileri için Kotlin'de ilk ekosistemi sağlamaya kararlıdır. Bu ambalaj modernizasyonu aşağıdaki avantajları sağlar:

  • Basitleştirilmiş bağımlılık yönetimi: Artık yalnızca tek bir modüle bağlı olmanız yeterli; böylece ana modül ile Kotlin uzantıları arasında geçiş yapma veya her ikisine de bağlı olma ihtiyacını ortadan kaldırıyorsunuz.

  • Geliştirilmiş Kotlin desteği: Android için tüm Firebase SDK'larımız artık Kotlin için daha iyi destek sağlayacak. Tüm yeni Kotlin dostu özellikleri doğrudan ana modüllerimize dahil edeceğiz.

Bu değişiklik için önemli tarihler

Bu değişikliğin kilometre taşları hakkında bilgi edinin.

Ekim 2023'te

Kotlin uzantıları (KTX) API'leri ilgili ana modüllere eklendi ve her KTX modülündeki Kotlin uzantısı (KTX) API'leri kullanımdan kaldırıldı. Bu değişikliği duyuran sürüm notlarına bakın.

Firebase BoM v32.4.0+ veya BoM v32.4.0+'da listelenen ana modül sürümlerini kullanırken artık KTX API'lerini doğrudan ana modüllerden kullanabilirsiniz.

Kullanımdan kaldırılan bu aşamada , KTX modüllerindeki kullanımdan kaldırılan API'ler çalışmaya ve korunmaya devam edecektir.

Nisan 2024 gibi erken bir tarihte

KTX modüllerinin yeni sürümlerini yayınlamayı bırakacağız ve KTX modüllerini Firebase BoM'den kaldıracağız.

KTX modülünün veya BoM'nin daha önce yayınlanmış herhangi bir sürümü çalışmaya devam edecek ancak bakımın sonuna girecekler. Bu, KTX modüllerine hata düzeltmeleri, geriye dönük uyumlu değişiklikler ve yeni özellikler eklemeyi bırakacağımız anlamına gelir. Bunun yerine, Android'de Firebase'in gelecekteki tüm geliştirmeleri ana modüllerde (hem Java hem de Kotlin için) yapılacaktır.

Ana modüllerden KTX API'lerini kullanmak için nasıl geçiş yapılır?

Halihazırda Kotlin extension (KTX) API’lerini kullanıyorsanız, KTX modülleri yerine ana modüllerdeki API’leri kullanmaya başlamak için uygulamanızda aşağıdaki güncellemeleri yapın.

  1. KTX modülü yerine ana modüle güvenmek için Gradle bağımlılıklarınızı gözden geçirin. Örneğin, Firebase Android BoM'yi kullanıyorsanız (önerilir) :

    ÖNCE

    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")
    }
    

    SONRASINDA

    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. KTX API'lerinin tüm oluşumlarını com.google.firebase paketi altındaki ana modüldeki yeri değiştirilen API'lerle değiştirmek için kodunuzu güncelleyin.

    ÖNCE

    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
    

    SONRASINDA

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