الإصدار 3.2.0 من المكوّن الإضافي لنظام Gradle المتوافق مع Android (سبتمبر 2018)
يتطلّب هذا الإصدار ما يلي:
الحد الأدنى للإصدار | الإصدار التلقائي | الملاحظات | |
---|---|---|---|
Gradle | 4.6 | 4.6 | لمزيد من المعلومات، اطّلِع على تحديث Gradle. |
أدوات تصميم حزمة تطوير البرامج (SDK) | 28.0.3 | 28.0.3 | ثبِّت أو اضبط أدوات تصميم حزمة تطوير البرامج (SDK). |
3.2.1 (أكتوبر 2018)
بعد هذا التحديث، لن تحتاج إلى تحديد إصدار لأدوات إنشاء حزمة تطوير البرامج (SDK). يستخدم المكوّن الإضافي لنظام Gradle المتوافق مع Android الآن الإصدار 28.0.3 تلقائيًا.
الميزات الجديدة
-
إتاحة إنشاء مجموعات حزمات تطبيق Android: حِزمة التطبيق هي تنسيق تحميل جديد يتضمّن جميع الرموز البرمجية والموارد المجمَّعة لتطبيقك، مع تأجيل إنشاء حِزم APK وتوقيعها إلى "متجر Google Play". ولن تحتاج بعد ذلك إلى إنشاء حِزم APK متعددة وتوقيعها وإدارتها، وسيتمكّن المستخدمون من تنزيل حِزم أصغر حجمًا ومحسَّنة لأجهزتهم. لمزيد من المعلومات، يمكنك الاطّلاع على مقالة لمحة عن "مجموعات حزمات تطبيق Android".
-
إتاحة سرعات إنشاء تراكمي محسّنة عند استخدام معالجات التعليقات التوضيحية: تتضمّن DSL
AnnotationProcessorOptions
الآنCommandLineArgumentProvider
، ما يتيح لك أو لمؤلف معالج التعليقات التوضيحية إضافة تعليقات توضيحية إلى الوسيطات لمعالج البيانات باستخدام التعليقات التوضيحية الخاصة بنوع السمة للإنشاء التراكمي. يؤدي استخدام هذه التعليقات التوضيحية إلى تحسين صحة وأداء عمليات الإنشاء النظيف المتزايدة والمخزّنة مؤقتًا. لمزيد من المعلومات، اطّلِع على تمرير وسيطات إلى معالجات التعليقات التوضيحية. -
أداة نقل البيانات إلى AndroidX: عند استخدام الإصدار 3.2.0 من المكوّن الإضافي Android Gradle مع الإصدار 3.2 من Android والإصدارات الأحدث، يمكنك نقل العناصر التابعة المحلية وتلك المتوفرة على Maven في مشروعك لاستخدام مكتبات AndroidX الجديدة من خلال اختيار Refactor > Migrate to AndroidX من شريط القوائم. يؤدي استخدام أداة نقل البيانات هذه أيضًا إلى ضبط العلامات التالية على
true
في ملفgradle.properties
:-
android.useAndroidX
: عند ضبطها علىtrue
، يستخدم المكوّن الإضافي المتوافق مع Android مكتبة AndroidX المناسبة بدلاً من Support Library. عندما لا يتم تحديد هذه العلامة، يضبطها المكوّن الإضافي علىfalse
تلقائيًا. -
android.enableJetifier
: عند ضبط هذا الخيار علىtrue
، ينقل المكوّن الإضافي المتوافق مع Android تلقائيًا المكتبات الحالية التابعة لجهات خارجية لاستخدام AndroidX من خلال إعادة كتابة ملفاتها الثنائية. في حال عدم تحديد هذه العلامة، يضبط المكوّن الإضافي القيمة تلقائيًا علىfalse
. يمكنك ضبط هذه العلامة علىtrue
فقط عندما تكون العلامةandroid.useAndroidX
مضبوطة أيضًا علىtrue
، وإلا سيظهر لك خطأ في الإنشاء.لمزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة على AndroidX.
-
-
أداة جديدة لتقليص حجم الرموز، وهي R8: R8 هي أداة جديدة لتخفيض حجم الرموز وإخفائها تحلّ محل ProGuard. يمكنك البدء في استخدام الإصدار التجريبي من R8 من خلال تضمين ما يلي في ملف
gradle.properties
الخاص بمشروعك:android.enableR8 = true
android.enableR8 = true
تغييرات السلوك
-
تم الآن تفعيل عملية إزالة التجميل اللغوي من واجهة برمجة التطبيقات باستخدام أداة D8 تلقائيًا.
-
أصبحت أداة AAPT2 متاحة الآن في مستودع Maven من Google. لاستخدام AAPT2، تأكَّد من توفّر اعتمادية
google()
في ملفbuild.gradle
، كما هو موضّح أدناه:buildscript { repositories { google() // here jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' } } allprojects { repositories { google() // and here jcenter() }
buildscript { repositories { google() // here jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' } } allprojects { repositories { google() // and here jcenter() }
-
تم الآن تفعيل ميزة multidex الأصلية تلقائيًا. كانت الإصدارات السابقة من "استوديو Android" تتيح استخدام ملفات DEX متعددة أصلية عند نشر إصدار تصحيح الأخطاء من تطبيق على جهاز يعمل بالإصدار 21 من واجهة برمجة التطبيقات Android أو إصدار أحدث. الآن، سواء كنت تنشر التطبيق على جهاز أو تنشئ حزمة APK لإصدار التطبيق، يتيح المكوّن الإضافي لنظام Gradle المتوافق مع Android ملفات DEX المتعددة الأصلية لجميع الوحدات التي تم ضبطها على
minSdkVersion=21
أو إصدار أحدث. -
يفرض المكوّن الإضافي الآن الحد الأدنى من إصدار المكوّن الإضافي لبروتوكول المخزن المؤقت (0.8.6) والمكوّن الإضافي للغة Kotlin (1.2.50) والمكوّن الإضافي لـ Crashlytics (1.25.4).
-
يفرض المكوّن الإضافي لوحدة الميزات،
com.android.feature
، الآن استخدام الأحرف والأرقام والشُرط السفلية فقط عند تحديد اسم وحدة. على سبيل المثال، إذا كان اسم وحدة الميزات يتضمّن شرطات، سيظهر لك خطأ في الإصدار. يتطابق هذا السلوك مع سلوك المكوّن الإضافي الخاص بالميزة الديناميكية.
إصلاح الأخطاء
- أصبح JavaCompile قابلاً للتخزين المؤقت في المشاريع التي تتضمّن ربط البيانات. (المشكلة رقم 69243050)
- تحسين تجنُّب إعادة التجميع لوحدات المكتبة التي تتضمّن ربط البيانات (المشكلة رقم 77539932)
- يمكنك الآن إعادة تفعيل configure-on-demand إذا كنت قد أوقفتها في الإصدارات السابقة بسبب بعض أخطاء الإنشاء غير المتوقّعة. (المشكلة رقم 77910727)