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

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

Bu modernleşmeyi gerçekleştirmek için 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:


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

Neler değişiyor?

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

Bu değişiklik, Kotlin geliştiricilerin artık KTX modülleri yerine ana modülleri kullanabileceği anlamına gelir (Firebase BoM v32.5.0 ve sonraki sürümler veya BoM v32.5.0 ve sonraki sürümlerde listelenen ana modül sürümleri kullanılırken).

Bu değişiklik kapsamında, her KTX modülündeki Kotlin uzantıları (KTX) API'lerinin desteği sonlandırıldı. Eylül 2024'ten itibaren KTX modüllerini yayınlamayı bırakacağız ve KTX kitaplıklarını da Firebase Android BoM'ten kaldıracağız.

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

Firebase, Android geliştiriciler için Kotlin'i önceleyen bir ekosistem sunmaya kararlıdır. Bu paketleme modernleştirmesi aşağıdaki avantajları sağlar:

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

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

Bu değişiklikle ilgili önemli tarihler

Ekim 2023'te

Kotlin uzantıları (KTX) API'leri, ilgili ana modüllere eklendi. Bu sayede, Firebase BoM v32.5.0 veya sonraki sürümleri ya da BoM v32.5.0 veya sonraki sürümlerde listelenen ana modül sürümlerini kullanırken KTX API'lerini doğrudan ana modüllerden kullanabilirsiniz.

Buna paralel olarak, KTX modüllerindeki Kotlin uzantısı (KTX) API'lerinin desteği sonlandırıldı (bu değişikliği açıklayan sürüm notlarına bakın). Desteği sonlandırılan aşama sırasında, KTX modüllerindeki desteği sonlandırılan API'ler çalışmaya ve bakımı yapılmaya devam eder.

Eylül 2024'ten itibaren

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

KTX modülünün veya BoM'ün daha önce yayınlanan tüm sürümleri çalışmaya devam edecek ancak bakım desteği sonlandırılacak. Bu, KTX modüllerine hata düzeltmeleri, geriye dönük uyumlu değişiklikler ve yeni özellikler eklemeyi durduracağımız anlamına gelir. Bunun yerine, Android'de Firebase için gelecekteki tüm geliştirmeler ana modüllerde (hem Java hem de Kotlin için) yapılacaktır.

Ana modüllerden KTX API'lerini kullanmaya geçiş

Kotlin uzantıları (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. Gradle bağımlılıklarınızda, KTX modülü yerine ana modülü kullanacak şekilde düzeltme yapın. Örneğin, Firebase Android BoM (önerilen) sürümünü kullanıyorsanız:

    ÖNCE

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

    SONRA

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

    ÖNCE

    dependencies {
      // ...
    
      // Using KTX libraries for Authentication and Cloud Firestore
      implementation("com.google.firebase:firebase-auth-ktx:23.2.0")
      implementation("com.google.firebase:firebase-firestore-ktx:25.1.2")
    }

    SONRA

    dependencies {
      // ...
    
      // No need to use the KTX libraries, everything is now in the main module
      // Make sure to use a version listed in Firebase BoM v32.5.0 or higher
      implementation("com.google.firebase:firebase-auth:23.2.0")
      implementation("com.google.firebase:firebase-firestore:25.1.2")
    }


  2. Kodunuzu, KTX API'lerinin tüm örneklerini com.google.firebase paketi altındaki ana modülde bulunan yeni konuma taşınmış API'lerle değiştirecek şekilde 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

    SONRA

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