الإصدار 8.8.0 من "المكوّن الإضافي لنظام Gradle المتوافق مع Android" (يناير 2025)

الإصدار 8.8.0 من "المكوّن الإضافي لنظام Gradle المتوافق مع Android" هو إصدار رئيسي يتضمّن مجموعة متنوّعة من الميزات والتحسينات الجديدة.

التوافق

الحدّ الأقصى لمستوى واجهة برمجة التطبيقات الذي يتوافق معه الإصدار 8.8 من المكوّن الإضافي لنظام Gradle المتوافق مع Android هو المستوى 35 لواجهة برمجة التطبيقات. في ما يلي معلومات أخرى عن التوافق:

الإصدار الأدنى الإصدار التلقائي الملاحظات
Gradle 8.10.2 8.10.2 لمزيد من المعلومات، اطّلِع على تحديث Gradle.
أدوات تصميم حزمة تطوير البرامج (SDK) 35.0.0 35.0.0 تثبيت أو ضبط أدوات إنشاء حزمة تطوير البرامج (SDK).
NDK لا ينطبق 27.0.12077973 تثبيت أو ضبط إصدار مختلف من NDK
JDK 17 17 لمزيد من المعلومات، يُرجى الاطّلاع على ضبط إصدار JDK.

المشاكل التي تم إصلاحها

الإصدار 8.8.2 من المكوّن الإضافي لنظام Gradle المتوافق مع Android

المشاكل التي تم إصلاحها
المكوّن الإضافي لنظام Gradle المتوافق مع Android
Initialization script 'C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle' line: 162
Shrinker (R8)
لا يعمل Gson proguard بشكلٍ سليم بعد الترقية إلى الإصدار 8.8 من Android Gradle Plugin
java.lang.VerifyError: Verifier rejected class
تعطُّل Leanback عند تصغيره باستخدام R8 المضمّنة في الإصدار 8.10.0-alpha04 من المكوّن الإضافي لنظام Gradle المتوافق مع Android

الإصدار 8.8.1 من المكوّن الإضافي لنظام Gradle المتوافق مع Android

المشاكل التي تم إصلاحها
Dexer (D8)
إضافة OpenJDK 23 للاختبار
Shrinker (R8)
java.lang.AbstractMethodError: Receiver class [...]$$Lambda$[...] does not define or inherit an implementation of the resolved method [...] of interface [...]
خطأ NPE في Enqueuer مرتبط بسجلّ DexCallSite
يتسبّب الإصدار R8 8.7.18 في حدوث استثناء مؤشر فارغ في وقت التشغيل عند استدعاء job?.cancel
java.lang.NoClassDefFoundError: Failed resolution of: Lkotlin/LazyThreadSafetyMode
يبدو أنّ Monzo تستخدم وقتًا مفرطًا في عملية إزالة الأجزاء غير المستخدَمة من الرمز البرمجي.
تعذُّر إنشاء إصدار AGP 8.8 : R8: java.lang.NullPointerException: Cannot read field "b" because the return value of "com.android.tools.r8.internal.BS.a(com.android.tools.r8.internal.cR)" is null`

الإصدار 8.8.0 من المكوّن الإضافي لنظام Gradle المتوافق مع Android

المشاكل التي تم إصلاحها
المكوّن الإضافي لنظام Gradle المتوافق مع Android
ننصحك بإضافة تعليق توضيحي لنوع الإدخال JacocoTransform كـ @Classpath
يجب أن تعرض السمة com.android.build.api.variant.GeneratesApk السمة minSdk
لا يتعرّف المكوّن الإضافي com.android.settings على targetSdk
‫SourceDirectories.addGeneratedSourceDirectory لا يتوافق مع متغيرات متعددة
تنفيذ علامة لإيقاف التحقّق من الحدّ الأدنى لإصدار "مكوّن Android الإضافي"
يتضمّن AGP تفاعلات مربكة مع إعداد خيارات برنامج الترجمة البرمجية للغة Kotlin
يجب أن يعرض المكوّن الإضافي لنظام Gradle المتوافق مع Android أداة BuiltArtifactLoader لحزمة APK الخاصة بالمشروع المستهدف في مشاريع com.android.test
[AGP] تعذُّر عرض قيمة Lazy SdkComponents.ndkDirectory، ولكنّ واجهة برمجة التطبيقات android.ndkDirectory تعمل بشكل سليم
خيارات الإنشاء: إضافة خيار "إعدادات تشغيل الإنشاء" جديد وجعله الخيار التلقائي
لا يمكن حلّ BuildConfig في اختبارات الوحدات عند استخدام android.enableBuildConfigAsBytecode=true
حِزم APK التي تم إنشاؤها من الحِزم لا تأخذ في الاعتبار إمكانية استخدام Privacy Sandbox
لا يتعرّف المكوّن الإضافي com.android.settings على targetSdk
Dexer (D8)
لا تتوافق مكتبة desugar الإصدار 2.1.0 مع الإصدار 8.5.2 من "مكوّن Android الإضافي لبرنامج Gradle"
Lint
عدم توافق KtAnalysisSessionProvider مع عمليات التحقّق من أداة Lint التي تم طرحها في الإصدار ‎8.7.0-alpha04
"False positive" WrongConstant عند استخدام PackageManager.ResolveInfoFlags.of مع Kotlin
خطأ "يجب تحديد مضيف واحد على الأقل" عند ضبط مخطط http أو https لفلتر الأهداف
التعامل مع التعليقات التوضيحية الخاصة بنوع الاستخدام في المزيد من الحالات في أداة UnknownNullness lint
الإصدار 8.6.1 من "مكوّن Android الإضافي": تراجع - تعذُّر فحص WrongConstant lint عند استخدام [Int].toLong() داخل @LongDef في Kotlin
الإصدار 8.7.0 من المكوّن الإضافي لنظام Gradle المتوافق مع Android - Lint False Positive RestrictedApi على NavOptionsBuilder.popUpTo
ظهور WrongConstant lint مرتين
لا يرصد "استوديو Android" التحذير "MonochromeLauncherIcon: لم يتم تحديد الرمز الأحادي اللون"
يتحقّق AbstractAnnotationDetector من الدوال/الدوال الإنشائية المحمّلة بشكل خاطئ
لا ينشئ Lint ImportAliasTestMode أسماء مستعارة للاستيراد للدوال ذات المستوى الأعلى
ظهور WrongConstant lint مرتين
تحذيرات ObsoleteSdkInt الجديدة في أداة Lint مع الإصدار 8.8 من "المكوّن الإضافي لنظام Gradle المتوافق مع Android"
لا يتم منح عملية التحقّق من lint الإيجابية الخاطئة android.permission.SCHEDULE_EXACT_ALARM إلا لتطبيقات النظام
يعرض "وضع K2" تحذير RestrictedApi عند استخدام ‎ .hasRoute(Route::class) في "استوديو Android"
دمج Lint
لم يتم العثور على مهمة Lint المتغيرة بعد التقييم
تعذُّر إجراء Linting عند استيراد ملف AAR يتضمّن ملفات تنفيذ