آخر الأخبار عن Gradle و"المكوّن الإضافي لنظام Gradle المتوافق مع Android"
ترقية إصدارات Gradle و"المكوّن الإضافي لنظام Gradle المتوافق مع Android"
عليك أولاً ترقية إصدارَي Gradle وAndroid Gradle Plugin. وتتضمّن هذه الترقية توافقًا أفضل مع بعض تبعيات SDK (بما في ذلك Kotlin 1.9)، بالإضافة إلى بعض إصلاحات الأخطاء المُهمّة.
يتطلب هذا الإصدار الرئيسي لحزمة SDK هذا تبعيات الإصدار التالية لمشروع تطبيق Android الخاص بك:
- أن يكون إصدار Gradle متوافقًا مع الإصدار 7.5.0 على الأقل ولكن يجب ألا يزيد عن الإصدار 7.6.0
- إصدار Android Gradle الإضافي (AGP) في نطاق v7.4.x.
يمكنك استهداف إصدار أعلى من المكوّنات الإضافية، ومع ذلك قد تواجه تحذيرات بشأن الإيقاف النهائي أو قد لا تعمل بعض الميزات الجديدة.
لتعديل إصدار Gradle، عدِّل السطر في ملف /gradle/wrapper/gradle-wrapper.properties
الخاص بمشروعك.
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
لتعديل إصدار المكوّن الإضافي لنظام Gradle المتوافق مع Android، عليك تعديل ملف build.gradle
الذي يحتوي على المجموعة buildscript
. مثال:
buildscript {
repositories {
google()
mavenCentral()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.4.1'
}
}
نقل بيانات مكتبة Java 7 إلى Java 8
الخطوة 1: تفعيل دعم مكتبة Java 8
بما أنّ مستوى واجهة برمجة التطبيقات الأدنى لحزمة تطوير البرامج (SDK) هو 23 وإصدار AGP المطلوب إصداره هو 7.4 أو أعلى، تختلف عملية الضبط قليلاً عن مستندات المصدر المذكورة.
buildscript {
repositories {
google()
mavenCentral()
jcenter()
maven {
url = uri("https://storage.googleapis.com/r8-releases/raw")
}
}
dependencies {
classpath 'com.android.tools:r8:8.0.46'
classpath 'com.android.tools.build:gradle:7.4.1'
}
}
android {
compileOptions {
// Flag to enable support for the new language APIs
coreLibraryDesugaringEnabled true
// Sets Java compatibility to Java 8
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs_nio:2.0.3'
}
الخطوة 2: الانتقال من Proguard أو Dexguard إلى R8
يستخدم الإصدار 7.4 من AGP الإصدار R8 كأداة تلقائية للتقليص والتشويش والتحسين في البرنامج الثنائي، ولذلك لا يلزم اتخاذ أي إجراء خاص في هذه المرحلة.
إذا تم ترحيل المشروع من الإصدار 4.0 من AGP أو إصدارات أحدث، قد يُصدر AGP التحذيرات التالية حول عمليات إزالة الملفات:
- استخدام
useProguard true
في ملفbuild.gradle
- استخدام
android.enableR8=false
في ملفgradle.properties
تؤدي إزالة هذه الأسطر عادةً إلى حل هذه المشاكل.
نقل بيانات Kotlin 1.6 إلى 1.9
الخطوة 1: نقل البيانات إلى الإصدار 1.9.0 من المكوّن الإضافي Kotlin Gradle الإضافي
حدِّث إصدار المكوّن الإضافي Kotlin Gradle الإضافي في ملفbuild.gradle في وحدة المستوى الأعلى في تطبيقك. تأكَّد من إضافة org.jetbrains.kotlin:kotlin-gradle-plugin
في التبعيات من كتلة Buildscript إذا كانت مفقودة.
buildscript {
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0"
}
}
يجب نقل طلبك من مواد Kotlin الاصطناعية إذا كنت قادمًا من Kotlin Gradle Plugin 1.6.X أو 1.7.X. يُرجى الرجوع إلى دليل نقل البيانات الرسمي للاطّلاع على مزيد من المعلومات.
الخطوة 2: ترقية kotlin-stdlib إلى الإصدار 1.9.0
عليك الترقية من الإصدار kotlin-stblib
إلى الإصدار 1.9.0 في ملف version.gradle لتطبيقك.
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.0"
}
احرص على إزالة أي إشارات إلى kotlin-stdlib-jdk7
أو kotlin-stdlib-jdk8
. تم دمج كلتا التبعيتين في
kotlin-stdlib
بدءًا من Kotlin
1.8.0.