تعمل Firebase على زيادة التزامها بـ Kotlin، ونحن نعمل على تحديث نظام Android البيئي الخاص بنا لجعل الوصول إلى Kotlin أكثر سهولة وسهولة في الاستخدام مع Firebase.
لإنجاز هذا التحديث، فإننا نجري بعض التغييرات على حزم Firebase SDK الخاصة بنا لنظام التشغيل Android. توضح هذه الصفحة معلومات مهمة حول هذا التغيير، بما في ذلك:
- ما الذي يتغير؟
- السبب وراء قيامنا بهذا التغيير
- مواعيد مهمة لهذا التغيير
- كيفية الترحيل لاستخدام واجهات برمجة تطبيقات KTX من الوحدة الرئيسية
ما الذي يتغير؟
تمت إضافة واجهات برمجة تطبيقات ملحقات Kotlin (KTX) إلى الوحدات الرئيسية الخاصة بها. على سبيل المثال، تمت إضافة جميع واجهات برمجة التطبيقات من firebase-perf-ktx
إلى firebase-perf
ضمن الحزمة com.google.firebase.perf
.
يعني هذا التغيير أن مطوري Kotlin يمكنهم الآن الاعتماد على الوحدات الرئيسية بدلاً من وحدات KTX (عند استخدام Firebase BoM v32.4.0+ أو إصدارات الوحدة الرئيسية المدرجة في BoM v32.4.0+).
وكجزء من هذا التغيير، تم الآن إهمال واجهات برمجة تطبيقات ملحقات Kotlin (KTX) في كل وحدة KTX. اعتبارًا من أبريل 2024، لن نصدر وحدات KTX بعد الآن، وسنقوم أيضًا بإزالة مكتبات KTX من Firebase Android BoM في ذلك الوقت.
لماذا نقوم بهذا التغيير؟
تلتزم Firebase بنظام Kotlin الأول لمطوري Android. يوفر تحديث التغليف هذا المزايا التالية:
إدارة التبعية المبسطة: ما عليك الآن سوى الاعتماد على وحدة واحدة، مما يلغي الحاجة إلى التبديل بين الوحدة الرئيسية وامتدادات Kotlin أو الاعتماد على كليهما.
دعم Kotlin المحسّن: ستوفر الآن جميع حزم Firebase SDK لنظام التشغيل Android دعمًا أفضل لـ Kotlin. سنقوم بتضمين جميع الميزات الجديدة المتوافقة مع لغة Kotlin مباشرةً في وحداتنا الرئيسية.
مواعيد مهمة لهذا التغيير
تعرف على المعالم الرئيسية لهذا التغيير.
في أكتوبر 2023
تمت إضافة واجهات برمجة تطبيقات امتدادات Kotlin (KTX) إلى الوحدات الرئيسية الخاصة بها، وتم إهمال واجهات برمجة تطبيقات امتدادات Kotlin (KTX) في كل وحدة KTX. راجع ملاحظات الإصدار التي تعلن عن هذا التغيير.
يمكنك الآن استخدام واجهات برمجة التطبيقات KTX مباشرة من الوحدات الرئيسية عند استخدام Firebase BoM v32.4.0+ أو إصدارات الوحدة الرئيسية المدرجة في BoM v32.4.0+.
خلال هذه المرحلة المهملة ، ستستمر واجهات برمجة التطبيقات المهملة في وحدات KTX في العمل وستتم صيانتها.
في وقت مبكر من أبريل 2024
سنتوقف عن إطلاق إصدارات جديدة من وحدات KTX، وسنقوم بإزالة وحدات KTX من Firebase BoM.
ستستمر أي نسخة تم إصدارها مسبقًا من وحدة KTX أو BoM في العمل، ولكنها ستدخل في مرحلة نهاية الصيانة . وهذا يعني أننا سنتوقف عن إضافة إصلاحات الأخطاء والتغييرات المتوافقة مع الإصدارات السابقة والميزات الجديدة إلى وحدات KTX. وبدلاً من ذلك، سيتم تنفيذ كل التطوير المستقبلي لـ Firebase على Android في الوحدات الرئيسية (لكل من Java وKotlin).
كيفية الترحيل لاستخدام واجهات برمجة تطبيقات KTX من الوحدات الرئيسية
إذا كنت تستخدم حاليًا واجهات برمجة تطبيقات ملحقات Kotlin (KTX)، فقم بإجراء التحديثات التالية في تطبيقك لبدء استخدام واجهات برمجة التطبيقات من الوحدات الرئيسية بدلاً من وحدات KTX.
قم بمراجعة تبعيات Gradle الخاصة بك للاعتماد على الوحدة الرئيسية بدلاً من وحدة KTX. على سبيل المثال، إذا كنت تستخدم Firebase Android BoM (مستحسن) :
قبل
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") }
بعد
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") }
قبل
dependencies { // ... // Using KTX libraries for Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth-ktx:22.2.0") implementation("com.google.firebase:firebase-firestore-ktx:24.9.0") }
بعد
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.4.0 or higher implementation("com.google.firebase:firebase-auth:22.2.0") implementation("com.google.firebase:firebase-firestore:24.9.0") }
قم بتحديث الكود الخاص بك لاستبدال جميع تكرارات واجهات برمجة تطبيقات KTX بواجهات برمجة التطبيقات التي تم نقلها في الوحدة الرئيسية ضمن حزمة
com.google.firebase
.قبل
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
بعد
import com.google.firebase.auth.auth import com.google.firebase.firestore.firestore import com.google.firebase.firestore.toObject import com.google.firebase.Firebase