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:
- Neler değişecek?
- Bu değişikliği neden yapıyoruz?
- Bu değişiklikle ilgili önemli tarihler
- Ana modülden KTX API'lerini kullanmaya geçiş
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.
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") }
Firebase Android BoM'ı kullanmıyorsanız
Ö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") }
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