الإصدار 7.2.0 من "المكوّن الإضافي لنظام Gradle المتوافق مع Android" (أيار/مايو 2022)
يُعدّ الإصدار 7.2.0 من المكوّن الإضافي لنظام Gradle المتوافق مع Android إصدارًا رئيسيًا يتضمّن مجموعة متنوعة من الميزات والتحسينات الجديدة.
يتوافق هذا التعديل البسيط مع إصدار Android Studio Chipmunk Patch 2، ويتضمّن إصلاحات الأخطاء التالية:
- المشكلة رقم 232438924: يؤدي استخدام الإصدار 7.2 من AndroidGradlePlugin إلى تعطيل واجهة برمجة التطبيقات transform API عند استخدامه مع واجهة برمجة التطبيقات ASM API
- الخطأ رقم 231037948: AGP 7.2.0-rc01 :buildSrc:generatePrecompiledScriptPluginAccessors - shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException
يتوافق هذا التعديل البسيط مع إصدار Android Studio Chipmunk Patch 1، ويتضمّن إصلاحات الأخطاء التالية:
- المشكلة رقم 230361284: لا تحزم أداة bundletool الملفات الأساسية بشكل صحيح
للاطّلاع على إصلاحات الأخطاء الأخرى المضمّنة في هذا الإصدار، يُرجى الاطّلاع على ملاحظات إصدار Android Studio Chipmunk Patch 1.
التوافق
الحد الأدنى للإصدار | الإصدار التلقائي | ملاحظات | |
---|---|---|---|
Gradle | 7.3.3 | 7.3.3 | لمزيد من المعلومات، يُرجى الاطّلاع على مقالة تحديث Gradle. |
أدوات إنشاء حِزم SDK | 30.0.3 | 30.0.3 | ثبِّت أو اضبط أدوات إنشاء حِزم SDK. |
NDK | لا ينطبق | 21.4.7075529 | ثبِّت أو ضبط إصدارًا مختلفًا من حزمة NDK. |
JDK | 11 | 11 | لمزيد من المعلومات، يُرجى الاطّلاع على ضبط إصدار JDK. |
تحذير Jetifier والتحقّق منه في أداة تحليل الإصدار
يعرض "أداة تحليل الإنشاء" الآن تحذيرًا إذا كان ملف
gradle.properties
الخاص بمشروعك يتضمّن
android.enableJetifier=true
. تم تقديم هذا الإعداد في
إصدار سابق من Android Studio لتفعيل AndroidX للمكتبات التي لا تتوافق
مع AndroidX بشكلٍ أصلي. ومع ذلك، تم نقل منظومة المكتبة المتكاملة بشكل أساسي إلى
استخدام AndroidX بشكلٍ أصلي، ومن المحتمل أنّه لم يعُد مطلوبًا استخدام علامة Jetifier في
مشروعك. بالإضافة إلى ذلك، يمكن أن يؤدي الرمز إلى تباطؤ أداء عملية الإنشاء. إذا
ظهر لك هذا التحذير، يمكنك إجراء عملية تحقّق في "أداة تحليل الإصدارات" للتأكّد مما إذا كان
يمكن إزالة العلامة.
إتاحة أدوات اختبار
بدءًا من الإصدار التجريبي 1 من Android Studio Chipmunk، يتيح Android Studio استخدام كل من أدوات اختبار Android وJava. اطّلِع على دليل Gradle حول استخدام أدوات اختبار الإعداد{:.external} للحصول على مزيد من المعلومات عن ميزة أدوات اختبار الإعداد وكيفية استخدامها في مشروع Java.
لتفعيل أدوات الاختبار في وحدة مكتبة Android، أضِف ما يلي إلىملف build.gradle
على مستوى المكتبة:
android {
testFixtures {
enable true
// enable testFixtures's android resources (disabled by default)
// androidResources true
}
}
يؤدي نشر مكتبتك تلقائيًا إلى نشر حِزم AAR لبيانات الاختبار مع
المكتبة الرئيسية. سيحتوي ملف البيانات الوصفية لمكوّن Gradle على معلومات لكي يتمكّن Gradle من استخدام العنصر المناسب عند طلب المكوّن
testFixtures
.
لإيقاف نشر حِزم AAR لعناصر الاختبار الخاصة بمكتبة في إصدار متغير،
أضِف ما يلي إلى ملف build.gradle
على مستوى المكتبة:
afterEvaluate {
components.release.withVariantsFromConfiguration(
configurations.releaseTestFixturesVariantReleaseApiPublication) { skip() }
components.release.withVariantsFromConfiguration(
configurations.releaseTestFixturesVariantReleaseRuntimePublication) { skip() }
}
لاستخدام حِزم AAR لعناصر الاختبار في مكتبة Android منشورة، يمكنك استخدام
طريقة المساعدة في Gradle testFixtures()
.
dependencies {
testImplementation testFixtures('com.example.company:publishedLib:1.0')
}
سيحلِّل lint مصادر أدوات الاختبار الثابتة تلقائيًا. يمكنك ضبط lint لتجاهل مصادر أدوات الاختبار على النحو التالي:
android {
lint {
ignoreTestFixturesSources true
}
}
لا يمكن استخدام جذور المحتوى المكرّرة.
اعتبارًا من الإصدار AGP 7.2، لم يعُد بإمكانك مشاركة دليل المصدر نفسه في مجموعات مصادر متعددة. على سبيل المثال، لا يمكنك استخدام مصادر الاختبار نفسها لكلّ من اختبارات الوحدات واختبارات الأدوات. لمزيد من المعلومات، اطّلِع على تغيير إعدادات مجموعات المصادر التلقائية.