بالنسبة إلى Gradle، استخدِم المكوّن الإضافي Compose Compiler Gradle لإعداد Compose وضبطه.
الإعداد باستخدام كتالوجات إصدارات Gradle
إعداد المكوّن الإضافي Compose Compiler Gradle:
- في ملف
libs.versions.toml، أزِل أي إشارة إلى أداة تجميع Compose. في القسمَين
versionsوplugins، أضِف التبعية الجديدة:[versions] kotlin = "2.3.21" [plugins] org-jetbrains-kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } // Add this line compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }في ملف
build.gradle.ktsالجذري للمشروع، أضِف ما يلي إلى القسمplugins.plugins { // Existing plugins alias(libs.plugins.compose.compiler) apply false }في كل وحدة تستخدم Compose، طبِّق المكوّن الإضافي:
plugins { // Existing plugins alias(libs.plugins.compose.compiler) }
من المفترض أن يتم الآن إنشاء المشروع وتجميعه إذا كان يستخدم الإعداد التلقائي. إذا تم ضبط خيارات مخصّصة في برنامج التجميع Compose، يُرجى اتّباع الخطوات الواردة في القسم التالي.
إعداد Compose Compiler بدون كتالوجات إصدارات Gradle
أضِف المكوّن الإضافي إلى ملفات build.gradle.kts المرتبطة بالوحدات التي يتم فيها استخدام Compose:
plugins {
id("org.jetbrains.kotlin.plugin.compose") version "2.3.21" // this version matches your Kotlin version
}
أضِف مسار الفئة إلى ملف build.gradle.kts الخاص بمشروعك على المستوى الأعلى:
buildscript {
dependencies {
classpath("org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin:2.3.21")
}
}
خيارات الإعداد باستخدام المكوّن الإضافي Compose Compiler Gradle
لضبط إعدادات برنامج التجميع البرمجي Compose باستخدام المكوّن الإضافي Gradle، أضِف الحزمة composeCompiler إلى ملف build.gradle.kts الخاص بالوحدة على المستوى الأعلى:
android { … }
composeCompiler {
reportsDestination = layout.buildDirectory.dir("compose_compiler")
stabilityConfigurationFile = rootProject.layout.projectDirectory.file("stability_config.conf")
}
للاطّلاع على القائمة الكاملة بالخيارات المتاحة، يُرجى الرجوع إلى المستندات.
إعداد تبعيات Compose
استخدِم دائمًا أحدث إصدار من حزمة إدارة المواد في Compose: 2026.08.00.
اضبط العلامة compose على true داخل BuildFeatures في Android لتفعيل وظائف Compose في "استوديو Android".
أضِف التعريف التالي إلى ملف build.gradle في تطبيقك:
أنيق
android {
buildFeatures {
compose true
}
}
Kotlin
android {
buildFeatures {
compose = true
}
}
أضِف قائمة مواد Compose الأساسية ومجموعة فرعية من الاعتماديات الخاصة بمكتبة Compose:
أنيق
dependencies {
def composeBom = platform('androidx.compose:compose-bom:2026.08.00')
implementation composeBom
androidTestImplementation composeBom
// Choose one of the following:
// Material Design 3
implementation 'androidx.compose.material3:material3'
// or skip Material Design and build directly on top of foundational components
implementation 'androidx.compose.foundation:foundation'
// or only import the main APIs for the underlying toolkit systems,
// such as input and measurement/layout
implementation 'androidx.compose.ui:ui'
// Android Studio Preview support
implementation 'androidx.compose.ui:ui-tooling-preview'
debugImplementation 'androidx.compose.ui:ui-tooling'
// UI Tests
androidTestImplementation 'androidx.compose.ui:ui-test-junit4'
debugImplementation 'androidx.compose.ui:ui-test-manifest'
// Optional - Add window size utils
implementation 'androidx.compose.material3.adaptive:adaptive'
// Optional - Integration with activities
implementation 'androidx.activity:activity-compose:1.13.0'
// Optional - Integration with ViewModels
implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.10.0'
// Optional - Integration with LiveData
implementation 'androidx.compose.runtime:runtime-livedata'
// Optional - Integration with RxJava
implementation 'androidx.compose.runtime:runtime-rxjava2'
}
Kotlin
dependencies {
val composeBom = platform("androidx.compose:compose-bom:2026.08.00")
implementation(composeBom)
androidTestImplementation(composeBom)
// Choose one of the following:
// Material Design 3
implementation("androidx.compose.material3:material3")
// or skip Material Design and build directly on top of foundational components
implementation("androidx.compose.foundation:foundation")
// or only import the main APIs for the underlying toolkit systems,
// such as input and measurement/layout
implementation("androidx.compose.ui:ui")
// Android Studio Preview support
implementation("androidx.compose.ui:ui-tooling-preview")
debugImplementation("androidx.compose.ui:ui-tooling")
// UI Tests
androidTestImplementation("androidx.compose.ui:ui-test-junit4")
debugImplementation("androidx.compose.ui:ui-test-manifest")
// Optional - Add window size utils
implementation("androidx.compose.material3.adaptive:adaptive")
// Optional - Integration with activities
implementation("androidx.activity:activity-compose:1.13.0")
// Optional - Integration with ViewModels
implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.10.0")
// Optional - Integration with LiveData
implementation("androidx.compose.runtime:runtime-livedata")
// Optional - Integration with RxJava
implementation("androidx.compose.runtime:runtime-rxjava2")
}
توافق compileSdk و"المكوّن الإضافي لنظام Gradle المتوافق مع Android"
تتضمّن إصدارات مكتبة Compose باستمرار أحدث compileSdk إصدارات لتوفير إمكانية الوصول إلى أحدث ميزات Android. تتطلّب إصدارات compileSdk الأحدث إصدارات أحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Android، لذا يتطلّب استخدام إصدارات Compose الجديدة أيضًا أن تستخدم المشاريع إصدارات جديدة من المكوّن الإضافي لنظام Gradle المتوافق مع Android. ننصحك بإبقاء compileSdk لمشروعك محدّثًا بأحدث الإصدارات. compileSdk غير مرتبط بـ targetSdk.
على سبيل المثال، اعتبارًا من الإصدار 1.12.0 من Compose، يجب أن تستخدم المشاريع compileSdk 37 والإصدار 9 من "المكوّن الإضافي لنظام Gradle المتوافق مع Android" (AGP).
للاطّلاع على إصدار المكوّن الإضافي لنظام Gradle المتوافق مع Android الذي يتوافق مع مستويات مختلفة من واجهة برمجة التطبيقات، راجِع مستند توافق المكوّن الإضافي لنظام Gradle المتوافق مع Android مع مستوى واجهة برمجة التطبيقات.