الإصدار 3.2.0 من المكوّن الإضافي لنظام Gradle المتوافق مع Android (أيلول/سبتمبر 2018)

يتطلّب هذا الإصدار من المكوّن الإضافي لنظام Android ما يلي:

الحد الأدنى للإصدار الإصدار التلقائي ملاحظات
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.

  • إتاحة سرعات محسّنة لعملية الإنشاء المتزايد عند استخدام معالجات التعليقات التوضيحية: تم الآن توسيع نطاق لغة AnnotationProcessorOptions DSL لتشمل CommandLineArgumentProvider، ما يتيح لك أو لمؤلف معالج التعليقات التوضيحية إضافة تعليقات توضيحية إلى مَعلمات المعالج باستخدام تعليقات توضيحية لأنواع العناصر في عملية الإنشاء المتزايد. يؤدي استخدام هذه التعليقات التوضيحية إلى تحسين صحة النُسخ النظيفة المتزايدة والمخزّنة مؤقتًا وتحسين أدائها. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة تمرير الوسيطات إلى معالجات التعليقات التوضيحية.

  • أداة نقل البيانات إلى AndroidX: عند استخدام الإصدار 3.2.0 من المكوّن الإضافي Android Gradle مع الإصدار 3.2 من Android والإصدارات الأحدث، يمكنك نقل ملفاتك المرجعية المحلية وMaven لمشروعك لاستخدام مكتبات AndroidX الجديدة من خلال اختيار إعادة صياغة > نقل البيانات إلى 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، تأكَّد من أنّ ملف build.gradle يحتوي على التبعية google()، كما هو موضّح أدناه:

              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 Studio تتيح استخدام حِزم multidex الأصلية عند نشر إصدار تصحيح الأخطاء من التطبيق على جهاز يعمل بالإصدار 21 من واجهة برمجة التطبيقات لنظام التشغيل Android أو إصدار أحدث. الآن، سواء كنت بصدد نشر التطبيق على جهاز أو إنشاء حزمة APK لإصدارها، يعمل المكوّن الإضافي لـ Android Gradle على تفعيل ميزة "الملفّات المتعددة للغة البرمجة الأصلية" لجميع الوحدات التي تم ضبط minSdkVersion=21 أو إصدار أحدث لها.

  • يفرض المكوّن الإضافي الآن الحد الأدنى لإصدار المكوّن الإضافي protobuf (0.8.6) والكوكاتل (1.2.50) ومكوّن Crashlytics الإضافي (1.25.4).

  • يفرض المكوّن الإضافي لوحدة الميزاتcom.android.feature الآن استخدام الأحرف والأرقام والشرطات السفلية فقط عند تحديد اسم الوحدة. على سبيل المثال، إذا كان اسم وحدة الميزات يتضمّن شرطات، سيظهر لك خطأ في الإنشاء. يتطابق هذا السلوك مع سلوك مكوّن ميزة الديناميكية الإضافي.

إصلاح الأخطاء