تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
الإصدار 1.3.0 من المكوّن الإضافي لنظام Gradle المتوافق مع Android (يوليو 2015)
التبعيات:
|
الحد الأدنى للإصدار |
الإصدار التلقائي |
الملاحظات |
Gradle |
2.2.1 |
2.2.1 |
لمزيد من المعلومات، اطّلِع على تحديث Gradle. |
أدوات تصميم حزمة تطوير البرامج (SDK) |
21.1.1 |
21.1.1 |
ثبِّت أو اضبط أدوات تصميم حزمة تطوير البرامج (SDK). |
ملاحظات عامة:
-
تمت إضافة إمكانية استخدام السمة com.android.build.threadPoolSize
للتحكّم في حجم مجموعة سلاسل المهام Android
من
الملف gradle.properties
أو سطر الأوامر. يضبط المثال التالي هذه السمة على 4.
-Pcom.android.build.threadPoolSize=4
- اضبط السلوك التلقائي للإنشاء على استبعاد ملفات
LICENSE
وLICENSE.txt
من حِزم APK. لتضمين هذه الملفات في حزمة APK، عليك إزالتها من السمة packagingOptions.excludes
في ملف build.gradle
.
مثلاً:
android {
packagingOptions.excludes = []
}
android {
packagingOptions.excludes.clear()
}
- تمت إضافة المهمة
sourceSets
لفحص مجموعة جميع مجموعات المصادر المتاحة.
- توفير إمكانية محسَّنة لاختبار الوحدات من أجل التعرّف على المجلدات المصدرية التي تتضمّن نُسخًا متعددة و
متغيرات الإصدار على سبيل المثال، لاختبار تطبيق يتضمّن نكهات متعدّدة
flavor1
وflavorA
باستخدام نوع الإصدار Debug
،
تكون مجموعات مصادر الاختبار كما يلي:
- اختبار
- testFlavor1
- testFlavorA
- testFlavor1FlavorA
- testFlavor1FlavorADebug
كانت اختبارات Android تتعرّف من قبل على مجلدات المصدر المتعددة النكهات.
- تحسين دعم اختبارات الوحدات من خلال:
- نفِّذ
javac
على المصادر الرئيسية ومصادر الاختبار، حتى إذا تم ضبط السمة useJack
على true
في ملف الإصدار.
- التعرّف بشكل صحيح على التبعيات لكل نوع إصدار
- تمت إضافة إمكانية تحديد وسيطات مشغّل اختبار قياس حالة التطبيق من سطر الأوامر.
مثلاً:
./gradlew connectedCheck
-Pandroid.testInstrumentationRunnerArguments.size=medium
-Pandroid.testInstrumentationRunnerArguments.class=TestA,TestB
تمت إضافة إمكانية استخدام مَعلمات إضافية اختيارية لأداة Android Asset Packaging Tool (AAPT) في ملف build.gradle
. مثلاً:
android {
aaptOptions {
additionalParameters "--custom_option", "value"
}
}
android {
aaptOptions {
additionalParameters += listOf("--custom_option", "value")
}
}
- تمت إضافة إمكانية استخدام
وحدة APK للاختبار كوحدة اختبار منفصلة، وذلك باستخدام السمتَين
targetProjectPath
وtargetVariant
لضبط مسار حزمة APK والصيغة المستهدَفة.
ملاحظة: لا تتوافق وحدة حزمة APK التجريبية مع نكهات المنتجات، ويمكنها استهداف صيغة واحدة فقط. بالإضافة إلى ذلك، لا تتوافق هذه الأداة مع Jacoco بعد.
- تمت إضافة عملية التحقّق من صحة اسم المورد قبل دمج الموارد.
- عند إنشاء حزمة AAR (أرشيف Android) لوحدات المكتبة، لا توفِّر عنصر نائب
@{applicationId}
تلقائيًا في إعدادات دمج ملف البيان.
بدلاً من ذلك، استخدِم عنصرًا نائبًا مختلفًا، مثل @{libApplicationId}
، وقدِّم قيمة له إذا كنت تريد تضمين أرقام تعريف التطبيقات في مكتبة الأرشيف.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-08-30 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-08-30 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["\u003cbr /\u003e\n\nAndroid plugin for Gradle, revision 1.3.0 (July 2015)\n\n**Dependencies:**\n\n| | Minimum version | Default version | Notes |\n|----------------:|:---------------:|:---------------:|:----------------------------------------------------------------------------------------------------------:|\n| Gradle | 2.2.1 | 2.2.1 | To learn more, see [updating Gradle](/build/releases/gradle-plugin?buildsystem=ndk-build#updating-gradle). |\n| SDK Build Tools | 21.1.1 | 21.1.1 | [Install](/studio/intro/update#sdk-manager) or [configure](/tools/releases/build-tools) SDK Build Tools. |\n\n**General Notes:**\n\n- Added support for the `com.android.build.threadPoolSize`\n property to control the `Android` task thread pool size from\n the `gradle.properties` file or the command line. The\n following example sets this property to 4.\n\n \n -Pcom.android.build.threadPoolSize=4\n \n \n- Set the default build behavior to exclude `LICENSE` and `LICENSE.txt` files from APKs. To include these files in an APK, remove these files from the `packagingOptions.excludes` property in the `build.gradle` file. For example: \n\n ```groovy\n android {\n packagingOptions.excludes = []\n }\n \n ``` \n\n ```kotlin\n android {\n packagingOptions.excludes.clear()\n }\n \n ```\n- Added the `sourceSets` task to inspect the set of all available source sets.\n- Enhanced unit test support to recognize multi-flavor and [build variant](/tools/building/configuring-gradle#workBuildVariants) source folders. For example, to test an app with multi-flavors `flavor1` and `flavorA` with the `Debug` build type, the test source sets are:\n - test\n - testFlavor1\n - testFlavorA\n - testFlavor1FlavorA\n - testFlavor1FlavorADebug\n\n Android tests already recognized multi-flavor source folders.\n- Improved unit test support to:\n - Run `javac` on main and test sources, even if the `useJack` property is set to `true` in your build file.\n - Correctly recognize dependencies for each build type.\n- Added support for specifying instrumentation test-runner arguments from the command line. For example: \n\n ```\n ./gradlew connectedCheck \n\n -Pandroid.testInstrumentationRunnerArguments.size=medium \n\n -Pandroid.testInstrumentationRunnerArguments.class=TestA,TestB\n \n ```\n- Added support for arbitrary additional Android Asset Packaging Tool (AAPT) parameters\n in the `build.gradle` file. For example:\n\n ```groovy\n android {\n aaptOptions {\n additionalParameters \"--custom_option\", \"value\"\n }\n }\n \n ``` \n\n ```kotlin\n android {\n aaptOptions {\n additionalParameters += listOf(\"--custom_option\", \"value\")\n }\n }\n \n ```\n- Added support for a [test APK module](/tools/studio/studio-features#test-module) as a separate test module, using the `targetProjectPath` and `targetVariant` properties to set the APK path and target variant.\n\n **Note:** A test APK module does not support product\n flavors and can only target a single variant. Also, Jacoco is not supported yet.\n- Added resource name validation before merging resources.\n- When building an AAR (Android ARchive) package for library modules, do not provide an automatic `@{applicationId}` placeholder in the [manifest merger](/tools/building/manifest-merge) settings. Instead, use a different placeholder, such as `@{libApplicationId}` and provide a value for it if you want to include application Ids in the archive library.\n\n\u003cbr /\u003e"]]