الانتقال إلى الإصدار 2.0 من Kotlin
إذا كنت تستخدم الإصدار 3.0 أو إصدارًا أحدث من حزمة Consumer SDK لنظام التشغيل Android، عليك الترقية إلى الإصدار 2.0 من Kotlin. تقدّم هذه الصفحة إرشادات لتسهيل عملية الانتقال إلى إصدار Kotlin الجديد.
توافق Gradle و"مكوّن Android الإضافي لبرنامج Gradle"
يحتوي الإصدار 2.0 من Kotlin على متطلبات الحد الأدنى والأقصى من الإصدارات لإصدار Gradle و"المكوّن الإضافي لنظام Gradle المتوافق مع Android" (AGP). تأكَّد من أنّ مشروعك يستوفي المتطلبات التالية لاستخدام Kotlin 2.0.
الحد الأدنى لإصدار "المكوّن الإضافي لنظام Gradle المتوافق مع Android" لحزمة تطوير البرامج (SDK) الإصدار 3.0 أو الإصدارات الأحدث
يتطلّب الإصدار 3.0 من حزمة تطوير البرامج (SDK) للمستهلك استخدام الإصدار 7.3 أو إصدار أحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Android.
وضع R8 الكامل
لا يتوافق الإصدار 3 من حزمة تطوير البرامج (SDK) المخصّصة للمستهلكين والإصدارات الأقدم مع وضع R8 الكامل. يجب إيقاف وضع R8 الكامل بشكل صريح إذا كان تطبيقك يستهدف الإصدار 8.0 من المكوّن الإضافي لنظام Gradle المتوافق مع Android أو الإصدارات الأحدث.
# settings.gradle
android.enableR8.fullMode=false
التوافق مع إصدارات Kotlin
تتيح لغة Kotlin التوافق مع ثلاثة إصدارات سابقة من اللغة. هذا يعني أنّه إذا كنت تستخدم الإصدار 1.7 أو إصدارًا أحدث من Kotlin مع حزمة Consumer SDK، من المفترض أن تتمكّن من الترقية إلى الإصدار 2.0 من Kotlin بدون الحاجة إلى حلّ جميع التغييرات غير المتوافقة. ومع ذلك، لا ينطبق توافق Kotlin إلا على ميزات اللغة الثابتة. إذا كنت تستخدم ميزات في مرحلة الإصدار الأولي أو التجريبي أو ميزات تجريبية في لغة Kotlin، قد تحتاج إلى إجراء تغييرات إضافية عند الترقية.
علامات التوافق مع Kotlin
كما ذكرنا في القسم السابق، تتوافق لغة Kotlin مع ما يصل إلى 3 إصدارات سابقة من اللغة عند الترقية. توفّر لغة Kotlin علامتَين للمساعدة في الحدّ من التغييرات غير المتوافقة:
language-version X.Y
تعمل هذه العلامة على إعادة التغييرات غير المتوافقة إلى سلوك إصدار Kotlin السابق.
على سبيل المثال، إذا كنت تستخدم Kotlin 1.7، يمكنك تحديد [ -
language-version 1.7] ولن تسري التغييرات الجديدة غير المتوافقة بعد ذلك:
android {
kotlinOptions {
languageVersion = '1.7'
}
}
api-version X.Y
يمنع هذا الخيار استخدام واجهات برمجة تطبيقات جديدة قبل أن يصبح الرمز البرمجي التابع جاهزًا لدمج الإصدار 2.0 من Kotlin.
android {
kotlinOptions {
apiVersion = '1.7'
}
}
نهج أكثر استهدافًا
بالإضافة إلى استخدام علامات التوافق مع Kotlin، ننصحك بمراجعة ملاحظات إصدار Kotlin واختيار السلوكيات التي تريد الاحتفاظ بها من الإصدار الذي ستتم الترقية منه. توفّر Kotlin قائمة بالتغييرات غير المتوافقة والأعلام التي يمكن ضبطها للاحتفاظ بالسلوك الأصلي في أدلة التوافق الخاصة بكل إصدار: