تزيد Firebase من التزامها بلغة Kotlin، ونحن نعمل على تطوير منظومتنا المتكاملة لنظام Android لتسهيل استخدام Kotlin مع Firebase.
لإجراء هذا التحديث، سنجري بعض التغييرات على حِزم تطوير البرامج (SDK) لنظام التشغيل Android في Firebase. توضّح هذه الصفحة معلومات مهمة حول هذا التغيير، بما في ذلك:
- التغييرات
- سبب إجراء هذا التغيير
- التواريخ المهمة لهذا التغيير
- كيفية نقل البيانات لاستخدام KTX API من الوحدة الرئيسية
ما هي التغييرات؟
تمت إضافة واجهات برمجة تطبيقات إضافات Kotlin (KTX) إلى الوحدات الرئيسية الخاصة بها. على سبيل المثال، تمت إضافة جميع واجهات برمجة التطبيقات من firebase-perf-ktx
إلى firebase-perf
ضمن حزمة com.google.firebase.perf
.
يعني هذا التغيير أنّه أصبح بإمكان مطوّري Kotlin الاعتماد على الوحدات الرئيسية بدلاً من وحدات KTX (عند استخدام الإصدار 32.5.0 أو الإصدارات الأحدث من Firebase BoM أو إصدارات الوحدة الرئيسية المُدرَجة في الإصدار 32.5.0 أو الإصدارات الأحدث من BoM).
في يوليو 2025، توقّفنا عن طرح إصدارات جديدة من وحدات KTX وأزلنا مكتبات KTX من الإصدار Firebase Android BoM (الإصدار 34.0.0).
لماذا يتم إجراء هذا التغيير؟
تلتزم Firebase بتوفير بيئة تتوافق بشكل كامل مع لغة Kotlin لمطوّري تطبيقات Android. توفّر عملية تحديث الحِزم المزايا التالية:
إدارة مبسطة للتبعيات: ما عليك سوى الاعتماد على وحدة واحدة، ما يغنيك عن التبديل بين الوحدة الرئيسية وإضافات Kotlin أو الاعتماد على كليهما.
تحسين توافق حِزم تطوير البرامج (SDK) مع لغة Kotlin: ستوفّر جميع حِزم تطوير البرامج (SDK) من Firebase لنظام التشغيل Android الآن توافقًا أفضل مع لغة Kotlin. سنضمّن جميع الميزات الجديدة المتوافقة مع Kotlin مباشرةً في وحداتنا الرئيسية.
تواريخ مهمة بشأن هذا التغيير
في تشرين الأول (أكتوبر) 2023
في أكتوبر 2023، تمت إضافة واجهات برمجة تطبيقات إضافات Kotlin (KTX) إلى الوحدات الرئيسية المعنية، ما يعني أنّه يمكنك الآن استخدام واجهات برمجة تطبيقات KTX مباشرةً من الوحدات الرئيسية عند استخدام الإصدار Firebase BoM 32.5.0 أو الإصدارات الأحدث أو إصدارات الوحدة الرئيسية المُدرَجة في الإصدار BoM 32.5.0 أو الإصدارات الأحدث.
في الوقت نفسه، تم إيقاف واجهات برمجة التطبيقات الخاصة بإضافة Kotlin (KTX) في وحدات KTX نهائيًا (راجِع ملاحظات الإصدار التي توضّح هذا التغيير). خلال مرحلة الإيقاف النهائي، ستستمر واجهات برمجة التطبيقات التي تم إيقافها نهائيًا في وحدات KTX في العمل وسيتم الحفاظ عليها.
في يوليو 2025
في يوليو 2025، توقّفنا عن طرح إصدارات جديدة من وحدات KTX، وأزلنا وحدات KTX من Firebase BoM (بدءًا من BoM الإصدار 34.0.0).
سيستمر عمل أي إصدار سابق من وحدة KTX أو BoM، ولكنها أصبحت الآن خارج نطاق الصيانة. وهذا يعني أنّنا لن نضيف إصلاحات للأخطاء أو تغييرات متوافقة مع الإصدارات السابقة أو ميزات جديدة إلى وحدات KTX. بدلاً من ذلك، سيتم إجراء جميع عمليات التطوير المستقبلية لمنصة Firebase على Android في الوحدات الرئيسية فقط (لكل من Java وKotlin).
كيفية نقل البيانات لاستخدام واجهات برمجة تطبيقات KTX من الوحدات الرئيسية
إذا كنت تستخدم واجهات برمجة تطبيقات إضافات Kotlin (KTX)، عليك إجراء التعديلات التالية في تطبيقك لبدء استخدام واجهات برمجة التطبيقات من الوحدات الرئيسية بدلاً من وحدات KTX.
راجِع تبعيات Gradle لتعتمد على الوحدة الرئيسية بدلاً من وحدة KTX. على سبيل المثال، إذا كنت تستخدم Firebase Android BoM (ننصحك بذلك):
BEFORE
dependencies { // ... // Import the Firebase BoM implementation(platform("com.google.firebase:firebase-bom:34.0.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.5.0 or higher implementation(platform("com.google.firebase:firebase-bom:34.0.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
BEFORE
dependencies { // ... // Using KTX libraries for Authentication and Cloud Firestore implementation("com.google.firebase:firebase-auth-ktx:23.2.1") implementation("com.google.firebase:firebase-firestore-ktx:25.1.4") }
بعد
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:24.0.0") implementation("com.google.firebase:firebase-firestore:26.0.0") }
عدِّل الرمز البرمجي لاستبدال جميع مواضع واجهات برمجة التطبيقات KTX بواجهات برمجة التطبيقات التي تم نقلها في الوحدة الرئيسية ضمن الحزمة
com.google.firebase
.BEFORE
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